Skip to contentSkip to conversation

ppc64: fix OF <-> PCI linkage for G5 AGP bus

PATCH New Benjamin Herrenschmidt 1 participant 1 message Feb 12, 2004 PowerPC

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ppc64: fix OF <-> PCI linkage for G5 AGP bus

Hi Linus !

This patch fixes the failure of radeonfb to retreive the clock and EDID data from Open Firmware. The linkage between the PCI device and the OF node couldn't be established properly at boot because of the renumbering we do to the G5's AGP bus.

Please apply,
Ben.

===== arch/ppc64/kernel/pmac_pci.c 1.1 vs edited =====

arch/ppc64/kernel/pmac_pci.c +15 -1
@@ -709,10 +709,24 @@
 	 * does it only for childs of the host bridges
 	 */
 	pmac_fixup_phb_resources();
-
+	
 	/* Setup the linkage between OF nodes and PHBs */ 
 	pci_devs_phb_init();
 
+	/* We have to deal with the renumbering we do for the AGP bus and update
+	 * the device-node accordingly
+	 */
+	if (u3_agp) {
+		struct device_node *np = (struct device_node *)u3_agp->arch_data;
+		np->busno = 0xf0;
+		np = np->child;
+		while(np) {
+			np->busno = 0xf0;
+			np = np->sibling;
+		}
+	}
+	
+	/* Check HyperTransport link speed */
 	pmac_check_ht_link();
 
 	/* Tell pci.c to use the common resource allocation mecanism */