diff options
Diffstat (limited to 'usr.sbin/pciconf')
-rw-r--r-- | usr.sbin/pciconf/pciconf.8 | 13 | ||||
-rw-r--r-- | usr.sbin/pciconf/pciconf.c | 8 |
2 files changed, 13 insertions, 8 deletions
diff --git a/usr.sbin/pciconf/pciconf.8 b/usr.sbin/pciconf/pciconf.8 index ba5f61a..4195d28 100644 --- a/usr.sbin/pciconf/pciconf.8 +++ b/usr.sbin/pciconf/pciconf.8 @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 2, 2007 +.Dd September 30, 2007 .Dt PCICONF 8 .Os .Sh NAME @@ -56,9 +56,12 @@ With the .Fl l option, it lists all devices found by the boot probe in the following format: .Bd -literal -foo0@pci0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 hdr=0x00 -bar0@pci0:5:0: class=0x000100 card=0x00000000 chip=0x88c15333 rev=0x00 hdr=0x00 -none0@pci0:6:0: class=0x020000 card=0x00000000 chip=0x802910ec rev=0x00 hdr=0x00 +foo0@pci0:0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 \ +hdr=0x00 +bar0@pci0:0:5:0: class=0x000100 card=0x00000000 chip=0x88c15333 rev=0x00 \ +hdr=0x00 +none0@pci0:0:6:0: class=0x020000 card=0x00000000 chip=0x802910ec rev=0x00 \ +hdr=0x00 .Ed .Pp The first column gives the @@ -139,7 +142,7 @@ except for require a .Ar selector of the form -.Li pci Ns Va bus Ns \&: Ns Va device +.Li pci Ns Va domain Ns \&: Ns Va bus Ns \&: Ns Va device (optionally followed by .Li \&: Ns Va function ) . A final colon may be appended and diff --git a/usr.sbin/pciconf/pciconf.c b/usr.sbin/pciconf/pciconf.c index a42435c..07b6feb 100644 --- a/usr.sbin/pciconf/pciconf.c +++ b/usr.sbin/pciconf/pciconf.c @@ -203,13 +203,12 @@ list_devs(int verbose, int caps) return; } for (p = conf; p < &conf[pc.num_matches]; p++) { - - printf("%s%d@pci%d:%d:%d:\tclass=0x%06x card=0x%08x " + printf("%s%d@pci%d:%d:%d:%d:\tclass=0x%06x card=0x%08x " "chip=0x%08x rev=0x%02x hdr=0x%02x\n", (p->pd_name && *p->pd_name) ? p->pd_name : "none", (p->pd_name && *p->pd_name) ? (int)p->pd_unit : - none_count++, + none_count++, p->pc_sel.pc_domain, p->pc_sel.pc_bus, p->pc_sel.pc_dev, p->pc_sel.pc_func, (p->pc_class << 16) | (p->pc_subclass << 8) | p->pc_progif, @@ -497,6 +496,9 @@ getsel(const char *str) if (strncmp(ep, "pci", 3) == 0) { ep += 3; + sel.pc_domain = strtoul(ep, &ep, 0); + if (!ep || *ep++ != ':') + errx(1, "cannot parse selector %s", str); sel.pc_bus = strtoul(ep, &ep, 0); if (!ep || *ep++ != ':') errx(1, "cannot parse selector %s", str); |