[PATCH] of: Fix address decoding on Bimini and js2x machines

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Jul 3 16:01:10 EST 2013


 Commit:
    
  e38c0a1fbc5803cbacdaac0557c70ac8ca5152e7
  of/address: Handle #address-cells > 2 specially
    
broke real time clock access on Bimini, js2x, and similar powerpc
machines using the "maple" platform. That code was indirectly relying
on the old (broken) behaviour of the translation for the hypertransport
to ISA bridge.
    
This fixes it by treating hypertransport as a PCI bus
    
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
CC: <stable at vger.kernel.org> [v3.6+]
---

Rob, if you have no objection I will put that in powerpc -next

diff --git a/drivers/of/address.c b/drivers/of/address.c
index 04da786..7c8221d 100644
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
@@ -106,8 +106,12 @@ static unsigned int of_bus_default_get_flags(const __be32 *
 
 static int of_bus_pci_match(struct device_node *np)
 {
-       /* "vci" is for the /chaos bridge on 1st-gen PCI powermacs */
-       return !strcmp(np->type, "pci") || !strcmp(np->type, "vci");
+       /*
+        * "vci" is for the /chaos bridge on 1st-gen PCI powermacs
+        * "ht" is hypertransport
+        */
+       return !strcmp(np->type, "pci") || !strcmp(np->type, "vci") ||
+               !strcmp(np->type, "ht");
 }
 
 static void of_bus_pci_count_cells(struct device_node *np,




More information about the Linuxppc-dev mailing list