diff options
| author | Xin LI <delphij@FreeBSD.org> | 2013-01-11 10:22:09 +0000 |
|---|---|---|
| committer | Xin LI <delphij@FreeBSD.org> | 2013-01-11 10:22:09 +0000 |
| commit | 9e8bad810673bc4a10a258dec9fcbd08064c05f5 (patch) | |
| tree | 621290d062e0f35283d174407c29aa5e2130a135 /sys/dev/wbwd | |
| parent | cde4a72547b201c7e5248544e114ee59e60937c6 (diff) | |
Notes
Diffstat (limited to 'sys/dev/wbwd')
| -rw-r--r-- | sys/dev/wbwd/wbwd.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/sys/dev/wbwd/wbwd.c b/sys/dev/wbwd/wbwd.c index dfd8f3c3e5b29..484b5bfb12fbb 100644 --- a/sys/dev/wbwd/wbwd.c +++ b/sys/dev/wbwd/wbwd.c @@ -179,6 +179,12 @@ struct winbond_vendor_device_id { .device_rev = 0x73, .descr = "Winbond 83627DHG-P", }, + { + .vendor_id = 0x5ca3, + .device_id = 0xc3, + .device_rev = 0x33, + .descr = "Nuvoton WPCM450RA0BX", + }, }; static void @@ -596,6 +602,9 @@ wb_probe_enable(device_t dev, int probe) goto cleanup; } + if (dev_id == 0xff && dev_rev == 0xff) + goto cleanup; + for (j = 0; j < sizeof(wb_devs) / sizeof(*wb_devs); j++) { if (wb_devs[j].device_id == dev_id && wb_devs[j].device_rev == dev_rev) { @@ -605,6 +614,16 @@ wb_probe_enable(device_t dev, int probe) break; } } + + if (!found) { + if (probe && dev != NULL) { + device_set_desc(dev, "Unknown Winbond/Nuvoton model"); + device_printf(dev, "DevID 0x%02x DevRev 0x%02x, " + "please report this.\n", dev_id, dev_rev); + } + found++; + } + if (probe && found && bootverbose && dev != NULL) device_printf(dev, "%s EFER 0x%02x ID 0x%02x Rev 0x%02x" " CR26 0x%02x (probing)\n", device_get_desc(dev), |
