Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Aug 2003 08:27:20 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 36949 for review
Message-ID:  <200308261527.h7QFRK05078683@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=36949

Change 36949 by jhb@jhb_laptop on 2003/08/26 08:26:41

	Abandon multiple ISA bus idea by popular demand and instead propose
	having several different busses (isa0, pnpbios0, isapnp0, acpi0,
	cbus0, etc.) that ISA type drivers can attach to.
	
	Requested by:	  marcel, imp

Affected files ...

.. //depot/doc/6.0-TODO#3 edit

Differences ...

==== //depot/doc/6.0-TODO#3 (text+ko) ====

@@ -24,14 +24,20 @@
   registers including BAR's during suspend.  The old code that does this in
   individual drivers can then be removed. (maybe this will be in 5.x, as imp
   has some code to do this already).
-- Fix ISA bus support to have multiple ISA bus drivers.
+- Split the current ISA support up into a few different busses.  Note that
+  many ISA drivers will have to grow multiple attachments for this, but
+  that is seen as the lesser of evils.
 
-  1) An ISA bus that uses ACPI to enumerate PNPBIOS type devices.
-  2) An ISA bus that uses the PNPBIOS to enumerate motherboard devices.
-  3) A generic ISA bus that doesn't enumerate any builtin devices.
-  4) A i386 ISA bus for systems w/o ACPI or PNPBIOS that fakes up
-     suitable PNPBIOS devices for a base system (attimer, atpic, rtc,
-     etc.)
+  1) A plain ISA bus that only supports hint devices.
+  2) A PnP BIOS bus that enumerates PnP BIOS devices.  Would be a child of
+     legacy0 to avoid interfering with ACPI.
+  3) ACPI attachments for ACPI-enumerated ISA devices.  This is partially
+     done now.
+  4) A PC98 C-Bus bus for pc98 c-bus attachments.
+  5) An ISA PnP bus for ISA PnP devices.  Probably the generic ISA bus
+     above would create an ISA PnP child bus if PnP is found.
+  6) Some kind of fake PnP BIOS like bus for systems w/o ACPI or PnPBIOS
+     that attaches to legacy and enumerates pics, timers, etc.
 
 - Multiple passes over the new-bus tree for device probe and attach.  The
   multiple passes might look something like this:
@@ -49,9 +55,7 @@
      hotplug bus.  Bus drivers would need to idnetify child devices during
      this pass as they do now.
   2) Probe interrupt controllers.  This can allow drivers for interrupt
-     controllers to be real drivers.  What we would probably do to help
-     old i386 systems without PNPBIOS is to have an ISA bus driver for
-     such systems (see ISA bus driver 4 above).
+     controllers to be real drivers.
   3) Probe clock devices and timecounters.  Note that since a clock driver
      will likely need to allocate an interrupt, this pass needs to happen
      after interrupt controllers have attached and made their interrupts



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308261527.h7QFRK05078683>