[V2,2/3] arm/dt: add very basic dts file for babbage board

Message ID 1299503160-9910-3-git-send-email-jason.hui@linaro.org
State New
Headers show

Commit Message

Jason Hui March 7, 2011, 1:05 p.m.
Signed-off-by: Jason Liu <r64343@freescale.com>
Singed-off-by: Rob Herring <robherring2@gmail.com>
---
 arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 110 insertions(+), 0 deletions(-)

Comments

Shawn Guo March 7, 2011, 1:44 p.m. | #1
Hi Jason,

On Mon, Mar 07, 2011 at 09:05:59PM +0800, Jason Liu wrote:
> Signed-off-by: Jason Liu <r64343@freescale.com>
> Singed-off-by: Rob Herring <robherring2@gmail.com>
> ---
>  arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 110 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/babbage.dts b/arch/arm/boot/dts/babbage.dts
> new file mode 100644
> index 0000000..46a3071
> --- /dev/null
> +++ b/arch/arm/boot/dts/babbage.dts
> @@ -0,0 +1,110 @@
> +/dts-v1/;
> +
> +/ {
> +	model = "Freescale i.MX51 Babbage";
> +	compatible = "fsl,mx51-babbage";
> +	#address-cells = <0x1>;
> +	#size-cells = <0x1>;
> +	#interrupt-cells = <0x1>;
> +	interrupt-parent = <&tzic>;
> +
> +	memory {
> +		reg = <0x90000000 0x20000000>;
> +	};
> +
> +	chosen {
> +		bootargs = "console=ttymxc1,115200n8 debug earlyprintk";

So you do not fix it.  You still put ttymxc1 here while ttymxc0 port
is being used.

> +	};
> +
Shawn Guo March 7, 2011, 2:51 p.m. | #2
Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
seems that v2 is identical to v1, except adding Rob Herring sign-off.

On Mon, Mar 07, 2011 at 09:05:59PM +0800, Jason Liu wrote:
> Signed-off-by: Jason Liu <r64343@freescale.com>
> Singed-off-by: Rob Herring <robherring2@gmail.com>
> ---
>  arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 110 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/babbage.dts b/arch/arm/boot/dts/babbage.dts
> new file mode 100644
> index 0000000..46a3071
> --- /dev/null
> +++ b/arch/arm/boot/dts/babbage.dts
> @@ -0,0 +1,110 @@
> +/dts-v1/;
> +
> +/ {
> +	model = "Freescale i.MX51 Babbage";
> +	compatible = "fsl,mx51-babbage";
> +	#address-cells = <0x1>;
> +	#size-cells = <0x1>;
> +	#interrupt-cells = <0x1>;
> +	interrupt-parent = <&tzic>;
> +
> +	memory {
> +		reg = <0x90000000 0x20000000>;
> +	};
> +
> +	chosen {
> +		bootargs = "console=ttymxc1,115200n8 debug earlyprintk";
> +	};
> +
> +	soc {
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		compatible = "simple-bus";
> +		ranges;
> +
> +		tzic: tzic@0 {
> +			#address-cells = <0>;
> +			#interrupt-cells = <1>;
> +			interrupt-controller;
> +			reg = <0xe0000000 0x1000>;
> +			compatible = "fsl,imx51-tzic";
> +		};
> +	};
> +
> +	clocks {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		uart0_clk: uart@0 {
> +			compatible = "clock";
> +			clock-outputs = "imx-uart.0";
> +		};
> +
> +		uart1_clk: uart@1 {
> +			compatible = "clock";
> +			clock-outputs = "imx-uart.1";
> +		};
> +
> +		uart2_clk: uart@2 {
> +			compatible = "clock";
> +			clock-outputs = "imx-uart.2";
> +		};
> +
> +		fec_clk: fec@0 {
> +			compatible = "clock";
> +			clock-outputs = "fec.0";
> +		};
> +	};
> +
> +	spba@70000000 {
> +		#address-cells = <0x1>;
> +		#size-cells = <0x1>;
> +		compatible = "simple-bus";
> +		ranges = <0x0 0x70000000 0x100000>;
> +
> +		imx-uart@c000 {
> +			compatible = "imx-uart";
> +			reg = <0xc000 0x1000>;
> +			interrupts = <0x21>;
> +			rts-cts;
> +			uart-clock = <&uart2_clk>, "uart";
> +		};
> +	};
> +
> +	aips@73f00000 {
> +		#address-cells = <0x1>;
> +		#size-cells = <0x1>;
> +		compatible = "simple-bus";
> +		ranges = <0x0 0x73f00000 0x100000>;
> +
> +		imx-uart@bc000 {
> +			compatible = "imx-uart";
> +			reg = <0xbc000 0x1000>;
> +			interrupts = <0x1f>;
> +			rts-cts;
> +			uart-clock = <&uart0_clk>, "uart";
> +		};
> +
> +		imx-uart@c0000 {
> +			compatible = "imx-uart";
> +			reg = <0xc0000 0x1000>;
> +			interrupts = <0x20>;
> +			rts-cts;
> +			uart-clock = <&uart1_clk>, "uart";
> +		};
> +	};
> +
> +	aips@83f00000 {
> +		#address-cells = <0x1>;
> +		#size-cells = <0x1>;
> +		compatible = "simple-bus";
> +		ranges = <0x0 0x83f00000 0x100000>;
> +
> +		fec@ec000 {
> +			compatible = "fec";
> +			reg = <0xec000 0x1000>;
> +			interrupts = <0x57>;
> +			fec_clk-clock = <&fec_clk>, "fec";
> +		};
> +	};
> +};
> -- 
> 1.7.0.4
> 
> 
> _______________________________________________
> linaro-dev mailing list
> linaro-dev@lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/linaro-dev
>
Jason Hui March 8, 2011, 2:20 a.m. | #3
Hi, Shawn,

On Mon, Mar 7, 2011 at 10:51 PM, Shawn Guo <shawn.guo@freescale.com> wrote:
> Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
> seems that v2 is identical to v1, except adding Rob Herring sign-off.

Please compare with v1 and say it once again, It should include the
grant and your comments except the mxctty1
due to I think that it's not one issue, So, I did not take your comments.

But I observed that some comments as Grant suggest to use decimal not
hex value for #address-cells and #size-cells,
not applied to this file globally, I will fix it in the V3 patch if need.

>
> On Mon, Mar 07, 2011 at 09:05:59PM +0800, Jason Liu wrote:
>> Signed-off-by: Jason Liu <r64343@freescale.com>
>> Singed-off-by: Rob Herring <robherring2@gmail.com>
>> ---
>>  arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
>>  1 files changed, 110 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/boot/dts/babbage.dts b/arch/arm/boot/dts/babbage.dts
>> new file mode 100644
>> index 0000000..46a3071
>> --- /dev/null
>> +++ b/arch/arm/boot/dts/babbage.dts
>> @@ -0,0 +1,110 @@
>> +/dts-v1/;
>> +
>> +/ {
>> +     model = "Freescale i.MX51 Babbage";
>> +     compatible = "fsl,mx51-babbage";
>> +     #address-cells = <0x1>;
>> +     #size-cells = <0x1>;
>> +     #interrupt-cells = <0x1>;
>> +     interrupt-parent = <&tzic>;
>> +
>> +     memory {
>> +             reg = <0x90000000 0x20000000>;
>> +     };
>> +
>> +     chosen {
>> +             bootargs = "console=ttymxc1,115200n8 debug earlyprintk";
>> +     };
>> +
>> +     soc {
>> +             #address-cells = <1>;
>> +             #size-cells = <1>;
>> +             compatible = "simple-bus";
>> +             ranges;
>> +
>> +             tzic: tzic@0 {
>> +                     #address-cells = <0>;
>> +                     #interrupt-cells = <1>;
>> +                     interrupt-controller;
>> +                     reg = <0xe0000000 0x1000>;
>> +                     compatible = "fsl,imx51-tzic";
>> +             };
>> +     };
>> +
>> +     clocks {
>> +             #address-cells = <1>;
>> +             #size-cells = <0>;
>> +
>> +             uart0_clk: uart@0 {
>> +                     compatible = "clock";
>> +                     clock-outputs = "imx-uart.0";
>> +             };
>> +
>> +             uart1_clk: uart@1 {
>> +                     compatible = "clock";
>> +                     clock-outputs = "imx-uart.1";
>> +             };
>> +
>> +             uart2_clk: uart@2 {
>> +                     compatible = "clock";
>> +                     clock-outputs = "imx-uart.2";
>> +             };
>> +
>> +             fec_clk: fec@0 {
>> +                     compatible = "clock";
>> +                     clock-outputs = "fec.0";
>> +             };
>> +     };
>> +
>> +     spba@70000000 {
>> +             #address-cells = <0x1>;
>> +             #size-cells = <0x1>;
>> +             compatible = "simple-bus";
>> +             ranges = <0x0 0x70000000 0x100000>;
>> +
>> +             imx-uart@c000 {
>> +                     compatible = "imx-uart";
>> +                     reg = <0xc000 0x1000>;
>> +                     interrupts = <0x21>;
>> +                     rts-cts;
>> +                     uart-clock = <&uart2_clk>, "uart";
>> +             };
>> +     };
>> +
>> +     aips@73f00000 {
>> +             #address-cells = <0x1>;
>> +             #size-cells = <0x1>;
>> +             compatible = "simple-bus";
>> +             ranges = <0x0 0x73f00000 0x100000>;
>> +
>> +             imx-uart@bc000 {
>> +                     compatible = "imx-uart";
>> +                     reg = <0xbc000 0x1000>;
>> +                     interrupts = <0x1f>;
>> +                     rts-cts;
>> +                     uart-clock = <&uart0_clk>, "uart";
>> +             };
>> +
>> +             imx-uart@c0000 {
>> +                     compatible = "imx-uart";
>> +                     reg = <0xc0000 0x1000>;
>> +                     interrupts = <0x20>;
>> +                     rts-cts;
>> +                     uart-clock = <&uart1_clk>, "uart";
>> +             };
>> +     };
>> +
>> +     aips@83f00000 {
>> +             #address-cells = <0x1>;
>> +             #size-cells = <0x1>;
>> +             compatible = "simple-bus";
>> +             ranges = <0x0 0x83f00000 0x100000>;
>> +
>> +             fec@ec000 {
>> +                     compatible = "fec";
>> +                     reg = <0xec000 0x1000>;
>> +                     interrupts = <0x57>;
>> +                     fec_clk-clock = <&fec_clk>, "fec";
>> +             };
>> +     };
>> +};
>> --
>> 1.7.0.4
>>
>>
>> _______________________________________________
>> linaro-dev mailing list
>> linaro-dev@lists.linaro.org
>> http://lists.linaro.org/mailman/listinfo/linaro-dev
>>
>
> --
> Regards,
> Shawn
>
>
Shawn Guo March 8, 2011, 3:11 a.m. | #4
On Tue, Mar 08, 2011 at 10:20:33AM +0800, Jason Hui wrote:
> Hi, Shawn,
> 
> On Mon, Mar 7, 2011 at 10:51 PM, Shawn Guo <shawn.guo@freescale.com> wrote:
> > Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
> > seems that v2 is identical to v1, except adding Rob Herring sign-off.
> 
> Please compare with v1 and say it once again, It should include the

Oops!  Sorry, I messed up with my local branches last night, probably
because it was late :)

