# $NetBSD: GENERIC_SCSI3,v 1.28.2.1 1996/07/02 23:55:24 jtc Exp $ # Machine architecture; required by config(8) machine sparc include "../../../conf/GENERIC" # Options for variants of the Sun SPARC architecure. # At least one is required. option SUN4 # sun4/100, sun4/200, sun4/300 option SUN4C # sun4c - SS1, 1+, 2, ELC, SLC, IPC, IPX, etc. option SUN4M # sun4m - SS10, SS20, Classic, etc. #option MMU_3L # 3-level MMU on sun4/400 #option KGDB # support for kernel gdb #option KGDBDEV=0xc01 # kgdb device number (dev_t) #option KGDBRATE=38400 # baud rate # Options for SPARCstation hardware option RASTERCONSOLE # fast rasterop console option COMPAT_SUNOS # compatibility with SunOS binaries option COMPAT_SVR4 # compatibility with SVR4 binaries # Generic swap; second partition of root disk or network. config bsd swap generic # Main bus and CPU .. all systems. mainbus0 at root cpu0 at mainbus0 # Bus types found on SPARC systems. sbus0 at mainbus0 # sun4c obio0 at mainbus0 # sun4 and sun4m vmes0 at mainbus0 # sun4 vmel0 at mainbus0 # sun4 iommu0 at mainbus0 # sun4m sbus0 at iommu0 # sun4m audio0 at mainbus0 # sun4c audio0 at obio0 # sun4m auxreg0 at mainbus0 # sun4c auxreg0 at obio0 # sun4m # Power status and control register found on Sun4m systems power0 at obio0 # Mostek clock found on 4/300, sun4c, and sun4m systems. # The Mostek clock NVRAM is the "eeprom" on sun4/300 systems. clock0 at mainbus0 # sun4c clock0 at obio0 # sun4m clock0 at obio0 addr 0xf2000000 # sun4/300 # Intersil clock found on 4/100 and 4/200 systems. oclock0 at obio0 addr 0xf3000000 # sun4/200 oclock0 at obio0 addr 0x03000000 # sun4/100 # Memory error registers. memreg0 at mainbus0 # sun4c memreg0 at obio0 # sun4m memreg0 at obio0 addr 0xf4000000 # sun4/200 and sun4/300 memreg0 at obio0 addr 0x04000000 # sun4/100 # Timer chip found on 4/300, sun4c, and sun4m systems. timer0 at mainbus0 # sun4c timer0 at obio0 # sun4m timer0 at obio0 addr 0xef000000 # sun4/300 # EEPROM found on 4/100 and 4/200 systems. Note that the 4/300 # doesn't use this driver; the `EEPROM' is in the NVRAM on the # Mostek clock chip on 4/300 systems. eeprom0 at obio0 addr 0xf2000000 # sun4/200 eeprom0 at obio0 addr 0x02000000 # sun4/100 # Zilog 8530 serial chips. Each has two-channels. # zs0 is ttya and ttyb. zs1 is the keyboard and mouse. zs0 at mainbus0 # sun4c zs0 at obio0 # sun4m zs0 at obio0 addr 0xf1000000 level 12 flags 0x103 # sun4/200 and sun4/300 zs0 at obio0 addr 0x01000000 level 12 flags 0x103 # sun4/100 zs1 at mainbus0 # sun4c zs1 at obio0 # sun4m zs1 at obio0 addr 0xf0000000 level 12 flags 0x103 # sun4/200 and sun4/300 zs1 at obio0 addr 0x00000000 level 12 flags 0x103 # sun4/100 zs2 at obio0 addr 0xe0000000 level 12 flags 0x103 # sun4/300 # # Note the flags on the esp entries below, that work around # deficiencies in the current driver: # bits 0-7: disable disconnect/reselect for the corresponding target # bits 8-15: disable synch negotiation for target [bit-8] # Note: targets 4-7 have disconnect/reselect enabled on the premise # that tape devices normally have one of these targets. Tape # devices should be allowed to disconnect for the SCSI bus # to operate acceptably. # # sun4/300 SCSI - an NCR53c94 or equivalent behind # an LSI Logic DMA controller dma0 at obio0 addr 0xfa001000 level 4 # sun4/300 esp0 at obio0 addr 0xfa000000 level 4 flags 0xff0f # # sun4c or sun4m SCSI - an NCR53c94 or equivalent behind # specialized DMA glue dma0 at sbus0 slot ? offset ? # on-board SCSI esp0 at sbus0 slot ? offset ? flags 0xff0f # sun4c esp0 at dma0 flags 0xff0f # sun4m # FSBE/S SCSI - an NCR53c94 or equivalent behind dma* at sbus? slot ? offset ? # SBus SCSI esp* at sbus? slot ? offset ? flags 0xff0f # two flavours esp* at dma? flags 0xff0f # depending on model # sun4m Ethernet - an AMD 7990 LANCE behind # specialized DMA glue ledma0 at sbus0 slot ? offset ? # sun4m on-board le0 at ledma0 # # Additional SBus LANCE devices - glued on by lebuffer (not yet implemented) #lebuffer* at sbus0 slot ? offset ? # sun4m SBus #le* at lebuffer? # # sun4/300 and sun4c Ethernet - an AMD 7990 LANCE le0 at sbus0 slot ? offset ? # sun4c on-board le* at sbus? slot ? offset ? le0 at obio0 addr 0xf9000000 level 6 # sun4/300 # sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board # or on a Multibus/VME card. ie0 at obio0 addr 0xf6000000 level 6 # sun4/200 on-board ie0 at obio0 addr 0x06000000 level 6 # sun4/100 on-board ie1 at vmes0 addr 0xffe88000 level 5 vect 0x75 ie2 at vmes0 addr 0xff31ff02 level 5 vect 0x76 ie3 at vmes0 addr 0xff35ff02 level 5 vect 0x77 ie4 at vmes0 addr 0xff2dff02 level 5 vect 0x7c # Xylogics 753 or 7053 VME SMD disk controllers and disks, found # on sun4 systems. xdc0 at vmel0 addr 0xffffee80 level 3 vect 0x44 xdc1 at vmel0 addr 0xffffee90 level 3 vect 0x45 xdc2 at vmel0 addr 0xffffeea0 level 3 vect 0x46 xdc3 at vmel0 addr 0xffffeeb0 level 3 vect 0x47 xd* at xdc? drive ? # Xylogics 451 or 451 VME SMD disk controllers and disks, found # on sun4 systems. xyc0 at vmes0 addr 0xffffee40 level 3 vect 0x48 xyc1 at vmes0 addr 0xffffee48 level 3 vect 0x49 xy* at xyc? drive ? # NCR5380-based "Sun SCSI 3" VME SCSI controller. # This driver has several flags which may be enabled by OR'ing # the values and using the "flags" directive. # Valid flags are: # # 0x01 Use DMA (may be polled) # 0x02 Use DMA completion interrupts # 0x04 Allow disconnect/reselect # # E.g. the following would enable DMA, interrupts, and reselect: # si0 at vmes0 addr 0xff200000 level 3 vect 0x40 flags 0x07 # # By default, DMA is enabled in the driver. si0 at vmes0 addr 0xff200000 level 3 vect 0x40 # NCR5380-based "SCSI Weird" on-board SCSI interface found # on sun4/100 systems. The flags are the same as the "si" # controller. Note, while DMA is enabled by default, only # polled DMA works at this time, and reselects do not work # on this particular controller. sw0 at obio0 addr 0x0a000000 level 3 # Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m # systems. If your sun4 system has a cgfour installed in the P4 slot, # the P4 entries for "bwtwo" will attach to the overlay plane of the # "cgfour". bwtwo0 at sbus0 slot ? offset ? # sun4c on-board bwtwo* at sbus? slot ? offset ? # sun4c and sun4m bwtwo0 at obio0 addr 0xfd000000 level 4 # sun4/200 bwtwo0 at obio0 addr 0xfb300000 level 4 # sun4/300 in P4 slot bwtwo0 at obio0 addr 0x0b300000 level 4 # sun4/100 in P4 slot # Sun "cgtwo" VME color framebuffer cgtwo0 at vmes0 addr 0xff400000 level 4 vect 0xa8 # Sun "cgthree" Sbus color framebuffer cgthree0 at sbus? slot ? offset ? cgthree* at sbus? slot ? offset ? #cgthree0 at obio? slot ? offset ? # sun4m #cgthree* at obio? slot ? offset ? # sun4m # Sun "cgfour" color framebuffer with overlay plane. See above comment # regarding overlay plane. cgfour0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 cgfour0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 # Sun "cgsix" accelerated color framebuffer. cgsix0 at sbus? slot ? offset ? cgsix* at sbus? slot ? offset ? cgsix0 at obio0 addr 0xfb000000 level 4 # sun4/300 P4 cgsix0 at obio0 addr 0x0b000000 level 4 # sun4/100 P4 # Sun "cgeight" 24-bit framebuffer cgeight0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 cgeight0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 # SCSI bus layer. SCSI devices attach to the SCSI bus, which attaches # to the underlying hardware controller. scsibus* at esp? scsibus* at si? scsibus* at sw? # These entries find devices on all SCSI busses and assign # unit numers dynamically. # Map the SCSI disk at target 3 to unit 0, a'la SunOS. sd0 at scsibus? target 3 lun ? sd* at scsibus? target ? lun ? # SCSI disks st* at scsibus? target ? lun ? # SCSI tapes cd* at scsibus? target ? lun ? # SCSI CD-ROMs ch* at scsibus? target ? lun ? # SCSI changer devices # Floppy controller and drive found on SPARCstations. fdc0 at mainbus0 # sun4c controller fdc0 at obio0 # sun4m controller fd* at fdc0 # the drive itself pseudo-device kbd # Sun keyboard #pseudo-device strip 1 # radio clock pseudo-device rd 2 options OLD_PIPE # XXX nbpg botch