summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/probing.c
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/probing.c')
-rw-r--r--mdk-stage1/probing.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mdk-stage1/probing.c b/mdk-stage1/probing.c
index 16f9ebb06..fdfc7d097 100644
--- a/mdk-stage1/probing.c
+++ b/mdk-stage1/probing.c
@@ -89,7 +89,9 @@ void probe_that_type(enum driver_type type)
if (!fgets(buf, sizeof(buf), f)) break;
- sscanf(buf, "%x %04x%04x", &garb, &vendor, &device);
+ sscanf(buf, "%x %x", &garb, &vendor);
+ device = vendor & 0xFFFF; /* because scanf from dietlibc does not support %4f */
+ vendor = (vendor >> 16) & 0xFFFF;
for (i = 0; i < len; i++) {
if (pcidb[i].vendor == vendor && pcidb[i].device == device) {