> grant and your comments except the mxctty1
> due to I think that it's not one issue, So, I did not take your comments.
> 
I still think it's an issue that the dt kernel needs a different
console cmdline from the non-dt one.

> But I observed that some comments as Grant suggest to use decimal not
> hex value for #address-cells and #size-cells,
> not applied to this file globally, I will fix it in the V3 patch if need.
> 
> >
> > On Mon, Mar 07, 2011 at 09:05:59PM +0800, Jason Liu wrote:
> >> Signed-off-by: Jason Liu <r64343@freescale.com>
> >> Singed-off-by: Rob Herring <robherring2@gmail.com>
> >> ---
> >>  arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
> >>  1 files changed, 110 insertions(+), 0 deletions(-)
Jason Hui March 8, 2011, 3:31 a.m. | #5
Hi, Shawn,

On Tue, Mar 8, 2011 at 11:11 AM, Shawn Guo <shawn.guo@freescale.com> wrote:
> On Tue, Mar 08, 2011 at 10:20:33AM +0800, Jason Hui wrote:
>> Hi, Shawn,
>>
>> On Mon, Mar 7, 2011 at 10:51 PM, Shawn Guo <shawn.guo@freescale.com> wrote:
>> > Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
>> > seems that v2 is identical to v1, except adding Rob Herring sign-off.
>>
>> Please compare with v1 and say it once again, It should include the
>
> Oops!  Sorry, I messed up with my local branches last night, probably
> because it was late :)
>
>> grant and your comments except the mxctty1
>> due to I think that it's not one issue, So, I did not take your comments.
>>
> I still think it's an issue that the dt kernel needs a different
> console cmdline from the non-dt one.

