Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Add a driver for ICP-Vortex GDT and Intel Storage RAID contr...



details:   https://anonhg.NetBSD.org/src/rev/ccc84c6c89c6
branches:  trunk
changeset: 525977:ccc84c6c89c6
user:      ad <ad%NetBSD.org@localhost>
date:      Mon Apr 22 21:05:19 2002 +0000

description:
Add a driver for ICP-Vortex GDT and Intel Storage RAID controllers. Parts
taken from OpenBSD. Test hardware kindly provided by Intel. This still needs
management bits, and doesn't support older controllers, but that shouldn't
be hard to fix.

diffstat:

 distrib/sets/lists/man/mi        |    4 +-
 share/man/man4/Makefile          |    5 +-
 share/man/man4/icp.4             |   64 +++
 share/man/man4/ld.4              |    4 +-
 share/man/man4/pci.4             |    5 +-
 share/man/man4/scsi.4            |    3 +-
 sys/arch/i386/conf/GENERIC       |    9 +-
 sys/arch/i386/conf/INSTALL       |    7 +-
 sys/arch/i386/conf/INSTALL_SMALL |    7 +-
 sys/arch/i386/conf/INSTALL_TINY  |    7 +-
 sys/conf/files                   |   14 +-
 sys/dev/DEVNAMES                 |    4 +-
 sys/dev/ic/icp.c                 |  776 ++++++++++++++++++++++++++++++++++++
 sys/dev/ic/icpreg.h              |  371 +++++++++++++++++
 sys/dev/ic/icpsp.c               |  318 ++++++++++++++
 sys/dev/ic/icpvar.h              |  180 ++++++++
 sys/dev/ic/ld_icp.c              |  306 ++++++++++++++
 sys/dev/pci/files.pci            |    6 +-
 sys/dev/pci/icp_pci.c            |  832 +++++++++++++++++++++++++++++++++++++++
 19 files changed, 2908 insertions(+), 14 deletions(-)

diffs (truncated from 3185 to 300 lines):

diff -r f7ad122e1633 -r ccc84c6c89c6 distrib/sets/lists/man/mi
--- a/distrib/sets/lists/man/mi Mon Apr 22 20:47:20 2002 +0000
+++ b/distrib/sets/lists/man/mi Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.467 2002/04/19 09:47:10 wiz Exp $
+# $NetBSD: mi,v 1.468 2002/04/22 21:05:20 ad Exp $
 ./usr/share/info/am-utils.info                 man-amd-info
 ./usr/share/info/as.info                       man-computil-info
 ./usr/share/info/awk.info                      man-util-info
@@ -680,6 +680,7 @@
 ./usr/share/man/cat4/i386/pnpbios.0            man-sys-catman
 ./usr/share/man/cat4/icmp.0                    man-sys-catman
 ./usr/share/man/cat4/icmp6.0                   man-sys-catman
+./usr/share/man/cat4/icp.0                     man-sys-catman
 ./usr/share/man/cat4/icsphy.0                  man-sys-catman
 ./usr/share/man/cat4/idp.0                     man-sys-catman
 ./usr/share/man/cat4/ifmedia.0                 man-sys-catman
@@ -2370,6 +2371,7 @@
 ./usr/share/man/man4/i386/pnpbios.4            man-sys-man
 ./usr/share/man/man4/icmp.4                    man-sys-man
 ./usr/share/man/man4/icmp6.4                   man-sys-man
+./usr/share/man/man4/icp.4                     man-sys-man
 ./usr/share/man/man4/icsphy.4                  man-sys-man
 ./usr/share/man/man4/idp.4                     man-sys-man
 ./usr/share/man/man4/ifmedia.4                 man-sys-man
diff -r f7ad122e1633 -r ccc84c6c89c6 share/man/man4/Makefile
--- a/share/man/man4/Makefile   Mon Apr 22 20:47:20 2002 +0000
+++ b/share/man/man4/Makefile   Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: Makefile,v 1.254 2002/04/02 20:45:40 augustss Exp $
+#      $NetBSD: Makefile,v 1.255 2002/04/22 21:05:19 ad Exp $
 #      @(#)Makefile    8.1 (Berkeley) 6/18/93
 
 MAN=   acphy.4 adv.4 adw.4 agp.4 ahb.4 ahc.4 amhphy.4 an.4 aria.4 \
