Add Rapidio support for the MPC8641HPCN
authorJohn Traill <john.traill@freescale.com>
Wed, 9 Aug 2006 13:33:50 +0000 (14:33 +0100)
committerJon Loeliger <jdl@freescale.com>
Wed, 9 Aug 2006 16:20:30 +0000 (11:20 -0500)
Signed-off-by: John Traill <john.traill@freescale.com>
board/mpc8641hpcn/init.S
board/mpc8641hpcn/oftree.dts

index 69954a81ac2e7dc05c5c2924bb692a97b87faac3..c6ea55ea714bbfb31fe0c6aada96cf430710347a 100644 (file)
@@ -84,6 +84,9 @@
 #define LAWAR8  ((LAWAR_TRGT_IF_DDR2 | (LAWAR_SIZE & LAWAR_SIZE_512M)) & ~LAWAR_EN)
 #endif
 
+#define LAWBAR9 ((CFG_RIO_MEM_BASE>>12) & 0xfffff)
+#define LAWAR9  (LAWAR_EN | LAWAR_TRGT_IF_RIO | (LAWAR_SIZE & LAWAR_SIZE_512M))
+
        .section .bootpg, "ax"
        .globl  law_entry
 law_entry:
@@ -164,5 +167,14 @@ law_entry:
        ori     r6,r6,LAWAR8@l
        stwu    r6, 0x20(r5)
 
+       /* LAWBAR9, LAWAR9 */
+       lis     r6,LAWBAR9@h
+       ori     r6,r6,LAWBAR9@l
+       stwu    r6, 0x20(r4)
+
+       lis     r6,LAWAR9@h
+       ori     r6,r6,LAWAR9@l
+       stwu    r6, 0x20(r5)
+
        blr
 
index 742a1404f1e87f0248fb378808da2d57d40003e3..99d75ca621964c349ac00479c49d9c0cf67214e8 100644 (file)
                                >;
                        interrupt-parent = <40000>;
                };
+               rio@c0000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       device_type = "rio";
+                       model = "pq38";
+                       compatible = "85xx";
+                       ranges = <0 c0000000 20000000>;
+                       reg = <c0000 13000>;
+                       linux,phandle = <c0000>;
+               };
+               rio_message@d3000 {
+                       device_type = "network";
+                       compatible = "85xx";
+                       linux,phandle = <d3000>;
+                       reg = <d3000 d3100>;
+                       interrupts = <35 2 36 2>;
+                       interrupt-parent = <40000>;
+               };
+               rio_message@d3100 {
+                       device_type = "network";
+                       compatible = "85xx";
+                       linux,phandle = <d3100>;
+                       reg = <d3100 d3200>;
+                       interrupts = <37 2 38 2>;
+                       interrupt-parent = <40000>;
+               };
+               rio_doorbell@d3400 {
+                       device_type = "doorbell";
+                       compatible = "85xx";
+                       linux,phandle = <d3400>;
+                       reg = <d3400 d34e0>;
+                       interrupts = <31 2 32 2>;
+                       interrupt-parent = <40000>;
+               };
+               rio_portwrite@d34e0 {
+                       device_type = "portwrite";
+                       compatible = "85xx";
+                       linux,phandle = <d34e0>;
+                       reg = <d34e0 d3500>;
+                       interrupts = <30 2>;
+                       interrupt-parent = <40000>;
+               };
        };
 };