In fact, this is user defined, I think But why we need mxctty1 in dt
here, the reason is that,

uart3 will be probed first and then uart0, uart1, which lead to
mxctty0 ---> uart3,

mxctty1---> uart0 and mxctty2 --->uart1.

The debug uart of mx51 babbage board is uart0, so we need define
mxctty1 in the kernel command line.

We can put spba@70000000 at the back of aips@73f00000, but it will
make the memory address not sorted
from lower to higher.


spba@70000000 {
                #address-cells = <1>;
                #size-cells = <1>;
                compatible = "simple-bus";
                ranges = <0x0 0x70000000 0x100000>;

                imx-uart@c000 {
                        compatible = "fsl,imx51-uart";
                        reg = <0xc000 0x1000>;
                        interrupts = <0x21>;
                        rts-cts;
                        uart-clock = <&uart2_clk>, "uart";
                };
        };

        aips@73f00000 {
                #address-cells = <1>;
                #size-cells = <1>;
                compatible = "simple-bus";
                ranges = <0x0 0x73f00000 0x100000>;

                imx-uart@bc000 {
                        compatible = "fsl,imx51-uart";
                        reg = <0xbc000 0x1000>;
                        interrupts = <0x1f>;
                        fsl,has-rts-cts;
                        uart-clock = <&uart0_clk>, "uart";
                };

                imx-uart@c0000 {
                        compatible = "imx-uart";
                        reg = <0xc0000 0x1000>;
                        interrupts = <0x20>;
                        fsl,has-rts-cts;
                        uart-clock = <&uart1_clk>, "uart";
                };


>
>> But I observed that some comments as Grant suggest to use decimal not
>> hex value for #address-cells and #size-cells,
>> not applied to this file globally, I will fix it in the V3 patch if need.
>>
>> >
>> > On Mon, Mar 07, 2011 at 09:05:59PM +0800, Jason Liu wrote:
>> >> Signed-off-by: Jason Liu <r64343@freescale.com>
>> >> Singed-off-by: Rob Herring <robherring2@gmail.com>
>> >> ---
>> >>  arch/arm/boot/dts/babbage.dts |  110 +++++++++++++++++++++++++++++++++++++++++
>> >>  1 files changed, 110 insertions(+), 0 deletions(-)
>
> --
> Regards,
> Shawn
>
>
Shawn Guo March 8, 2011, 3:46 a.m. | #6
On Tue, Mar 08, 2011 at 11:31:07AM +0800, Jason Hui wrote:
> Hi, Shawn,
> 
> On Tue, Mar 8, 2011 at 11:11 AM, Shawn Guo <shawn.guo@freescale.com> wrote:
> > On Tue, Mar 08, 2011 at 10:20:33AM +0800, Jason Hui wrote:
> >> Hi, Shawn,
> >>
> >> On Mon, Mar 7, 2011 at 10:51 PM, Shawn Guo <shawn.guo@freescale.com> wrote:
> >> > Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
> >> > seems that v2 is identical to v1, except adding Rob Herring sign-off.
> >>
> >> Please compare with v1 and say it once again, It should include the
> >
> > Oops!  Sorry, I messed up with my local branches last night, probably
> > because it was late :)
> >
> >> grant and your comments except the mxctty1
> >> due to I think that it's not one issue, So, I did not take your comments.
> >>
> > I still think it's an issue that the dt kernel needs a different
> > console cmdline from the non-dt one.
> 
> In fact, this is user defined, I think But why we need mxctty1 in dt
> here, the reason is that,
> 
> uart3 will be probed first and then uart0, uart1, which lead to
> mxctty0 ---> uart3,
> 
> mxctty1---> uart0 and mxctty2 --->uart1.
> 
> The debug uart of mx51 babbage board is uart0, so we need define
> mxctty1 in the kernel command line.
> 
> We can put spba@70000000 at the back of aips@73f00000, but it will
> make the memory address not sorted
> from lower to higher.
> 
> 
> spba@70000000 {
>                 #address-cells = <1>;
>                 #size-cells = <1>;
>                 compatible = "simple-bus";
>                 ranges = <0x0 0x70000000 0x100000>;
> 
>                 imx-uart@c000 {
>                         compatible = "fsl,imx51-uart";
>                         reg = <0xc000 0x1000>;
>                         interrupts = <0x21>;
>                         rts-cts;
>                         uart-clock = <&uart2_clk>, "uart";
>                 };
>         };
> 
>         aips@73f00000 {
>                 #address-cells = <1>;
>                 #size-cells = <1>;
>                 compatible = "simple-bus";
>                 ranges = <0x0 0x73f00000 0x100000>;
> 
>                 imx-uart@bc000 {
>                         compatible = "fsl,imx51-uart";
>                         reg = <0xbc000 0x1000>;
>                         interrupts = <0x1f>;
>                         fsl,has-rts-cts;
>                         uart-clock = <&uart0_clk>, "uart";
>                 };
> 
>                 imx-uart@c0000 {
>                         compatible = "imx-uart";
>                         reg = <0xc0000 0x1000>;
>                         interrupts = <0x20>;
>                         fsl,has-rts-cts;
>                         uart-clock = <&uart1_clk>, "uart";
>                 };
> 
> 
So we probably need one more number in 'reg' to tell the port id?
Grant Likely March 15, 2011, 6:55 a.m. | #7
On Tue, Mar 08, 2011 at 11:46:47AM +0800, Shawn Guo wrote:
> On Tue, Mar 08, 2011 at 11:31:07AM +0800, Jason Hui wrote:
> > Hi, Shawn,
> > 
> > On Tue, Mar 8, 2011 at 11:11 AM, Shawn Guo <shawn.guo@freescale.com> wrote:
> > > On Tue, Mar 08, 2011 at 10:20:33AM +0800, Jason Hui wrote:
> > >> Hi, Shawn,
> > >>
> > >> On Mon, Mar 7, 2011 at 10:51 PM, Shawn Guo <shawn.guo@freescale.com> wrote:
> > >> > Aha, Jason.  Grant and I put many comments on v1 of this patch, but it
> > >> > seems that v2 is identical to v1, except adding Rob Herring sign-off.
> > >>
> > >> Please compare with v1 and say it once again, It should include the
> > >
> > > Oops!  Sorry, I messed up with my local branches last night, probably
> > > because it was late :)
> > >
> > >> grant and your comments except the mxctty1
> > >> due to I think that it's not one issue, So, I did not take your comments.
> > >>
> > > I still think it's an issue that the dt kernel needs a different
> > > console cmdline from the non-dt one.
> > 
> > In fact, this is user defined, I think But why we need mxctty1 in dt
> > here, the reason is that,
> > 
> > uart3 will be probed first and then uart0, uart1, which lead to
> > mxctty0 ---> uart3,
> > 
> > mxctty1---> uart0 and mxctty2 --->uart1.
> > 
> > The debug uart of mx51 babbage board is uart0, so we need define
> > mxctty1 in the kernel command line.
> > 
> > We can put spba@70000000 at the back of aips@73f00000, but it will
> > make the memory address not sorted
> > from lower to higher.
> > 
> So we probably need one more number in 'reg' to tell the port id?

