If PCI is primary bus we should set isa_io/mem_base when parsing PCI bridge
resources from device tree. The previous way to check the primary bus based
on a hard-coded address named primary_phb_addr. Now we add a property named
"fsl,has-isa" into device tree. In kernel we use this property to find out
the bus is primary or not. This way is more flexible.

Signed-off-by: Jia Hongtao <b38...@freescale.com>
Signed-off-by: Li Yang <le...@freescale.com>
---
 .../devicetree/bindings/powerpc/fsl/pci.txt        |   36 ++++++++++++++++++++
 1 files changed, 36 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/powerpc/fsl/pci.txt

diff --git a/Documentation/devicetree/bindings/powerpc/fsl/pci.txt 
b/Documentation/devicetree/bindings/powerpc/fsl/pci.txt
new file mode 100644
index 0000000..7b18090
--- /dev/null
+++ b/Documentation/devicetree/bindings/powerpc/fsl/pci.txt
@@ -0,0 +1,36 @@
+* Freescale PCI
+
+Freescale PCI specific property:
+- fsl,has-isa : If PCI is primary bus we should set isa_io/mem_base when
+                parsing PCI bridge resources. This property is an indicator
+                to inform kernel the PCI is primary.
+
+Example (MPC8572DS)
+       &pci0 {
+               compatible = "fsl,mpc8548-pcie";
+               device_type = "pci";
+               #size-cells = <2>;
+               #address-cells = <3>;
+               bus-range = <0 255>;
+               clock-frequency = <33333333>;
+               interrupts = <24 2 0 0>;
+               fsl,has-isa;
+
+               pcie@0 {
+                       reg = <0 0 0 0 0>;
+               #interrupt-cells = <1>;
+               #size-cells = <2>;
+               #address-cells = <3>;
+                       device_type = "pci";
+                       interrupts = <24 2 0 0>;
+                       interrupt-map-mask = <0xf800 0 0 7>;
+
+                       interrupt-map = <
+                               /* IDSEL 0x0 */
+                               0000 0x0 0x0 0x1 &mpic 0x8 0x1 0x0 0x0
+                               0000 0x0 0x0 0x2 &mpic 0x9 0x1 0x0 0x0
+                               0000 0x0 0x0 0x3 &mpic 0xa 0x1 0x0 0x0
+                               0000 0x0 0x0 0x4 &mpic 0xb 0x1 0x0 0x0
+                               >;
+               };
+       };
-- 
1.7.5.1


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to