@@ -10,7 +10,7 @@
        ebus.4 edc.4 elmc.4 emuxki.4 en.4 envsys.4 ep.4 esh.4 esis.4 esa.4 \
        esl.4 esm.4 eso.4 exphy.4 \
        fd.4 fpa.4 fms.4 fxp.4 gentbi.4 glxtphy.4 gre.4 gphyter.4 gsip.4 hme.4 \
-       icmp.4 icsphy.4 idp.4 ifmedia.4 iha.4 inet.4 inphy.4 intersil7170.4 \
+       icmp.4 icp.4 icsphy.4 idp.4 ifmedia.4 iha.4 inet.4 inphy.4 intersil7170.4 \
        ioasic.4 ioat.4 \
        iop.4 iophy.4 iopsp.4 ip.4 ipkdb.4 iso.4 isp.4 joy.4 \
        lc.4 ld.4 lkm.4 \
@@ -105,6 +105,7 @@
 MLINKS+=tty.4 dty.4
 MLINKS+=rcons.4 rasterconsole.4
 MLINKS+=irframe.4 irda.4
+MLINKS+=icp.4 icpsp.4
 
 # This is a hack
 MLINKS+=edc.4 i386/ed.4
diff -r f7ad122e1633 -r ccc84c6c89c6 share/man/man4/icp.4
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/share/man/man4/icp.4      Mon Apr 22 21:05:19 2002 +0000
@@ -0,0 +1,64 @@
+.\" $NetBSD: icp.4,v 1.1 2002/04/22 21:05:19 ad Exp $
+.\"
+.\" from OpenBSD: gdt.4,v 1.14 2001/10/05 14:45:53 mpech Exp
+.\"
+.\" Copyright (c) 2000 Niklas Hallqvist.  All rights reserved.
+.\" Copyright (c) 2002 Andrew Doran.  All rights reserved.
+.\"
+.Dd April 20, 2002
+.Dt ICP 4
+.Os
+.Sh NAME
+.Nm icp
+.Nd ICP-Vortex and Intel Storage RAID driver
+.Sh SYNOPSIS
+.Cd "icp* at pci? dev ? function ?"
+.Cd "ld* at icp? unit ?"
+.Cd "icpsp* at icp? unit ?"
+.Cd "scsibus* at icpsp?"
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the newer (post 1997) ICP-Vortex GDT and Intel
+Storage RAID controllers.
+.Pp
+The
+.Nm ld
+driver provides access to logical devices (disk arrays) presented by the
+controller.
+The
+.Nm icpsp
+driver provides direct access to other SCSI devices attched to the
+controller, such as tape or CD-ROM drives.
+.Sh DIAGNOSTICS
+.Bl -tag
+.It "pci_mem_find: expected mem type 00000000, found 00000002"
+This message may be displayed during autoconfiguration if the controller's
+memory is mapped below 1MB in physical address space.
+This can be disabled either through changing a setting in the controller's
+BIOS utility, or changing the position of a jumper on the board.
+See your controller's documentation for more information.
+.El
+.Sh SEE ALSO
+.Xr intro 4 ,
+.Xr ld 4 ,
+.Xr scsi 4
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Andrew Doran
+.Aq ad%netbsd.org@localhost .
+It is derived in part from the
+.Ox
+.Nm gdt
+driver, written by Niklas Hallqvist.
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Nx 1.6 .
+.Sh BUGS
+ISA & EISA front-ends and a management interface are needed.
+.Pp
+Older PCI boards are not yet supported.
diff -r f7ad122e1633 -r ccc84c6c89c6 share/man/man4/ld.4
--- a/share/man/man4/ld.4       Mon Apr 22 20:47:20 2002 +0000
+++ b/share/man/man4/ld.4       Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: ld.4,v 1.6 2001/11/28 17:41:46 ad Exp $
+.\"    $NetBSD: ld.4,v 1.7 2002/04/22 21:05:20 ad Exp $
 .\"
 .\" Copyright (c) 2000 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -42,6 +42,7 @@
 .Nd logical disk driver
 .Sh SYNOPSIS
 .Cd ld* at cac? unit ?
+.Cd ld* at icp? unit ?
 .Cd ld* at iop? tid ?
 .Cd ld* at mlx? unit ?
 .Cd ld* at twe? unit ?