As discussed in my other reply; it is a bad idea to try and encoded
the port id into a device node.  Use /aliases instead.

g.

Patch

diff --git a/arch/arm/boot/dts/babbage.dts b/arch/arm/boot/dts/babbage.dts
new file mode 100644
index 0000000..46a3071
--- /dev/null
+++ b/arch/arm/boot/dts/babbage.dts
@@ -0,0 +1,110 @@ 
+/dts-v1/;
+
+/ {
+	model = "Freescale i.MX51 Babbage";
+	compatible = "fsl,mx51-babbage";
+	#address-cells = <0x1>;
+	#size-cells = <0x1>;
+	#interrupt-cells = <0x1>;
+	interrupt-parent = <&tzic>;
+
+	memory {
+		reg = <0x90000000 0x20000000>;
+	};
+
+	chosen {
+		bootargs = "console=ttymxc1,115200n8 debug earlyprintk";
+	};
+
+	soc {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		compatible = "simple-bus";
+		ranges;
+
+		tzic: tzic@0 {
+			#address-cells = <0>;
+			#interrupt-cells = <1>;
+			interrupt-controller;
+			reg = <0xe0000000 0x1000>;
+			compatible = "fsl,imx51-tzic";
+		};
+	};
+
+	clocks {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		uart0_clk: uart@0 {
+			compatible = "clock";
+			clock-outputs = "imx-uart.0";
+		};
+
+		uart1_clk: uart@1 {
+			compatible = "clock";
+			clock-outputs = "imx-uart.1";
+		};
+
+		uart2_clk: uart@2 {
+			compatible = "clock";
+			clock-outputs = "imx-uart.2";
+		};
+
+		fec_clk: fec@0 {
+			compatible = "clock";
+			clock-outputs = "fec.0";
+		};
+	};
+
+	spba@70000000 {
+		#address-cells = <0x1>;
+		#size-cells = <0x1>;
+		compatible = "simple-bus";
+		ranges = <0x0 0x70000000 0x100000>;
+
+		imx-uart@c000 {
+			compatible = "imx-uart";
+			reg = <0xc000 0x1000>;
+			interrupts = <0x21>;
+			rts-cts;
+			uart-clock = <&uart2_clk>, "uart";
+		};
+	};
+
+	aips@73f00000 {
+		#address-cells = <0x1>;
+		#size-cells = <0x1>;
+		compatible = "simple-bus";
+		ranges = <0x0 0x73f00000 0x100000>;
+
+		imx-uart@bc000 {
+			compatible = "imx-uart";
+			reg = <0xbc000 0x1000>;
+			interrupts = <0x1f>;
+			rts-cts;
+			uart-clock = <&uart0_clk>, "uart";
+		};
+
+		imx-uart@c0000 {
+			compatible = "imx-uart";
+			reg = <0xc0000 0x1000>;
+			interrupts = <0x20>;
+			rts-cts;
+			uart-clock = <&uart1_clk>, "uart";
+		};
+	};
+
+	aips@83f00000 {
+		#address-cells = <0x1>;
+		#size-cells = <0x1>;
+		compatible = "simple-bus";
+		ranges = <0x0 0x83f00000 0x100000>;
+
+		fec@ec000 {
+			compatible = "fec";
+			reg = <0xec000 0x1000>;
+			interrupts = <0x57>;
+			fec_clk-clock = <&fec_clk>, "fec";
+		};
+	};
+};