Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-12 Thread Sean MacLennan
Stefan Roese wrote:
> You define here one gpio node that covers both gpio controllers of the 440EP. 
> I suggest to use two nodes here, like:
>
>   GPIO0: [EMAIL PROTECTED] {
>   compatible = "ibm,gpio-440ep";
>   reg = ;
>   };
>
>   GPIO1: [EMAIL PROTECTED] {
>   compatible = "ibm,gpio-440ep";
>   reg = ;
>   };
>
> Best regards,
> Stefan
>   

Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
---
diff --git a/arch/powerpc/boot/dts/warp.dts b/arch/powerpc/boot/dts/warp.dts
new file mode 100644
index 000..dc1499d
--- /dev/null
+++ b/arch/powerpc/boot/dts/warp.dts
@@ -0,0 +1,239 @@
+/*
+ * Device Tree Source for PIKA Warp
+ *
+ * Copyright (c) 2008 PIKA Technologies
+ *   Sean MacLennan <[EMAIL PROTECTED]>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2.  This program is licensed "as is" without
+ * any warranty of any kind, whether express or implied.
+ */
+
+/ {
+   #address-cells = <2>;
+   #size-cells = <1>;
+   model = "pika,warp";
+   compatible = "pika,warp";
+   dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
+
+   aliases {
+   ethernet0 = &EMAC0;
+   serial0 = &UART0;
+   };
+
+   cpus {
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   [EMAIL PROTECTED] {
+   device_type = "cpu";
+   model = "PowerPC,440EP";
+   reg = <0>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   timebase-frequency = <0>; /* Filled in by zImage */
+   i-cache-line-size = <20>;
+   d-cache-line-size = <20>;
+   i-cache-size = <8000>;
+   d-cache-size = <8000>;
+   dcr-controller;
+   dcr-access-method = "native";
+   };
+   };
+
+   memory {
+   device_type = "memory";
+   reg = <0 0 0>; /* Filled in by zImage */
+   };
+
+   UIC0: interrupt-controller0 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <0>;
+   dcr-reg = <0c0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   };
+
+   UIC1: interrupt-controller1 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <1>;
+   dcr-reg = <0d0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   interrupts = <1e 4 1f 4>; /* cascade */
+   interrupt-parent = <&UIC0>;
+   };
+
+   SDR0: sdr {
+   compatible = "ibm,sdr-440ep";
+   dcr-reg = <00e 002>;
+   };
+
+   CPR0: cpr {
+   compatible = "ibm,cpr-440ep";
+   dcr-reg = <00c 002>;
+   };
+
+   plb {
+   compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
+   #address-cells = <2>;
+   #size-cells = <1>;
+   ranges;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   SDRAM0: sdram {
+   compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
+   dcr-reg = <010 2>;
+   };
+
+   DMA0: dma {
+   compatible = "ibm,dma-440ep", "ibm,dma-440gp";
+   dcr-reg = <100 027>;
+   };
+
+   MAL0: mcmal {
+   compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
"ibm,mcmal";
+   dcr-reg = <180 62>;
+   num-tx-chans = <4>;
+   num-rx-chans = <2>;
+   interrupt-parent = <&MAL0>;
+   interrupts = <0 1 2 3 4>;
+   #interrupt-cells = <1>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   interrupt-map = ;
+   };
+
+   POB0: opb {
+   compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
"ibm,opb";
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges = < 0  8000
+ 8000 0 8000 8000>;
+   interrupt-parent = <&UIC1>;
+   interrupts = <7 4>;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   EBC0: ebc {
+   compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
"ibm,ebc";

Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-11 Thread Stefan Roese
On Saturday 12 January 2008, Sean MacLennan wrote:
> +++ arch/powerpc/boot/dts/warp.dts2008-01-11 15:58:03.0 -0500
> @@ -0,0 +1,234 @@
> +/*
> + * Device Tree Source for PIKA Warp
> + *
> + * Copyright (c) 2008 PIKA Technologies
> + *   Sean MacLennan <[EMAIL PROTECTED]>
> + *
> + * This file is licensed under the terms of the GNU General Public
> + * License version 2.  This program is licensed "as is" without
> + * any warranty of any kind, whether express or implied.
> + */
> +
> +/ {
> + #address-cells = <2>;
> + #size-cells = <1>;
> + model = "pika,warp";
> + compatible = "pika,warp";
> + dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
> +
> + aliases {
> + ethernet0 = &EMAC0;
> + serial0 = &UART0;
> + };
> +
> + cpus {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + [EMAIL PROTECTED] {
> + device_type = "cpu";
> + model = "PowerPC,440EP";
> + reg = <0>;
> + clock-frequency = <0>; /* Filled in by zImage */
> + timebase-frequency = <0>; /* Filled in by zImage */
> + i-cache-line-size = <20>;
> + d-cache-line-size = <20>;
> + i-cache-size = <8000>;
> + d-cache-size = <8000>;
> + dcr-controller;
> + dcr-access-method = "native";
> + };
> + };
> +
> + memory {
> + device_type = "memory";
> + reg = <0 0 0>; /* Filled in by zImage */
> + };
> +
> + UIC0: interrupt-controller0 {
> + compatible = "ibm,uic-440ep","ibm,uic";
> + interrupt-controller;
> + cell-index = <0>;
> + dcr-reg = <0c0 009>;
> + #address-cells = <0>;
> + #size-cells = <0>;
> + #interrupt-cells = <2>;
> + };
> +
> + UIC1: interrupt-controller1 {
> + compatible = "ibm,uic-440ep","ibm,uic";
> + interrupt-controller;
> + cell-index = <1>;
> + dcr-reg = <0d0 009>;
> + #address-cells = <0>;
> + #size-cells = <0>;
> + #interrupt-cells = <2>;
> + interrupts = <1e 4 1f 4>; /* cascade */
> + interrupt-parent = <&UIC0>;
> + };
> +
> + SDR0: sdr {
> + compatible = "ibm,sdr-440ep";
> + dcr-reg = <00e 002>;
> + };
> +
> + CPR0: cpr {
> + compatible = "ibm,cpr-440ep";
> + dcr-reg = <00c 002>;
> + };
> +
> + plb {
> + compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
> + #address-cells = <2>;
> + #size-cells = <1>;
> + ranges;
> + clock-frequency = <0>; /* Filled in by zImage */
> +
> + SDRAM0: sdram {
> + compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
> + dcr-reg = <010 2>;
> + };
> +
> + DMA0: dma {
> + compatible = "ibm,dma-440ep", "ibm,dma-440gp";
> + dcr-reg = <100 027>;
> + };
> +
> + MAL0: mcmal {
> + compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
> "ibm,mcmal";
> + dcr-reg = <180 62>;
> + num-tx-chans = <4>;
> + num-rx-chans = <2>;
> + interrupt-parent = <&MAL0>;
> + interrupts = <0 1 2 3 4>;
> + #interrupt-cells = <1>;
> + #address-cells = <0>;
> + #size-cells = <0>;
> + interrupt-map =  + /*RXEOB*/ 1 &UIC0 b 4
> + /*SERR*/  2 &UIC1 0 4
> + /*TXDE*/  3 &UIC1 1 4
> + /*RXDE*/  4 &UIC1 2 4>;
> + };
> +
> + POB0: opb {
> + compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
> "ibm,opb";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = < 0  8000
> +   8000 0 8000 8000>;
> + interrupt-parent = <&UIC1>;
> + interrupts = <7 4>;
> + clock-frequency = <0>; /* Filled in by zImage */
> +
> + EBC0: ebc {
> + compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
> "ibm,ebc";
> + dcr-reg = <012 2>;
> + #address-cells = <2>;
> + #size-cells = <1>;
> + clock-frequency = <0>; /* Filled in by zImage */
> + interrupts = <5 1>;
> + interrupt-p

Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-11 Thread Sean MacLennan
Josh Boyer wrote:
> On Fri, 11 Jan 2008 01:15:48 -0500
> Sean MacLennan <[EMAIL PROTECTED]> wrote:
> This looks pretty darn good, minus the missing GPIO node (see comment
> in patch 1).
>   
Thanks. I have added the gpio and tested it.

Cheers,
   Sean

Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
---
--- /dev/null   2005-11-20 22:22:37.0 -0500
+++ arch/powerpc/boot/dts/warp.dts  2008-01-11 15:58:03.0 -0500
@@ -0,0 +1,234 @@
+/*
+ * Device Tree Source for PIKA Warp
+ *
+ * Copyright (c) 2008 PIKA Technologies
+ *   Sean MacLennan <[EMAIL PROTECTED]>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2.  This program is licensed "as is" without
+ * any warranty of any kind, whether express or implied.
+ */
+
+/ {
+   #address-cells = <2>;
+   #size-cells = <1>;
+   model = "pika,warp";
+   compatible = "pika,warp";
+   dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
+
+   aliases {
+   ethernet0 = &EMAC0;
+   serial0 = &UART0;
+   };
+
+   cpus {
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   [EMAIL PROTECTED] {
+   device_type = "cpu";
+   model = "PowerPC,440EP";
+   reg = <0>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   timebase-frequency = <0>; /* Filled in by zImage */
+   i-cache-line-size = <20>;
+   d-cache-line-size = <20>;
+   i-cache-size = <8000>;
+   d-cache-size = <8000>;
+   dcr-controller;
+   dcr-access-method = "native";
+   };
+   };
+
+   memory {
+   device_type = "memory";
+   reg = <0 0 0>; /* Filled in by zImage */
+   };
+
+   UIC0: interrupt-controller0 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <0>;
+   dcr-reg = <0c0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   };
+
+   UIC1: interrupt-controller1 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <1>;
+   dcr-reg = <0d0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   interrupts = <1e 4 1f 4>; /* cascade */
+   interrupt-parent = <&UIC0>;
+   };
+
+   SDR0: sdr {
+   compatible = "ibm,sdr-440ep";
+   dcr-reg = <00e 002>;
+   };
+
+   CPR0: cpr {
+   compatible = "ibm,cpr-440ep";
+   dcr-reg = <00c 002>;
+   };
+
+   plb {
+   compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
+   #address-cells = <2>;
+   #size-cells = <1>;
+   ranges;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   SDRAM0: sdram {
+   compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
+   dcr-reg = <010 2>;
+   };
+
+   DMA0: dma {
+   compatible = "ibm,dma-440ep", "ibm,dma-440gp";
+   dcr-reg = <100 027>;
+   };
+
+   MAL0: mcmal {
+   compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
"ibm,mcmal";
+   dcr-reg = <180 62>;
+   num-tx-chans = <4>;
+   num-rx-chans = <2>;
+   interrupt-parent = <&MAL0>;
+   interrupts = <0 1 2 3 4>;
+   #interrupt-cells = <1>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   interrupt-map = ;
+   };
+
+   POB0: opb {
+   compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
"ibm,opb";
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges = < 0  8000
+ 8000 0 8000 8000>;
+   interrupt-parent = <&UIC1>;
+   interrupts = <7 4>;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   EBC0: ebc {
+   compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
"ibm,ebc";
+   dcr-reg = <012 2>;
+   #address-cells = <2>;
+   #size-cells = <1>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   interrupts = <5 1>;
+   interrupt

Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-11 Thread Josh Boyer
On Fri, 11 Jan 2008 01:15:48 -0500
Sean MacLennan <[EMAIL PROTECTED]> wrote:

> David Gibson wrote:
> > Or possibly what you actually want is:
> > [EMAIL PROTECTED],0 {
> > reg = <2 0 2200>;
> > ...
> > };
> >   
> That is what I want. I was missing a call to 
> ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); (see updated patch3/5 to follow.
> 
> Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>

This looks pretty darn good, minus the missing GPIO node (see comment
in patch 1).

josh
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-10 Thread Sean MacLennan
David Gibson wrote:
> Or possibly what you actually want is:
>   [EMAIL PROTECTED],0 {
>   reg = <2 0 2200>;
>   ...
>   };
>   
That is what I want. I was missing a call to 
ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); (see updated patch3/5 to follow.

Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
---
--- /dev/null   2005-11-20 22:22:37.0 -0500
+++ arch/powerpc/boot/dts/warp.dts  2008-01-11 00:57:34.0 -0500
@@ -0,0 +1,229 @@
+/*
+ * Device Tree Source for PIKA Warp
+ *
+ * Copyright (c) 2008 PIKA Technologies
+ *   Sean MacLennan <[EMAIL PROTECTED]>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2.  This program is licensed "as is" without
+ * any warranty of any kind, whether express or implied.
+ */
+
+/ {
+   #address-cells = <2>;
+   #size-cells = <1>;
+   model = "pika,warp";
+   compatible = "pika,warp";
+   dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
+
+   aliases {
+   ethernet0 = &EMAC0;
+   serial0 = &UART0;
+   };
+
+   cpus {
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   [EMAIL PROTECTED] {
+   device_type = "cpu";
+   model = "PowerPC,440EP";
+   reg = <0>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   timebase-frequency = <0>; /* Filled in by zImage */
+   i-cache-line-size = <20>;
+   d-cache-line-size = <20>;
+   i-cache-size = <8000>;
+   d-cache-size = <8000>;
+   dcr-controller;
+   dcr-access-method = "native";
+   };
+   };
+
+   memory {
+   device_type = "memory";
+   reg = <0 0 0>; /* Filled in by zImage */
+   };
+
+   UIC0: interrupt-controller0 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <0>;
+   dcr-reg = <0c0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   };
+
+   UIC1: interrupt-controller1 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <1>;
+   dcr-reg = <0d0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   interrupts = <1e 4 1f 4>; /* cascade */
+   interrupt-parent = <&UIC0>;
+   };
+
+   SDR0: sdr {
+   compatible = "ibm,sdr-440ep";
+   dcr-reg = <00e 002>;
+   };
+
+   CPR0: cpr {
+   compatible = "ibm,cpr-440ep";
+   dcr-reg = <00c 002>;
+   };
+
+   plb {
+   compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
+   #address-cells = <2>;
+   #size-cells = <1>;
+   ranges;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   SDRAM0: sdram {
+   compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
+   dcr-reg = <010 2>;
+   };
+
+   DMA0: dma {
+   compatible = "ibm,dma-440ep", "ibm,dma-440gp";
+   dcr-reg = <100 027>;
+   };
+
+   MAL0: mcmal {
+   compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
"ibm,mcmal";
+   dcr-reg = <180 62>;
+   num-tx-chans = <4>;
+   num-rx-chans = <2>;
+   interrupt-parent = <&MAL0>;
+   interrupts = <0 1 2 3 4>;
+   #interrupt-cells = <1>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   interrupt-map = ;
+   };
+
+   POB0: opb {
+   compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
"ibm,opb";
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges = < 0  8000
+ 8000 0 8000 8000>;
+   interrupt-parent = <&UIC1>;
+   interrupts = <7 4>;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   EBC0: ebc {
+   compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
"ibm,ebc";
+   dcr-reg = <012 2>;
+   #address-cells = <2>;
+   #size-cells = <1>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   interrupts = <5 1>;
+

Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-10 Thread David Gibson
On Fri, Jan 11, 2008 at 12:21:20AM -0500, Sean MacLennan wrote:
> David Gibson wrote:
> > On Thu, Jan 10, 2008 at 06:59:03PM -0500, Sean MacLennan wrote:
> >   
> >> New version with recommended changes. Device types removed. FPGA
> >> moved to correct bus.
> >> 
> >
> > [snip]
> >   
> >> +  [EMAIL PROTECTED],0 {
> >> +  compatible = "pika,fpga";
> >> +  reg = <0 8000 2200>;
> >> 
> >
> > Your reg property doesn't match your node name here...
> >   
> Is the following correct?
> 
>   [EMAIL PROTECTED],0 {
>   compatible = "pika,fpga";
>   reg = <2 8000 2200>;
>   interrupts = <18 8>;
>   interrupt-parent = <&UIC0>;
>   };

No.  You'd need
[EMAIL PROTECTED],8000 {
reg = <2 8000 2200>;
...
};

If, indeed, the fpga really has 32 bit address lines and requires the
high one to be 1...

Or possibly what you actually want is:
[EMAIL PROTECTED],0 {
reg = <2 0 2200>;
...
};

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-10 Thread Sean MacLennan
David Gibson wrote:
> On Thu, Jan 10, 2008 at 06:59:03PM -0500, Sean MacLennan wrote:
>   
>> New version with recommended changes. Device types removed. FPGA
>> moved to correct bus.
>> 
>
> [snip]
>   
>> +[EMAIL PROTECTED],0 {
>> +compatible = "pika,fpga";
>> +reg = <0 8000 2200>;
>> 
>
> Your reg property doesn't match your node name here...
>   
Is the following correct?

[EMAIL PROTECTED],0 {
compatible = "pika,fpga";
reg = <2 8000 2200>;
interrupts = <18 8>;
interrupt-parent = <&UIC0>;
};


Cheers,
   Sean

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-10 Thread David Gibson
On Thu, Jan 10, 2008 at 06:59:03PM -0500, Sean MacLennan wrote:
> New version with recommended changes. Device types removed. FPGA
> moved to correct bus.

[snip]
> + [EMAIL PROTECTED],0 {
> + compatible = "pika,fpga";
> + reg = <0 8000 2200>;

Your reg property doesn't match your node name here...

> + interrupts = <18 8>;
> + interrupt-parent = <&UIC0>;
> + };

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-10 Thread Sean MacLennan
New version with recommended changes. Device types removed. FPGA moved to 
correct bus.

Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
---
--- /dev/null   2005-11-20 22:22:37.0 -0500
+++ arch/powerpc/boot/dts/warp.dts  2008-01-10 13:04:49.0 -0500
@@ -0,0 +1,230 @@
+/*
+ * Device Tree Source for PIKA Warp
+ *
+ * Copyright (c) 2008 PIKA Technologies
+ *   Sean MacLennan <[EMAIL PROTECTED]>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2.  This program is licensed "as is" without
+ * any warranty of any kind, whether express or implied.
+ */
+
+/ {
+   #address-cells = <2>;
+   #size-cells = <1>;
+   model = "pika,warp";
+   compatible = "pika,warp";
+   dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
+
+   aliases {
+   ethernet0 = &EMAC0;
+   serial0 = &UART0;
+   };
+
+   cpus {
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   [EMAIL PROTECTED] {
+   device_type = "cpu";
+   model = "PowerPC,440EP";
+   reg = <0>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   timebase-frequency = <0>; /* Filled in by zImage */
+   i-cache-line-size = <20>;
+   d-cache-line-size = <20>;
+   i-cache-size = <8000>;
+   d-cache-size = <8000>;
+   dcr-controller;
+   dcr-access-method = "native";
+   };
+   };
+
+   memory {
+   device_type = "memory";
+   reg = <0 0 0>; /* Filled in by zImage */
+   };
+
+   UIC0: interrupt-controller0 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <0>;
+   dcr-reg = <0c0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   };
+
+   UIC1: interrupt-controller1 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <1>;
+   dcr-reg = <0d0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   interrupts = <1e 4 1f 4>; /* cascade */
+   interrupt-parent = <&UIC0>;
+   };
+
+   SDR0: sdr {
+   compatible = "ibm,sdr-440ep";
+   dcr-reg = <00e 002>;
+   };
+
+   CPR0: cpr {
+   compatible = "ibm,cpr-440ep";
+   dcr-reg = <00c 002>;
+   };
+
+   plb {
+   compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
+   #address-cells = <2>;
+   #size-cells = <1>;
+   ranges;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   SDRAM0: sdram {
+   compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
+   dcr-reg = <010 2>;
+   };
+
+   DMA0: dma {
+   compatible = "ibm,dma-440ep", "ibm,dma-440gp";
+   dcr-reg = <100 027>;
+   };
+
+   MAL0: mcmal {
+   compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
"ibm,mcmal";
+   dcr-reg = <180 62>;
+   num-tx-chans = <4>;
+   num-rx-chans = <2>;
+   interrupt-parent = <&MAL0>;
+   interrupts = <0 1 2 3 4>;
+   #interrupt-cells = <1>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   interrupt-map = ;
+   };
+
+   POB0: opb {
+   compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
"ibm,opb";
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges = < 0  8000
+ 8000 0 8000 8000>;
+   interrupt-parent = <&UIC1>;
+   interrupts = <7 4>;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   EBC0: ebc {
+   compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
"ibm,ebc";
+   dcr-reg = <012 2>;
+   #address-cells = <2>;
+   #size-cells = <1>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   interrupts = <5 1>;
+   interrupt-parent = <&UIC1>;
+
+   [EMAIL PROTECTED],0 {
+   compatible = "pika,fpga";
+   

Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread David Gibson
On Wed, Jan 09, 2008 at 10:33:56PM -0500, Sean MacLennan wrote:
> Ok, the FPGA is off the EBC, I found it in the documentation.
> 
> Under the ebc, I notice the walnut has @n,m. What are n,m? Are they tied 
> to chip selects?

n is the chipselect, m is the address offset within that chipselect.

> The FPGA is CS2 according to the documentation. Do I make it
> [EMAIL PROTECTED],0?

Probably, yes.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread Josh Boyer
On Wed, 09 Jan 2008 22:33:56 -0500
Sean MacLennan <[EMAIL PROTECTED]> wrote:

> Ok, the FPGA is off the EBC, I found it in the documentation.
> 
> Under the ebc, I notice the walnut has @n,m. What are n,m? Are they tied 
> to chip selects?

chip select,offset.

> The FPGA is CS2 according to the documentation. Do I make it [EMAIL 
> PROTECTED],0?

If the fpga is on chip select 2, offset 0 from that, yes.  Otherwise,
substitute the proper offset in place of 0.

The ranges property of the EBC node will do the actual address
translation.

josh
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread Sean MacLennan
Ok, the FPGA is off the EBC, I found it in the documentation.

Under the ebc, I notice the walnut has @n,m. What are n,m? Are they tied 
to chip selects?

The FPGA is CS2 according to the documentation. Do I make it [EMAIL 
PROTECTED],0?

Cheers,
Sean
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread Josh Boyer
On Wed, 09 Jan 2008 22:14:17 -0500
Sean MacLennan <[EMAIL PROTECTED]> wrote:

> David Gibson wrote:
> > On Wed, Jan 09, 2008 at 03:21:07PM -0500, Sean MacLennan wrote:
> >   
> >> Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
> >> ---
> >> --- /dev/null  2005-11-20 22:22:37.0 -0500
> >> +++ arch/powerpc/boot/dts/warp.dts 2008-01-08 12:04:10.0 -0500
> >> 
> >
> > [snip]
> >   
> >> +  plb {
> >> +  compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
> >> +  #address-cells = <2>;
> >> +  #size-cells = <1>;
> >> +  ranges;
> >> +  clock-frequency = <0>; /* Filled in by zImage */
> >> +
> >> +  SDRAM0: sdram {
> >> +  compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
> >> +  dcr-reg = <010 2>;
> >> +  };
> >> +
> >> +  DMA0: dma {
> >> +  compatible = "ibm,dma-440ep", "ibm,dma-440gp";
> >> +  dcr-reg = <100 027>;
> >> +  };
> >> +
> >> +  FPGA0: fpga {
> >> 
> >
> > Surely this must be off the EBC, not directly of the PLB...?
> >   
> Could be, I don't really know :( I will move it if it makes more sense.

Well, "making more sense" would be finding out where it is on the board
and putting it in the proper place :).

josh
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread Sean MacLennan
David Gibson wrote:
> On Wed, Jan 09, 2008 at 03:21:07PM -0500, Sean MacLennan wrote:
>   
>> Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
>> ---
>> --- /dev/null2005-11-20 22:22:37.0 -0500
>> +++ arch/powerpc/boot/dts/warp.dts   2008-01-08 12:04:10.0 -0500
>> 
>
> [snip]
>   
>> +plb {
>> +compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
>> +#address-cells = <2>;
>> +#size-cells = <1>;
>> +ranges;
>> +clock-frequency = <0>; /* Filled in by zImage */
>> +
>> +SDRAM0: sdram {
>> +compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
>> +dcr-reg = <010 2>;
>> +};
>> +
>> +DMA0: dma {
>> +compatible = "ibm,dma-440ep", "ibm,dma-440gp";
>> +dcr-reg = <100 027>;
>> +};
>> +
>> +FPGA0: fpga {
>> 
>
> Surely this must be off the EBC, not directly of the PLB...?
>   
Could be, I don't really know :( I will move it if it makes more sense.

Cheers,
Sean
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread David Gibson
On Wed, Jan 09, 2008 at 03:21:07PM -0500, Sean MacLennan wrote:
> Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
> ---
> --- /dev/null 2005-11-20 22:22:37.0 -0500
> +++ arch/powerpc/boot/dts/warp.dts2008-01-08 12:04:10.0 -0500

[snip]
> + plb {
> + compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
> + #address-cells = <2>;
> + #size-cells = <1>;
> + ranges;
> + clock-frequency = <0>; /* Filled in by zImage */
> +
> + SDRAM0: sdram {
> + compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
> + dcr-reg = <010 2>;
> + };
> +
> + DMA0: dma {
> + compatible = "ibm,dma-440ep", "ibm,dma-440gp";
> + dcr-reg = <100 027>;
> + };
> +
> + FPGA0: fpga {

Surely this must be off the EBC, not directly of the PLB...?

> + compatible = "pika,fpga";
> + reg = <0 8000 2200>;
> + interrupts = <18 8>;
> + interrupt-parent = <&UIC0>;
> + };

[snip]
> + IIC0: [EMAIL PROTECTED] {
> + device_type = "i2c";

Drop this device_type.

> + compatible = "ibm,iic-440ep", "ibm,iic-440gp", 
> "ibm,iic";
> + reg = ;
> + interrupt-parent = <&UIC0>;
> + interrupts = <2 4>;
> + };
> +
> + ZMII0: [EMAIL PROTECTED] {
> + device_type = "zmii-interface";

And this one.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH 2/5] Warp Base Platform - dts

2008-01-09 Thread Sean MacLennan
Signed-off-by: Sean MacLennan <[EMAIL PROTECTED]>
---
--- /dev/null   2005-11-20 22:22:37.0 -0500
+++ arch/powerpc/boot/dts/warp.dts  2008-01-08 12:04:10.0 -0500
@@ -0,0 +1,232 @@
+/*
+ * Device Tree Source for PIKA Warp
+ *
+ * Copyright (c) 2008 PIKA Technologies
+ *   Sean MacLennan <[EMAIL PROTECTED]>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2.  This program is licensed "as is" without
+ * any warranty of any kind, whether express or implied.
+ */
+
+/ {
+   #address-cells = <2>;
+   #size-cells = <1>;
+   model = "pika,warp";
+   compatible = "pika,warp";
+   dcr-parent = <&/cpus/[EMAIL PROTECTED]>;
+
+   aliases {
+   ethernet0 = &EMAC0;
+   serial0 = &UART0;
+   };
+
+   cpus {
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   [EMAIL PROTECTED] {
+   device_type = "cpu";
+   model = "PowerPC,440EP";
+   reg = <0>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   timebase-frequency = <0>; /* Filled in by zImage */
+   i-cache-line-size = <20>;
+   d-cache-line-size = <20>;
+   i-cache-size = <8000>;
+   d-cache-size = <8000>;
+   dcr-controller;
+   dcr-access-method = "native";
+   };
+   };
+
+   memory {
+   device_type = "memory";
+   reg = <0 0 0>; /* Filled in by zImage */
+   };
+
+   UIC0: interrupt-controller0 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <0>;
+   dcr-reg = <0c0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   };
+
+   UIC1: interrupt-controller1 {
+   compatible = "ibm,uic-440ep","ibm,uic";
+   interrupt-controller;
+   cell-index = <1>;
+   dcr-reg = <0d0 009>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   #interrupt-cells = <2>;
+   interrupts = <1e 4 1f 4>; /* cascade */
+   interrupt-parent = <&UIC0>;
+   };
+
+   SDR0: sdr {
+   compatible = "ibm,sdr-440ep";
+   dcr-reg = <00e 002>;
+   };
+
+   CPR0: cpr {
+   compatible = "ibm,cpr-440ep";
+   dcr-reg = <00c 002>;
+   };
+
+   plb {
+   compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4";
+   #address-cells = <2>;
+   #size-cells = <1>;
+   ranges;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   SDRAM0: sdram {
+   compatible = "ibm,sdram-440ep", "ibm,sdram-405gp";
+   dcr-reg = <010 2>;
+   };
+
+   DMA0: dma {
+   compatible = "ibm,dma-440ep", "ibm,dma-440gp";
+   dcr-reg = <100 027>;
+   };
+
+   FPGA0: fpga {
+   compatible = "pika,fpga";
+   reg = <0 8000 2200>;
+   interrupts = <18 8>;
+   interrupt-parent = <&UIC0>;
+   };
+
+   MAL0: mcmal {
+   compatible = "ibm,mcmal-440ep", "ibm,mcmal-440gp", 
"ibm,mcmal";
+   dcr-reg = <180 62>;
+   num-tx-chans = <4>;
+   num-rx-chans = <2>;
+   interrupt-parent = <&MAL0>;
+   interrupts = <0 1 2 3 4>;
+   #interrupt-cells = <1>;
+   #address-cells = <0>;
+   #size-cells = <0>;
+   interrupt-map = ;
+   };
+
+   POB0: opb {
+   compatible = "ibm,opb-440ep", "ibm,opb-440gp", 
"ibm,opb";
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges = < 0  8000
+ 8000 0 8000 8000>;
+   interrupt-parent = <&UIC1>;
+   interrupts = <7 4>;
+   clock-frequency = <0>; /* Filled in by zImage */
+
+   EBC0: ebc {
+   compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", 
"ibm,ebc";
+   dcr-reg = <012 2>;
+   #address-cells = <2>;
+   #size-cells = <1>;
+   clock-frequency = <0>; /* Filled in by zImage */
+   interrupts = <5 1>;
+   interrupt-parent