summaryrefslogtreecommitdiffstats
path: root/pci.c
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2004-12-07 16:06:04 +0000
committerPascal Rigaux <pixel@mandriva.com>2004-12-07 16:06:04 +0000
commit1fb5773d887b21fa6e5ea657bd212e217ba836f1 (patch)
treea4af4b5437a59261209fc45c717805460fc4932c /pci.c
parent2128649ca655a7ccd7a1db6c8ee1efbecd8aa09f (diff)
downloadldetect-1fb5773d887b21fa6e5ea657bd212e217ba836f1.tar
ldetect-1fb5773d887b21fa6e5ea657bd212e217ba836f1.tar.gz
ldetect-1fb5773d887b21fa6e5ea657bd212e217ba836f1.tar.bz2
ldetect-1fb5773d887b21fa6e5ea657bd212e217ba836f1.tar.xz
ldetect-1fb5773d887b21fa6e5ea657bd212e217ba836f1.zip
all PCI_CLASS_BRIDGE_CARDBUS cards are yenta_socket (says kudzu)
Diffstat (limited to 'pci.c')
-rw-r--r--pci.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/pci.c b/pci.c
index e0d1d0f..d4b35c9 100644
--- a/pci.c
+++ b/pci.c
@@ -63,6 +63,9 @@ extern struct pciusb_entries pci_probe(void) {
e->subdevice = 0xffff;
}
class_prog = buf[0x9];
+
+ /* special rules below must be in sync with gi/mdk-stage1/probing.c */
+
if (e->class_ == PCI_CLASS_SERIAL_USB) {
/* taken from kudzu's pci.c */
char *module =
@@ -70,10 +73,13 @@ extern struct pciusb_entries pci_probe(void) {
class_prog == 0x10 ? "usb-ohci" :
class_prog == 0x20 ? "ehci-hcd" : NULL;
if (module) e->module = strdup(module);
- }
- if (e->class_ == PCI_CLASS_SERIAL_FIREWIRE) {
+
+ } else if (e->class_ == PCI_CLASS_SERIAL_FIREWIRE) {
/* taken from kudzu's pci.c */
if (class_prog == 0x10) e->module = strdup("ohci1394");
+
+ } else if (e->class_ == PCI_CLASS_BRIDGE_CARDBUS) {
+ e->module = strdup("yenta_socket");
}
close(devf);