On Sun, Apr 08, 2018 at 01:57:25PM +0200, Mark Kettenis wrote:
> ok?
>
> Index: pcidump.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/pcidump/pcidump.c,v
> retrieving revision 1.46
> diff -u -p -r1.46 pcidump.c
> --- pcidump.c 31 Aug 2017 12:03:02 -0000 1.46
> +++ pcidump.c 8 Apr 2018 11:52:21 -0000
> @@ -455,7 +455,7 @@ dump_caplist(int bus, int dev, int func,
> }
>
> void
> -dump_type0(int bus, int dev, int func)
> +dump_bars(int bus, int dev, int func, int end)
> {
> const char *memtype;
> u_int64_t mem;
> @@ -463,7 +463,7 @@ dump_type0(int bus, int dev, int func)
> u_int32_t reg, reg1;
> int bar;
>
> - for (bar = PCI_MAPREG_START; bar < PCI_MAPREG_END; bar += 0x4) {
> + for (bar = PCI_MAPREG_START; bar < end; bar += 0x4) {
> if (pci_read(bus, dev, func, bar, ®) != 0 ||
> pci_readmask(bus, dev, func, bar, ®1) != 0)
> warn("unable to read PCI_MAPREG 0x%02x", bar);
> @@ -519,6 +519,14 @@ dump_type0(int bus, int dev, int func)
> break;
> }
> }
> +}
> +
> +void
> +dump_type0(int bus, int dev, int func)
> +{
> + u_int32_t reg;
> +
> + dump_bars(bus, dev, func, PCI_MAPREG_END);
>
> if (pci_read(bus, dev, func, PCI_CARDBUS_CIS_REG, ®) != 0)
> warn("unable to read PCI_CARDBUS_CIS_REG");
> @@ -549,13 +557,8 @@ void
> dump_type1(int bus, int dev, int func)
> {
> u_int32_t reg;
> - int bar;
>
> - for (bar = PCI_MAPREG_START; bar < PCI_MAPREG_PPB_END; bar += 0x4) {
> - if (pci_read(bus, dev, func, bar, ®) != 0)
> - warn("unable to read PCI_MAPREG 0x%02x", bar);
> - printf("\t0x%04x: %08x\n", bar, reg);
> - }
> + dump_bars(bus, dev, func, PCI_MAPREG_PPB_END);
>
> if (pci_read(bus, dev, func, PCI_PRIBUS_1, ®) != 0)
> warn("unable to read PCI_PRIBUS_1");
>
ok mlarkin