aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2006-01-13 23:08:50 -0500
committerPaul Mackerras <paulus@samba.org>2006-01-13 23:08:50 -0500
commitd5f079000b20887bfbc84d772a27709c5665e652 (patch)
tree9dc1751898631497d69555d0d1889999450931f7 /arch
parentb4e7de0f3575f4862f04921c5bd0cb5680cc8d71 (diff)
[PATCH] powerpc: Recognize /chaos bridge on old pmacs as PCI
The first generation of PCI powermacs had a host bridge called /chaos which was for all intents and purposes a PCI host bridge, but has a device_type of "vci" in the device tree (presumably it's not really PCI at the hardware level or something). The OF parsing stuff in arch/powerpc/kernel/prom_parse.c currently doesn't recognize it as a PCI bridge, which means that controlfb.c can't get its device addresses. This makes prom_parse.c recognize a device_type of "vci" as indicating a PCI host bridge. With this, controlfb works again. Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/kernel/prom_parse.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/prom_parse.c b/arch/powerpc/kernel/prom_parse.c
index 309ae1d5fa77..a8099c806150 100644
--- a/arch/powerpc/kernel/prom_parse.c
+++ b/arch/powerpc/kernel/prom_parse.c
@@ -113,7 +113,8 @@ static unsigned int of_bus_default_get_flags(u32 *addr)
113 113
114static int of_bus_pci_match(struct device_node *np) 114static int of_bus_pci_match(struct device_node *np)
115{ 115{
116 return !strcmp(np->type, "pci"); 116 /* "vci" is for the /chaos bridge on 1st-gen PCI powermacs */
117 return !strcmp(np->type, "pci") || !strcmp(np->type, "vci");
117} 118}
118 119
119static void of_bus_pci_count_cells(struct device_node *np, 120static void of_bus_pci_count_cells(struct device_node *np,