diff options
author | Peter Wemm <peter@FreeBSD.org> | 1999-04-16 21:22:55 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 1999-04-16 21:22:55 +0000 |
commit | 6182fdbda82d66e069d86382987606cbba1972b1 (patch) | |
tree | 8b86f578632961e1cd2aed57a2be13d993257d35 /sys/i386/conf | |
parent | 24c38be4da1f835f2125da7d5fa3632bc028131d (diff) | |
download | src-6182fdbda82d66e069d86382987606cbba1972b1.tar.gz src-6182fdbda82d66e069d86382987606cbba1972b1.zip |
Bring the 'new-bus' to the i386. This extensively changes the way the
i386 platform boots, it is no longer ISA-centric, and is fully dynamic.
Most old drivers compile and run without modification via 'compatability
shims' to enable a smoother transition. eisa, isapnp and pccard* are
not yet using the new resource manager. Once fully converted, all drivers
will be loadable, including PCI and ISA.
(Some other changes appear to have snuck in, including a port of Soren's
ATA driver to the Alpha. Soren, back this out if you need to.)
This is a checkpoint of work-in-progress, but is quite functional.
The bulk of the work was done over the last few years by Doug Rabson and
Garrett Wollman.
Approved by: core
Notes
Notes:
svn path=/head/; revision=45720
Diffstat (limited to 'sys/i386/conf')
-rw-r--r-- | sys/i386/conf/GENERIC | 24 | ||||
-rw-r--r-- | sys/i386/conf/LINT | 16 | ||||
-rw-r--r-- | sys/i386/conf/Makefile.i386 | 4 | ||||
-rw-r--r-- | sys/i386/conf/NOTES | 16 | ||||
-rw-r--r-- | sys/i386/conf/files.i386 | 17 |
5 files changed, 40 insertions, 37 deletions
diff --git a/sys/i386/conf/GENERIC b/sys/i386/conf/GENERIC index 60cc225ca48a..03e74ce54b2b 100644 --- a/sys/i386/conf/GENERIC +++ b/sys/i386/conf/GENERIC @@ -11,7 +11,7 @@ # device lines is present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # -# $Id: GENERIC,v 1.160 1999/04/16 16:17:05 n_hibma Exp $ +# $Id: GENERIC,v 1.161 1999/04/16 18:27:18 jkh Exp $ machine "i386" cpu "I386_CPU" @@ -53,10 +53,10 @@ config kernel root on wd0 #options NAPIC=1 # number of IO APICs #options NINTR=24 # number of INTs -controller isa0 -controller pnp0 # PnP support for ISA -controller eisa0 -controller pci0 +controller isa0 at nexus? +#controller pnp0 # PnP support for ISA +#controller eisa0 +controller pci0 at nexus? controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 disk fd0 at fdc0 drive 0 @@ -108,9 +108,9 @@ controller matcd0 at isa? port 0x230 bio device scd0 at isa? port 0x230 bio # atkbdc0 controlls both the keyboard and the PS/2 mouse -controller atkbdc0 at isa? port IO_KBD tty -device atkbd0 at isa? tty irq 1 -device psm0 at isa? tty irq 12 +controller atkbdc0 at isa? port IO_KBD +device atkbd0 at atkbdc? tty irq 1 +device psm0 at atkbdc? tty irq 12 device vga0 at isa? port ? conflicts @@ -126,12 +126,12 @@ device sc0 at isa? tty # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines #options PCVT_SCANSET=2 # IBM keyboards are non-std -device npx0 at isa? port IO_NPX irq 13 +device npx0 at nexus? port IO_NPX irq 13 # # Laptop support (see LINT for more options) # -device apm0 at isa? disable flags 0x31 # Advanced Power Management +device apm0 at nexus? disable flags 0x31 # Advanced Power Management # PCCARD (PCMCIA) support #controller card0 @@ -178,8 +178,8 @@ device ex0 at isa? port? net irq? device fe0 at isa? port 0x300 net irq ? device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 device lnc0 at isa? port 0x280 net irq 10 drq 0 -device ze0 at isa? port 0x300 net irq 10 iomem 0xd8000 -device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 +#device ze0 at isa? port 0x300 net irq 10 iomem 0xd8000 +#device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 device cs0 at isa? port 0x300 net irq ? pseudo-device loop diff --git a/sys/i386/conf/LINT b/sys/i386/conf/LINT index 833fbc9be576..20b284bbc79f 100644 --- a/sys/i386/conf/LINT +++ b/sys/i386/conf/LINT @@ -2,7 +2,7 @@ # LINT -- config file for checking all the sources, tries to pull in # as much of the source tree as it can. # -# $Id: LINT,v 1.581 1999/04/14 16:54:00 peter Exp $ +# $Id: LINT,v 1.582 1999/04/16 16:17:04 n_hibma Exp $ # # NB: You probably don't want to try running a kernel built from this # file. Instead, you should start from GENERIC, and add options from @@ -827,7 +827,7 @@ options "MSGBUF_SIZE=40960" # # Mandatory ISA devices: isa, npx # -controller isa0 +controller isa0 at nexus? # # Options for `isa': @@ -888,10 +888,10 @@ options "NTIMECOUNTER=20" controller pnp0 # The keyboard controller; it controlls the keyboard and the PS/2 mouse. -controller atkbdc0 at isa? port IO_KBD tty +controller atkbdc0 at isa? port IO_KBD # The AT keyboard -device atkbd0 at isa? tty irq 1 +device atkbd0 at atkbdc? tty irq 1 # Options for atkbd: options ATKBD_DFLT_KEYMAP # specify the built-in keymap @@ -907,7 +907,7 @@ options KBD_INSTALL_CDEV # install a CDEV entry in /dev # 0x04 Old-style (XT) keyboard support, useful for older ThinkPads # PS/2 mouse -device psm0 at isa? tty irq 12 +device psm0 at atkbdc? tty irq 12 # Options for psm: options PSM_HOOKAPM #hook the APM resume event, useful @@ -977,7 +977,7 @@ options SC_DISABLE_REBOOT # disable reboot key sequence # buggy. If it is not configured then you *must* configure math emulation # (see above). If both npx0 and emulation are configured, then only npx0 # is used (provided it works). -device npx0 at isa? port IO_NPX iosiz 0x0 flags 0x0 irq 13 +device npx0 at nexus? port IO_NPX iosiz 0x0 flags 0x0 irq 13 # # `flags' for npx0: @@ -1464,7 +1464,7 @@ controller matcd0 at isa? port 0x230 bio device wt0 at isa? port 0x300 bio irq 5 drq 1 device ctx0 at isa? port 0x230 iomem 0xd0000 device spigot0 at isa? port 0xad6 irq 15 iomem 0xee000 -device apm0 at isa? +device apm0 at nexus? device gp0 at isa? port 0x2c0 tty device gsc0 at isa? port "IO_GSC1" tty drq 3 device joy0 at isa? port IO_GAME @@ -1632,7 +1632,7 @@ options "EISA_SLOTS=12" # The "oltr" driver supports the following Olicom PCI token-ring adapters # OC-3136, OC-3137, OC-3139, OC-3140, OC-3141, OC-3540, OC-3250 # -controller pci0 +controller pci0 at nexus? controller ahc1 controller ncr0 controller isp0 diff --git a/sys/i386/conf/Makefile.i386 b/sys/i386/conf/Makefile.i386 index 9c9ba2378d75..cf6a2122c4da 100644 --- a/sys/i386/conf/Makefile.i386 +++ b/sys/i386/conf/Makefile.i386 @@ -1,7 +1,7 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $Id: Makefile.i386,v 1.144 1999/04/13 18:25:08 peter Exp $ +# $Id: Makefile.i386,v 1.145 1999/04/15 14:52:23 bde Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 300012 +%VERSREQ= 400013 KERNFORMAT?= elf diff --git a/sys/i386/conf/NOTES b/sys/i386/conf/NOTES index 833fbc9be576..20b284bbc79f 100644 --- a/sys/i386/conf/NOTES +++ b/sys/i386/conf/NOTES @@ -2,7 +2,7 @@ # LINT -- config file for checking all the sources, tries to pull in # as much of the source tree as it can. # -# $Id: LINT,v 1.581 1999/04/14 16:54:00 peter Exp $ +# $Id: LINT,v 1.582 1999/04/16 16:17:04 n_hibma Exp $ # # NB: You probably don't want to try running a kernel built from this # file. Instead, you should start from GENERIC, and add options from @@ -827,7 +827,7 @@ options "MSGBUF_SIZE=40960" # # Mandatory ISA devices: isa, npx # -controller isa0 +controller isa0 at nexus? # # Options for `isa': @@ -888,10 +888,10 @@ options "NTIMECOUNTER=20" controller pnp0 # The keyboard controller; it controlls the keyboard and the PS/2 mouse. -controller atkbdc0 at isa? port IO_KBD tty +controller atkbdc0 at isa? port IO_KBD # The AT keyboard -device atkbd0 at isa? tty irq 1 +device atkbd0 at atkbdc? tty irq 1 # Options for atkbd: options ATKBD_DFLT_KEYMAP # specify the built-in keymap @@ -907,7 +907,7 @@ options KBD_INSTALL_CDEV # install a CDEV entry in /dev # 0x04 Old-style (XT) keyboard support, useful for older ThinkPads # PS/2 mouse -device psm0 at isa? tty irq 12 +device psm0 at atkbdc? tty irq 12 # Options for psm: options PSM_HOOKAPM #hook the APM resume event, useful @@ -977,7 +977,7 @@ options SC_DISABLE_REBOOT # disable reboot key sequence # buggy. If it is not configured then you *must* configure math emulation # (see above). If both npx0 and emulation are configured, then only npx0 # is used (provided it works). -device npx0 at isa? port IO_NPX iosiz 0x0 flags 0x0 irq 13 +device npx0 at nexus? port IO_NPX iosiz 0x0 flags 0x0 irq 13 # # `flags' for npx0: @@ -1464,7 +1464,7 @@ controller matcd0 at isa? port 0x230 bio device wt0 at isa? port 0x300 bio irq 5 drq 1 device ctx0 at isa? port 0x230 iomem 0xd0000 device spigot0 at isa? port 0xad6 irq 15 iomem 0xee000 -device apm0 at isa? +device apm0 at nexus? device gp0 at isa? port 0x2c0 tty device gsc0 at isa? port "IO_GSC1" tty drq 3 device joy0 at isa? port IO_GAME @@ -1632,7 +1632,7 @@ options "EISA_SLOTS=12" # The "oltr" driver supports the following Olicom PCI token-ring adapters # OC-3136, OC-3137, OC-3139, OC-3140, OC-3141, OC-3540, OC-3250 # -controller pci0 +controller pci0 at nexus? controller ahc1 controller ncr0 controller isp0 diff --git a/sys/i386/conf/files.i386 b/sys/i386/conf/files.i386 index 81f360ef2c90..ba0dba133ec0 100644 --- a/sys/i386/conf/files.i386 +++ b/sys/i386/conf/files.i386 @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $Id: files.i386,v 1.234 1999/04/13 19:38:10 peter Exp $ +# $Id: files.i386,v 1.235 1999/04/15 14:52:23 bde Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -90,6 +90,7 @@ i386/i386/mp_machdep.c optional smp i386/i386/mpapic.c optional smp i386/i386/mpboot.s optional smp i386/i386/mplock.s optional smp +i386/i386/nexus.c standard i386/i386/perfmon.c optional perfmon profiling-routine i386/i386/perfmon.c optional perfmon i386/i386/pmap.c standard @@ -125,8 +126,8 @@ i386/ibcs2/imgact_coff.c optional ibcs2 i386/isa/adv_isa.c optional adv device-driver #i386/isa/aha1542.c optional aha device-driver i386/isa/aha_isa.c optional aha device-driver -i386/isa/atkbd_isa.c optional atkbd device-driver -i386/isa/atkbdc_isa.c optional atkbdc device-driver +isa/atkbd_isa.c optional atkbd device-driver +isa/atkbdc_isa.c optional atkbdc device-driver i386/isa/bt_isa.c optional bt device-driver i386/isa/clock.c standard i386/isa/cronyx.c optional cx device-driver @@ -177,6 +178,8 @@ i386/isa/mse.c optional mse device-driver i386/isa/npx.c mandatory npx device-driver i386/isa/pcaudio.c optional pca device-driver i386/isa/matcd/matcd.c optional matcd device-driver +i386/isa/isa_compat.c optional isa device-driver +i386/isa/isa_dma.c optional isa device-driver i386/isa/pcibus.c optional pci device-driver i386/isa/pcicx.c optional ze device-driver i386/isa/pcicx.c optional zp device-driver @@ -190,7 +193,7 @@ i386/isa/pnp.c optional pnp device-driver i386/isa/prof_machdep.c optional profiling-routine i386/isa/ppc.c optional ppc device-driver i386/isa/pcf.c optional pcf device-driver -i386/isa/psm.c optional psm device-driver +isa/psm.c optional psm device-driver i386/isa/random_machdep.c standard i386/isa/rc.c optional rc device-driver i386/isa/rp.c optional rp device-driver @@ -198,7 +201,7 @@ i386/isa/scd.c optional scd device-driver i386/isa/si.c optional si device-driver i386/isa/si2_z280.c optional si device-driver i386/isa/si3_t225.c optional si device-driver -i386/isa/sio.c optional sio device-driver +isa/sio.c optional sio device-driver i386/isa/snd/sound.c optional pcm device-driver i386/isa/snd/dmabuf.c optional pcm device-driver i386/isa/snd/ad1848.c optional pcm device-driver @@ -268,9 +271,9 @@ i386/isa/sound/cs4232.c optional css device-driver i386/isa/spigot.c optional spigot device-driver i386/isa/spkr.c optional speaker device-driver i386/isa/stallion.c optional stl device-driver -i386/isa/syscons_isa.c optional sc device-driver +isa/syscons_isa.c optional sc device-driver i386/isa/vesa.c optional vga device-driver -i386/isa/vga_isa.c optional vga device-driver +isa/vga_isa.c optional vga device-driver i386/isa/tw.c optional tw device-driver i386/isa/wd.c optional wdc device-driver i386/isa/wd.c optional wd device-driver |