@@ -66,6 +67,7 @@
 .El
 .Sh SEE ALSO
 .Xr cac 4 ,
+.Xr icp 4 ,
 .Xr intro 4 ,
 .Xr iop 4 ,
 .Xr mlx 4 ,
diff -r f7ad122e1633 -r ccc84c6c89c6 share/man/man4/pci.4
--- a/share/man/man4/pci.4      Mon Apr 22 20:47:20 2002 +0000
+++ b/share/man/man4/pci.4      Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: pci.4,v 1.65 2002/01/06 17:01:25 wiz Exp $
+.\"    $NetBSD: pci.4,v 1.66 2002/04/22 21:05:19 ad Exp $
 .\"
 .\" Copyright (c) 1997 Jason R. Thorpe.  All rights reserved.
 .\" Copyright (c) 1997 Jonathan Stone
@@ -122,6 +122,8 @@
 .Bl -tag -width pcdisplay -offset indent
 .It cac
 Compaq array controllers.
+.It icp
+ICP Vortex GDT and Intel Storage RAID controllers.
 .It mlx
 Mylex DAC960 and DEC SWXCR RAID controllers.
 .It pciide
@@ -354,6 +356,7 @@
 .Xr fxp 4 ,
 .Xr gsip 4 ,
 .Xr hme 4 ,
+.Xr icp 4 ,
 .Xr iha 4 ,
 .Xr intro 4 ,
 .Xr iop 4 ,
diff -r f7ad122e1633 -r ccc84c6c89c6 share/man/man4/scsi.4
--- a/share/man/man4/scsi.4     Mon Apr 22 20:47:20 2002 +0000
+++ b/share/man/man4/scsi.4     Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: scsi.4,v 1.19 2001/11/07 16:45:50 tsutsui Exp $
+.\"    $NetBSD: scsi.4,v 1.20 2002/04/22 21:05:20 ad Exp $
 .\" Copyright (c) 1996
 .\"    Julian Elischer <julian%freebsd.org@localhost>.  All rights reserved.
 .\"
@@ -43,6 +43,7 @@
 .Cd "scsibus* at cosc?"
 .Cd "scsibus* at dpt?"
 .Cd "scsibus* at esp?"
+.Cd "scsibus* at icpsp?"
 .Cd "scsibus* at iha?"
 .Cd "scsibus* at iopsp?"
 .Cd "scsibus* at isp?"
diff -r f7ad122e1633 -r ccc84c6c89c6 sys/arch/i386/conf/GENERIC
--- a/sys/arch/i386/conf/GENERIC        Mon Apr 22 20:47:20 2002 +0000
+++ b/sys/arch/i386/conf/GENERIC        Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: GENERIC,v 1.486 2002/04/18 12:54:13 wiz Exp $
+# $NetBSD: GENERIC,v 1.487 2002/04/22 21:05:22 ad Exp $
 #
 # GENERIC machine description file
 # 
@@ -20,7 +20,7 @@
 
 include        "arch/i386/conf/std.i386"
 
-#ident                 "GENERIC-$Revision: 1.486 $"
+#ident                 "GENERIC-$Revision: 1.487 $"
 
 maxusers       32              # estimated number of users
 
@@ -513,14 +513,19 @@
 # RAID controllers and devices
 cac*   at eisa? slot ?                 # Compaq EISA array controllers
 cac*   at pci? dev ? function ?        # Compaq PCI array controllers
+icp*   at pci? dev ? function ?        # ICP-Vortex GDT & Intel RAID
 mlx*   at pci? dev ? function ?        # Mylex DAC960 & DEC SWXCR family
 mlx*   at eisa? slot ?                 # Mylex DAC960 & DEC SWXCR family
 twe*   at pci? dev ? function ?        # 3ware Escalade RAID controllers
 
 ld*    at cac? unit ?                  # logical disk devices
+ld*    at icp? unit ?
 ld*    at twe? unit ?
 ld*    at mlx? unit ?
 
+icpsp* at icp? unit ?                  # SCSI pass-through
+scsibus* at icpsp?
+
 # IDE and related devices
 # PCI IDE controllers - see pciide(4) for supported hardware.
 # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
