aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorNick Hibma <n_hibma@FreeBSD.org>1999-11-22 03:34:43 +0000
committerNick Hibma <n_hibma@FreeBSD.org>1999-11-22 03:34:43 +0000
commitaa7e2ba7b692c6639832610e7e6b69e5f8327ac8 (patch)
treecb45f05a948eb97aafad7adce8063c3796ea0530 /sys/dev
parent66272d37012fbb2ec36771e9f33b321cfaad9143 (diff)
Notes
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/pci/pci.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c
index 4a36158c8996..027a89408cef 100644
--- a/sys/dev/pci/pci.c
+++ b/sys/dev/pci/pci.c
@@ -1164,11 +1164,24 @@ pci_probe_nomatch(device_t dev, device_t child)
{
struct pci_devinfo *dinfo;
pcicfgregs *cfg;
-
+
+ /* a few 'known' devices */
+ if (pci_get_class(dev) == PCIC_SERIALBUS
+ && pci_get_subclass(dev) == PCIS_SERIALBUS_USB) {
+ if (pci_get_progif(dev) == 0x00 /* UHCI */ ) {
+ device_printf(dev, "UHCI USB controller (vendor");
+ } else if (pci_get_progif(dev) == 0x10 /* OHCI */ ) {
+ device_printf(dev, "OHCI USB controller");
+ } else {
+ device_printf(dev, "USB controller");
+ }
+ } else {
+ device_printf(dev, "unknown card");
+ }
dinfo = device_get_ivars(child);
cfg = &dinfo->cfg;
- device_printf(dev, "unknown card (vendor=0x%04x, dev=0x%04x) at %d.%d",
+ printf(" (vendor=0x%04x, dev=0x%04x) at %d.%d",
cfg->vendor,
cfg->device,
pci_get_slot(child),