Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 51c01703 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Bjorn Helgaas
Browse files

x86/PCI: Make pci=earlydump output neat



Currently the early dump of PCI configuration space looks quite unhelpful,
e.g.

  [    0.000000]   60:
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]  00
  [    0.000000]

which makes really hard to get anything out of this. Convert the function
to use print_hex_dump() to make output neat.

In the result we will have

  [    0.000000] 00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

which is much, much better.

Reviewed-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Acked-by: default avatarIngo Molnar <mingo@kernel.org>
parent 60cc43fc
Loading
Loading
Loading
Loading
+5 −14
Original line number Diff line number Diff line
@@ -59,24 +59,15 @@ int early_pci_allowed(void)

void early_dump_pci_device(u8 bus, u8 slot, u8 func)
{
	u32 value[256 / 4];
	int i;
	int j;
	u32 val;

	printk(KERN_INFO "pci 0000:%02x:%02x.%d config space:",
	       bus, slot, func);
	pr_info("pci 0000:%02x:%02x.%d config space:\n", bus, slot, func);

	for (i = 0; i < 256; i += 4) {
		if (!(i & 0x0f))
			printk("\n  %02x:",i);
	for (i = 0; i < 256; i += 4)
		value[i / 4] = read_pci_config(bus, slot, func, i);

		val = read_pci_config(bus, slot, func, i);
		for (j = 0; j < 4; j++) {
			printk(" %02x", val & 0xff);
			val >>= 8;
		}
	}
	printk("\n");
	print_hex_dump(KERN_INFO, "", DUMP_PREFIX_OFFSET, 16, 1, value, 256, false);
}

void early_dump_pci_devices(void)