aboutsummaryrefslogtreecommitdiff
path: root/sys/i386/conf
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>1999-04-16 21:22:55 +0000
committerPeter Wemm <peter@FreeBSD.org>1999-04-16 21:22:55 +0000
commit6182fdbda82d66e069d86382987606cbba1972b1 (patch)
tree8b86f578632961e1cd2aed57a2be13d993257d35 /sys/i386/conf
parent24c38be4da1f835f2125da7d5fa3632bc028131d (diff)
downloadsrc-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/GENERIC24
-rw-r--r--sys/i386/conf/LINT16
-rw-r--r--sys/i386/conf/Makefile.i3864
-rw-r--r--sys/i386/conf/NOTES16
-rw-r--r--sys/i386/conf/files.i38617
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