diff options
author | Thierry Vignaud <tv@mandriva.org> | 2007-02-26 13:49:06 +0000 |
---|---|---|
committer | Thierry Vignaud <tv@mandriva.org> | 2007-02-26 13:49:06 +0000 |
commit | 5e8e8d8cf3084be0218b34dc10049222bf2a42dd (patch) | |
tree | d0ebf772aee80a7bbcad815b1744f2015cdc7811 | |
parent | b8c364035dfd4d9265259f3d8a8a7edfe0442b8a (diff) | |
download | ldetect-5e8e8d8cf3084be0218b34dc10049222bf2a42dd.tar ldetect-5e8e8d8cf3084be0218b34dc10049222bf2a42dd.tar.gz ldetect-5e8e8d8cf3084be0218b34dc10049222bf2a42dd.tar.bz2 ldetect-5e8e8d8cf3084be0218b34dc10049222bf2a42dd.tar.xz ldetect-5e8e8d8cf3084be0218b34dc10049222bf2a42dd.zip |
(pciusb_find_modules) add "descr_lookup" parameter to enable/disable description lookup
-rw-r--r-- | common.h | 7 | ||||
-rw-r--r-- | pciusb.c | 4 |
2 files changed, 8 insertions, 3 deletions
@@ -5,7 +5,12 @@ #define NON_EXPORTED __attribute__((visibility("hidden"))) -extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciusbtable) NON_EXPORTED; +typedef enum { + LOAD, + DO_NOT_LOAD, +} descr_lookup; + +extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciusbtable, const descr_lookup) NON_EXPORTED; extern void pciusb_initialize(struct pciusb_entry *e) NON_EXPORTED; #define MAX_DEVICES 100 @@ -9,7 +9,7 @@ #include <string.h> #include "common.h" -extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciusbtable) { +extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciusbtable, const descr_lookup descr_lookup) { fh f; char buf[2048]; int line; @@ -51,7 +51,7 @@ extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciu e->module = strndup(p,q-p-1); } /* special case for buggy 0x0 usb entry */ - if (2 < strlen(q+2) && vendor != 0 && device != 0 && e->class_ != 0x90000d) { /* Hub class */ + if (descr_lookup == LOAD && 2 < strlen(q+2) && vendor != 0 && device != 0 && e->class_ != 0x90000d) { /* Hub class */ ifree(e->text); /* usb.c set it so that we display something when usbtable doesn't refer that hw*/ e->text = strndup(q+2, strlen(q)-4); } |