Subject: GENERIC and cardbus, and relationship to GENERIC_LAPTOP (i386)
To: None <port-i386@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: port-i386
Date: 03/19/2007 11:48:48
I have a Thinkpad T60 with two processors, and used to run
GENERIC.MPACPI modified to include cardbus attachments for devices.
Now, ACPI is the default in GENERIC, and GENERIC.MP just adds
MULTIPROCESSOR (and APM_NO_IDLE).  So I'm runnin GENERIC.MP.

GENERIC_LAPTOP is very different from GENERIC in ways that aren't
clear.  The diff is large, and many changes don't have a rationale (no
veriexec on GENERIC_LAPTOP), leading me to suspect that many are
unintentional.

Long term, I think it would be good to get rid of GENERIC_LAPTOP, or
at least make either the file or the diff to GENERIC much smaller.
That's hard, so I'm proposing smaller steps.

I'd like to enable devices at cardbus attachment in GENERIC.  I don't
see any real downside; the drivers are all or nearly all included with
pci attachment already, and arguably ath at carbus is more likely to
be encountered than foo at eisa these days.

I'd also like to add the ACPI apm emulation line from GENERIC_LAPTOP
to GENERIC, so that the gnome battery applet works.

Any objections (assuming I recover my hosed notebook and run the
resulting kernel and it works ok)?

Index: GENERIC
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/conf/GENERIC,v
retrieving revision 1.819
diff -u -p -r1.819 GENERIC
--- GENERIC	14 Mar 2007 12:27:22 -0000	1.819
+++ GENERIC	19 Mar 2007 15:24:43 -0000
@@ -343,6 +343,7 @@ acpi0 		at mainbus0
 #options 	ACPICA_PEDANTIC		# force strict conformance to the Spec.
 
 # ACPI devices
+apm*		at acpi?		# ACPI apm emulation
 acpiacad* 	at acpi?		# ACPI AC Adapter
 acpibat* 	at acpi?		# ACPI Battery
 acpibut* 	at acpi?		# ACPI Button
@@ -560,7 +561,7 @@ pcmcom* at pcmcia? function ?		# PCMCIA 
 com*	at pcmcom? slave ?		# ...and the slave devices
 
 # CardBus serial interfaces
-#com*	at cardbus? function ?	# Modems and serial cards
+com*	at cardbus? function ?	# Modems and serial cards
 
 # ISA serial interfaces
 #options 	COM_HAYESP		# adds Hayes ESP serial board support
@@ -698,9 +699,9 @@ wds0	at isa? port 0x350 irq 15 drq 6	# W
 wds1	at isa? port 0x358 irq 11 drq 5
 
 # CardBus SCSI cards
-#adv*	at cardbus? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
-#ahc*	at cardbus? function ?	# Adaptec ADP-1480
-#njs*	at cardbus? function ?	# Workbit NinjaSCSI-32
+adv*	at cardbus? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
+ahc*	at cardbus? function ?	# Adaptec ADP-1480
+njs*	at cardbus? function ?	# Workbit NinjaSCSI-32
 
 # MCA SCSI cards
 aha*	at mca? slot ?			# Adaptec AHA-1640
@@ -953,14 +954,14 @@ we0	at isa? port 0x280 iomem 0xd0000 irq
 we1	at isa? port 0x300 iomem 0xcc000 irq 10
 
 # CardBus network cards
-#ath*	at cardbus? function ?	# Atheros 5210/5211/5212 802.11
-#atw*	at cardbus? function ?	# ADMtek ADM8211 (802.11)
-#ex*	at cardbus? function ?	# 3Com 3C575TX
-#fxp*	at cardbus? function ?	# Intel i8255x
-#rtk*	at cardbus? function ?	# Realtek 8129/8139
-#ral*	at cardbus? function ?	# Ralink Technology
-#rtw*	at cardbus? function ?	# Realtek 8180L (802.11)
-#tlp*	at cardbus? function ?	# DECchip 21143
+ath*	at cardbus? function ?	# Atheros 5210/5211/5212 802.11
+atw*	at cardbus? function ?	# ADMtek ADM8211 (802.11)
+ex*	at cardbus? function ?	# 3Com 3C575TX
+fxp*	at cardbus? function ?	# Intel i8255x
+rtk*	at cardbus? function ?	# Realtek 8129/8139
+ral*	at cardbus? function ?	# Ralink Technology
+rtw*	at cardbus? function ?	# Realtek 8180L (802.11)
+tlp*	at cardbus? function ?	# DECchip 21143
 
 # MCA network cards
 elmc*	at mca? slot ?			# 3Com EtherLink/MC (3c523)
@@ -1011,9 +1012,9 @@ ohci*	at pci?	dev ? function ?	# Open Ho
 uhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)
 
 # CardBus USB controllers
-#ehci*	at cardbus? function ?	# Enhanced Host Controller
-#ohci*	at cardbus? function ?	# Open Host Controller
-#uhci*	at cardbus? function ?	# Universal Host Controller (Intel)
+ehci*	at cardbus? function ?	# Enhanced Host Controller
+ohci*	at cardbus? function ?	# Open Host Controller
+uhci*	at cardbus? function ?	# Universal Host Controller (Intel)
 
 # ISA USB controllers
 #slhci0	at isa? port 0x300 irq 5	# ScanLogic SL811HS
@@ -1155,7 +1156,7 @@ irframe* at oboe?
 fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
 
 # CardBus IEEE1394 controllers
-#fwohci*	at cardbus? function ?	# IEEE1394 Open Host Controller
+fwohci*	at cardbus? function ?	# IEEE1394 Open Host Controller
 
 ieee1394if* at fwohci?
 fwip*	at ieee1394if?			# IP over IEEE1394