diff options
author | Ronald G. Minnich <rminnich@gmail.com> | 2006-02-11 22:07:44 +0000 |
---|---|---|
committer | Ronald G. Minnich <rminnich@gmail.com> | 2006-02-11 22:07:44 +0000 |
commit | e0aea3bbed543908c60c3571d709a302e7dc2b8f (patch) | |
tree | 9717375791aea0d34df49adb092d7c875bb491ab /src/mainboard/lippert/frontrunner/debug.c | |
parent | 566bf71d5bba5a79eec03b8c5e35e7a54ae5eb2d (diff) | |
download | coreboot-e0aea3bbed543908c60c3571d709a302e7dc2b8f.tar.xz |
lippert frontrunner
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2172 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/mainboard/lippert/frontrunner/debug.c')
-rw-r--r-- | src/mainboard/lippert/frontrunner/debug.c | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/src/mainboard/lippert/frontrunner/debug.c b/src/mainboard/lippert/frontrunner/debug.c new file mode 100644 index 0000000000..7eeabdef47 --- /dev/null +++ b/src/mainboard/lippert/frontrunner/debug.c @@ -0,0 +1,66 @@ + +static void print_debug_pci_dev(unsigned dev) +{ + print_debug("PCI: "); + print_debug_hex8((dev >> 16) & 0xff); + print_debug_char(':'); + print_debug_hex8((dev >> 11) & 0x1f); + print_debug_char('.'); + print_debug_hex8((dev >> 8) & 7); +} + +static void print_pci_devices(void) +{ + device_t dev; + for(dev = PCI_DEV(0, 0, 0); + dev <= PCI_DEV(0, 0x1f, 0x7); + dev += PCI_DEV(0,0,1)) { + uint32_t id; + id = pci_read_config32(dev, PCI_VENDOR_ID); + if (((id & 0xffff) == 0x0000) || ((id & 0xffff) == 0xffff) || + (((id >> 16) & 0xffff) == 0xffff) || + (((id >> 16) & 0xffff) == 0x0000)) { + continue; + } + print_debug_pci_dev(dev); + print_debug("\r\n"); + } +} + +static void dump_pci_device(unsigned dev) +{ + int i; + print_debug_pci_dev(dev); + print_debug("\r\n"); + + for(i = 0; i <= 255; i++) { + unsigned char val; + if ((i & 0x0f) == 0) { + print_debug_hex8(i); + print_debug_char(':'); + } + val = pci_read_config8(dev, i); + print_debug_char(' '); + print_debug_hex8(val); + if ((i & 0x0f) == 0x0f) { + print_debug("\r\n"); + } + } +} + +static void dump_pci_devices(void) +{ + device_t dev; + for(dev = PCI_DEV(0, 0, 0); + dev <= PCI_DEV(0, 0x1f, 0x7); + dev += PCI_DEV(0,0,1)) { + uint32_t id; + id = pci_read_config32(dev, PCI_VENDOR_ID); + if (((id & 0xffff) == 0x0000) || ((id & 0xffff) == 0xffff) || + (((id >> 16) & 0xffff) == 0xffff) || + (((id >> 16) & 0xffff) == 0x0000)) { + continue; + } + dump_pci_device(dev); + } +} |