diff -r f7ad122e1633 -r ccc84c6c89c6 sys/arch/i386/conf/INSTALL
--- a/sys/arch/i386/conf/INSTALL        Mon Apr 22 20:47:20 2002 +0000
+++ b/sys/arch/i386/conf/INSTALL        Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: INSTALL,v 1.193 2002/04/18 12:54:14 wiz Exp $
+#      $NetBSD: INSTALL,v 1.194 2002/04/22 21:05:23 ad Exp $
 #
 #      INSTALL - Installation kernel.
 #
@@ -370,14 +370,19 @@
 # RAID controllers and devices
 cac*   at eisa? slot ?                 # Compaq EISA array controllers
 cac*   at pci? dev ? function ?        # Compaq PCI array controllers
+icp*   at pci? dev ? function ?        # ICP-Vortex GDT & Intel RAID
 mlx*   at pci? dev ? function ?        # Mylex DAC960 & DEC SWXCR family
 mlx*   at eisa? slot ?                 # Mylex DAC960 & DEC SWXCR family
 twe*   at pci? dev ? function ?        # 3ware Escalade RAID controllers
 
 ld*    at cac? unit ?                  # logical disk devices
+ld*    at icp? unit ?
 ld*    at twe? unit ?
 ld*    at mlx? unit ?
 
+icpsp* at icp? unit ?                  # SCSI pass-through
+scsibus* at icpsp?
+
 # IDE and related devices
 # PCI IDE controllers - see pciide(4) for supported hardware.
 # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
diff -r f7ad122e1633 -r ccc84c6c89c6 sys/arch/i386/conf/INSTALL_SMALL
--- a/sys/arch/i386/conf/INSTALL_SMALL  Mon Apr 22 20:47:20 2002 +0000
+++ b/sys/arch/i386/conf/INSTALL_SMALL  Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: INSTALL_SMALL,v 1.82 2002/04/18 12:54:14 wiz Exp $
+#      $NetBSD: INSTALL_SMALL,v 1.83 2002/04/22 21:05:23 ad Exp $
 #
 #      INSTALL_SMALL - Small Installation kernel.
 #
@@ -326,14 +326,19 @@
 # RAID controllers and devices
 #cac*  at eisa? slot ?                 # Compaq EISA array controllers
 #cac*  at pci? dev ? function ?        # Compaq PCI array controllers
+#icp*  at pci? dev ? function ?        # ICP-Vortex GDT & Intel RAID
 #mlx*  at pci? dev ? function ?        # Mylex DAC960 & DEC SWXCR family
 #mlx*  at eisa? slot ?                 # Mylex DAC960 & DEC SWXCR family
 #twe*  at pci? dev ? function ?        # 3ware Escalade RAID controllers
 
 #ld*   at cac? unit ?                  # logical disk devices
+#ld*   at icp? unit ?
 #ld*   at twe? unit ?
 #ld*   at mlx? unit ?
 
+#icpsp*        at icp? unit ?                  # SCSI pass-through
+#scsibus* at icpsp?
+
 # IDE and related devices
 
 # ST506, ESDI, and ISA IDE controllers
diff -r f7ad122e1633 -r ccc84c6c89c6 sys/arch/i386/conf/INSTALL_TINY
--- a/sys/arch/i386/conf/INSTALL_TINY   Mon Apr 22 20:47:20 2002 +0000
+++ b/sys/arch/i386/conf/INSTALL_TINY   Mon Apr 22 21:05:19 2002 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: INSTALL_TINY,v 1.50 2002/04/18 12:54:14 wiz Exp $
+#      $NetBSD: INSTALL_TINY,v 1.51 2002/04/22 21:05:23 ad Exp $
 #
 #      INSTALL_TINY - Tiny Installation kernel, suitable for 4M machines.
 #
@@ -327,14 +327,19 @@
 # RAID controllers and devices
 #cac*  at eisa? slot ?                 # Compaq EISA array controllers
 #cac*  at pci? dev ? function ?        # Compaq PCI array controllers
+#icp*  at pci? dev ? function ?        # ICP-Vortex GDT & Intel RAID
 #mlx*  at pci? dev ? function ?        # Mylex DAC960 & DEC SWXCR family
 #mlx*  at eisa? slot ?                 # Mylex DAC960 & DEC SWXCR family
 #twe*  at pci? dev ? function ?        # 3ware Escalade RAID controllers



Home | Main Index | Thread Index | Old Index