diff options
author | David S. Miller <davem@davemloft.net> | 2008-09-23 00:42:24 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-09-23 00:51:54 +0200 |
commit | 44b50e5a1af13c605d6c3b17a60e42eb0ee48d5f (patch) | |
tree | 09e37ea3cabc56174e34ee3fc6b59811a8f64da9 | |
parent | sparc64: Fix disappearing PCI devices on e3500. (diff) | |
download | linux-44b50e5a1af13c605d6c3b17a60e42eb0ee48d5f.tar.xz linux-44b50e5a1af13c605d6c3b17a60e42eb0ee48d5f.zip |
sparc64: Fix missing devices due to PCI bridge test in of_create_pci_dev().
Just like in the arch/sparc64/kernel/of_device.c code fix commit
071d7f4c3b411beae08d27656e958070c43b78b4 ("sparc64: Fix SMP bootup
with CONFIG_STACK_DEBUG or ftrace.") we have to check the OF device
node name for "pci" instead of relying upon the 'device_type' property
being there on all PCI bridges.
Tested by Meelis Roos, and confirmed to make the PCI QFE devices
reappear on the E3500 system.
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc64/kernel/pci.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/pci.c b/arch/sparc64/kernel/pci.c index 55096195458f..80dad76f8b81 100644 --- a/arch/sparc64/kernel/pci.c +++ b/arch/sparc64/kernel/pci.c @@ -425,7 +425,7 @@ struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, dev->current_state = 4; /* unknown power state */ dev->error_state = pci_channel_io_normal; - if (!strcmp(type, "pci") || !strcmp(type, "pciex")) { + if (!strcmp(node->name, "pci")) { /* a PCI-PCI bridge */ dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->rom_base_reg = PCI_ROM_ADDRESS1; |