Hi, Shawn,
On Fri, Mar 11, 2011 at 2:56 PM, Shawn Guo shawn.guo@freescale.com wrote:
Hi Jason,
On Thu, Mar 10, 2011 at 12:59:42PM +0800, Jason Liu wrote:
Signed-off-by: Jason Liu jason.hui@linaro.org Signed-off-by: Jason Liu r64343@freescale.com Singed-off-by: Rob Herring robherring2@gmail.com
arch/arm/boot/dts/babbage.dts | 122 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 122 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..ab87a1b --- /dev/null +++ b/arch/arm/boot/dts/babbage.dts @@ -0,0 +1,122 @@ +/*
- Copyright 2011 Linaro Ltd.
- Copyright 2011 Freescale Semiconductor, Inc.
- The code contained herein is licensed under the GNU General Public
- License. You may obtain a copy of the GNU General Public License
- Version 2 or later at the following locations:
- */
+/dts-v1/;
+/ {
- model = "Freescale i.MX51 Babbage";
- compatible = "fsl,mx51-babbage";
- #address-cells = <1>;
- #size-cells = <1>;
- #interrupt-cells = <1>;
- interrupt-parent = <&tzic>;
- memory {
- reg = <0x90000000 0x20000000>;
- };
- chosen {
- bootargs = "console=ttymxc0,115200n8 debug earlyprintk ip=dhcp";
- };
- soc {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "simple-bus";
- ranges;
- tzic: tz-interrupt-controller {
- #address-cells = <0>;
- #interrupt-cells = <1>;
- interrupt-controller;
- reg = <0xe0000000 0x1000>;
- compatible = "fsl,imx51-tzic";
- };
- };
- clocks {
- #address-cells = <1>;
- #size-cells = <0>;
- uart0_clk: uart0 {
- compatible = "clock";
- clock-outputs = "imx-uart.0";
- };
- uart1_clk: uart1 {
- compatible = "clock";
- clock-outputs = "imx-uart.1";
- };
- uart2_clk: uart2 {
- compatible = "clock";
- clock-outputs = "imx-uart.2";
- };
- fec_clk: fec {
- compatible = "clock";
- clock-outputs = "fec.0";
- };
- };
- 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 = "fsl,imx51-uart";
- reg = <0xc0000 0x1000>;
- interrupts = <0x20>;
- fsl,has-rts-cts;
- uart-clock = <&uart1_clk>, "uart";
- };
- };
- 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>;
- fsl,has-rts-cts;
- uart-clock = <&uart2_clk>, "uart";
- };
- };
Moving spba@70000000 section after aips@73f00000 seems a quick fix to get console=ttymxc0, but not a right fix to me.
I do not find a real example on mx51, but let's make one, saying there are two instance of one IP block, xyz1 and xyz2, and xyz1 is on bus spba@70000000) while xyz2 is on bus apis@73f00000. Your fix is broken here, as you need to put spba@70000000 after aips@73f00000 for uart driver, while xyz driver requires spba@70000000 stays before aips@73f00000.
No, I don't think so. Where the section is put is not one strict rule, take a look at powerpc dts file, you will see that.
Also this quick fix is working for uart, but will not for some others, for example, eCSPI and SSI, which requires spba@70000000 even behind aips@83f00000 with your solution.
I don't see what's wrong with eCSPI and SSI when put spba behind aips just like uart. I will not take your comments.
BR, Jason