Ok thanks. This short string match may be useful in some cases, but I
agree it plays havoc with the current code.
Feng Kan
On Mar 30, 2010, at 14:14, "Benjamin Herrenschmidt" <b...@kernel.crashing.org
> wrote:
On Wed, 2010-03-31 at 07:48 +1100, Benjamin Herrenschmidt wrote:
On Tue, 2010-03-30 at 10:41 -0700, Feng Kan wrote:
From: Feng Kan <f...@appliedmicro.com>
The current matching scheme make the pci node match to pcix or
pciex node.
To avoid the match, change the method so only one type of
initialization
is called per node.
No, your patch is not right. The problem was introduced by a patch
from
Grant that incorrectly made of_device_is_compatible do a substring
match. Grant should have fixed that now. Grant ? Is your fix upstream
yet ? If not, can you send that ASAP ?
Better if I CC him too :-)
Cheers,
Ben.
Cheers,
Ben.
Signed-off-by: Feng Kan <f...@appliedmicro.com>
Signed-off-by: Tirumala R Marri <tma...@appliedmicro.com>
---
arch/powerpc/sysdev/ppc4xx_pci.c | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/arch/powerpc/sysdev/ppc4xx_pci.c b/arch/powerpc/
sysdev/ppc4xx_pci.c
index 8aa3302..1e67c74 100644
--- a/arch/powerpc/sysdev/ppc4xx_pci.c
+++ b/arch/powerpc/sysdev/ppc4xx_pci.c
@@ -1842,14 +1842,16 @@ static int __init ppc4xx_pci_find_bridges
(void)
ppc_pci_flags |= PPC_PCI_ENABLE_PROC_DOMAINS |
PPC_PCI_COMPAT_DOMAIN_0;
+ for_each_compatible_node(np, NULL, "ibm,plb-pci") {
+ if (of_device_is_compatible(np, "ibm,plb-pcix"))
+ ppc4xx_probe_pcix_bridge(np);
#ifdef CONFIG_PPC4xx_PCI_EXPRESS
- for_each_compatible_node(np, NULL, "ibm,plb-pciex")
- ppc4xx_probe_pciex_bridge(np);
+ else if (of_device_is_compatible(np, "ibm,plb-pciex"))
+ ppc4xx_probe_pciex_bridge(np);
#endif
- for_each_compatible_node(np, NULL, "ibm,plb-pcix")
- ppc4xx_probe_pcix_bridge(np);
- for_each_compatible_node(np, NULL, "ibm,plb-pci")
- ppc4xx_probe_pci_bridge(np);
+ else
+ ppc4xx_probe_pci_bridge(np);
+ }
return 0;
}
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev