ARM: dts: imx7d: move ARM platform peripherals inside soc node
authorStefan Agner <stefan@agner.ch>
Tue, 26 Jul 2016 06:42:35 +0000 (23:42 -0700)
committerShawn Guo <shawnguo@kernel.org>
Mon, 15 Aug 2016 11:46:24 +0000 (19:46 +0800)
Since we have a SoC level node we should make use of it and have
all nodes which are within the SoC, inside that node. This also
saves an extra interrupt-parent properties. While at it, also
order the Coresight nodes according to register addresses.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/imx7d.dtsi
arch/arm/boot/dts/imx7s.dtsi

index 51c13cb..3d77d95 100644 (file)
                };
        };
 
-       etm@3007d000 {
-               compatible = "arm,coresight-etm3x", "arm,primecell";
-               reg = <0x3007d000 0x1000>;
+       soc {
+               etm@3007d000 {
+                       compatible = "arm,coresight-etm3x", "arm,primecell";
+                       reg = <0x3007d000 0x1000>;
 
-               /*
-                * System will hang if added nosmp in kernel command line
-                * without arm,primecell-periphid because amba bus try to
-                * read id and core1 power off at this time.
-                */
-               arm,primecell-periphid = <0xbb956>;
-               cpu = <&cpu1>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
+                       /*
+                        * System will hang if added nosmp in kernel command line
+                        * without arm,primecell-periphid because amba bus try to
+                        * read id and core1 power off at this time.
+                        */
+                       arm,primecell-periphid = <0xbb956>;
+                       cpu = <&cpu1>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-               port {
-                       etm1_out_port: endpoint {
-                               remote-endpoint = <&ca_funnel_in_port1>;
+                       port {
+                               etm1_out_port: endpoint {
+                                       remote-endpoint = <&ca_funnel_in_port1>;
+                               };
                        };
                };
        };
index 1e90bdb..d89587a 100644 (file)
                };
        };
 
-       intc: interrupt-controller@31001000 {
-               compatible = "arm,cortex-a7-gic";
-               #interrupt-cells = <3>;
-               interrupt-controller;
-               reg = <0x31001000 0x1000>,
-                     <0x31002000 0x1000>,
-                     <0x31004000 0x2000>,
-                     <0x31006000 0x2000>;
-       };
-
        ckil: clock-cki {
                compatible = "fixed-clock";
                #clock-cells = <0>;
                clock-output-names = "osc";
        };
 
-       timer {
-               compatible = "arm,armv7-timer";
-               interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-                            <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-                            <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-                            <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
+       soc {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "simple-bus";
                interrupt-parent = <&intc>;
-       };
+               ranges;
 
-       etr@30086000 {
-               compatible = "arm,coresight-tmc", "arm,primecell";
-               reg = <0x30086000 0x1000>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
+               funnel@30041000 {
+                       compatible = "arm,coresight-funnel", "arm,primecell";
+                       reg = <0x30041000 0x1000>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
+
+                       ca_funnel_ports: ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+
+                               /* funnel input ports */
+                               port@0 {
+                                       reg = <0>;
+                                       ca_funnel_in_port0: endpoint {
+                                               slave-mode;
+                                               remote-endpoint = <&etm0_out_port>;
+                                       };
+                               };
+
+                               /* funnel output port */
+                               port@2 {
+                                       reg = <0>;
+                                       ca_funnel_out_port0: endpoint {
+                                               remote-endpoint = <&hugo_funnel_in_port0>;
+                                       };
+                               };
 
-               port {
-                       etr_in_port: endpoint {
-                               slave-mode;
-                               remote-endpoint = <&replicator_out_port1>;
+                               /* the other input ports are not connect to anything */
                        };
                };
-       };
 
-       tpiu@30087000 {
-               compatible = "arm,coresight-tpiu", "arm,primecell";
-               reg = <0x30087000 0x1000>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
+               etm@3007c000 {
+                       compatible = "arm,coresight-etm3x", "arm,primecell";
+                       reg = <0x3007c000 0x1000>;
+                       cpu = <&cpu0>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-               port {
-                       tpiu_in_port: endpoint {
-                               slave-mode;
-                               remote-endpoint = <&replicator_out_port1>;
+                       port {
+                               etm0_out_port: endpoint {
+                                       remote-endpoint = <&ca_funnel_in_port0>;
+                               };
                        };
                };
-       };
 
-       replicator {
-               /*
-                * non-configurable replicators don't show up on the
-                * AMBA bus.  As such no need to add "arm,primecell"
-                */
-               compatible = "arm,coresight-replicator";
+               funnel@30083000 {
+                       compatible = "arm,coresight-funnel", "arm,primecell";
+                       reg = <0x30083000 0x1000>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
+                       ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
 
-                       /* replicator output ports */
-                       port@0 {
-                               reg = <0>;
-                               replicator_out_port0: endpoint {
-                                       remote-endpoint = <&tpiu_in_port>;
+                               /* funnel input ports */
+                               port@0 {
+                                       reg = <0>;
+                                       hugo_funnel_in_port0: endpoint {
+                                               slave-mode;
+                                               remote-endpoint = <&ca_funnel_out_port0>;
+                                       };
                                };
-                       };
 
-                       port@1 {
-                               reg = <1>;
-                               replicator_out_port1: endpoint {
-                                       remote-endpoint = <&etr_in_port>;
+                               port@1 {
+                                       reg = <1>;
+                                       hugo_funnel_in_port1: endpoint {
+                                               slave-mode; /* M4 input */
+                                       };
                                };
-                       };
 
-                       /* replicator input port */
-                       port@2 {
-                               reg = <0>;
-                               replicator_in_port0: endpoint {
-                                       slave-mode;
-                                       remote-endpoint = <&etf_out_port>;
+                               port@2 {
+                                       reg = <0>;
+                                       hugo_funnel_out_port0: endpoint {
+                                               remote-endpoint = <&etf_in_port>;
+                                       };
                                };
+
+                               /* the other input ports are not connect to anything */
                        };
                };
-       };
 
-       etf@30084000 {
-               compatible = "arm,coresight-tmc", "arm,primecell";
-               reg = <0x30084000 0x1000>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
+               etf@30084000 {
+                       compatible = "arm,coresight-tmc", "arm,primecell";
+                       reg = <0x30084000 0x1000>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
+                       ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
 
-                       port@0 {
-                               reg = <0>;
-                               etf_in_port: endpoint {
-                                       slave-mode;
-                                       remote-endpoint = <&hugo_funnel_out_port0>;
+                               port@0 {
+                                       reg = <0>;
+                                       etf_in_port: endpoint {
+                                               slave-mode;
+                                               remote-endpoint = <&hugo_funnel_out_port0>;
+                                       };
                                };
-                       };
 
-                       port@1 {
-                               reg = <0>;
-                               etf_out_port: endpoint {
-                                       remote-endpoint = <&replicator_in_port0>;
+                               port@1 {
+                                       reg = <0>;
+                                       etf_out_port: endpoint {
+                                               remote-endpoint = <&replicator_in_port0>;
+                                       };
                                };
                        };
                };
-       };
 
-       funnel@30083000 {
-               compatible = "arm,coresight-funnel", "arm,primecell";
-               reg = <0x30083000 0x1000>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
-
-               ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
+               etr@30086000 {
+                       compatible = "arm,coresight-tmc", "arm,primecell";
+                       reg = <0x30086000 0x1000>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-                       /* funnel input ports */
-                       port@0 {
-                               reg = <0>;
-                               hugo_funnel_in_port0: endpoint {
+                       port {
+                               etr_in_port: endpoint {
                                        slave-mode;
-                                       remote-endpoint = <&ca_funnel_out_port0>;
+                                       remote-endpoint = <&replicator_out_port1>;
                                };
                        };
+               };
 
-                       port@1 {
-                               reg = <1>;
-                               hugo_funnel_in_port1: endpoint {
-                                       slave-mode; /* M4 input */
-                               };
-                       };
+               tpiu@30087000 {
+                       compatible = "arm,coresight-tpiu", "arm,primecell";
+                       reg = <0x30087000 0x1000>;
+                       clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
+                       clock-names = "apb_pclk";
 
-                       port@2 {
-                               reg = <0>;
-                               hugo_funnel_out_port0: endpoint {
-                                       remote-endpoint = <&etf_in_port>;
+                       port {
+                               tpiu_in_port: endpoint {
+                                       slave-mode;
+                                       remote-endpoint = <&replicator_out_port1>;
                                };
                        };
-
-                       /* the other input ports are not connect to anything */
                };
-       };
 
-       funnel@30041000 {
-               compatible = "arm,coresight-funnel", "arm,primecell";
-               reg = <0x30041000 0x1000>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
+               replicator {
+                       /*
+                        * non-configurable replicators don't show up on the
+                        * AMBA bus.  As such no need to add "arm,primecell"
+                        */
+                       compatible = "arm,coresight-replicator";
 
-               ca_funnel_ports: ports {
-                       #address-cells = <1>;
-                       #size-cells = <0>;
+                       ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
 
-                       /* funnel input ports */
-                       port@0 {
-                               reg = <0>;
-                               ca_funnel_in_port0: endpoint {
-                                       slave-mode;
-                                       remote-endpoint = <&etm0_out_port>;
+                               /* replicator output ports */
+                               port@0 {
+                                       reg = <0>;
+                                       replicator_out_port0: endpoint {
+                                               remote-endpoint = <&tpiu_in_port>;
+                                       };
                                };
-                       };
 
-                       /* funnel output port */
-                       port@2 {
-                               reg = <0>;
-                               ca_funnel_out_port0: endpoint {
-                                       remote-endpoint = <&hugo_funnel_in_port0>;
+                               port@1 {
+                                       reg = <1>;
+                                       replicator_out_port1: endpoint {
+                                               remote-endpoint = <&etr_in_port>;
+                                       };
                                };
-                       };
 
-                       /* the other input ports are not connect to anything */
+                               /* replicator input port */
+                               port@2 {
+                                       reg = <0>;
+                                       replicator_in_port0: endpoint {
+                                               slave-mode;
+                                               remote-endpoint = <&etf_out_port>;
+                                       };
+                               };
+                       };
                };
-       };
 
-       etm@3007c000 {
-               compatible = "arm,coresight-etm3x", "arm,primecell";
-               reg = <0x3007c000 0x1000>;
-               cpu = <&cpu0>;
-               clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>;
-               clock-names = "apb_pclk";
-
-               port {
-                       etm0_out_port: endpoint {
-                               remote-endpoint = <&ca_funnel_in_port0>;
-                       };
+               intc: interrupt-controller@31001000 {
+                       compatible = "arm,cortex-a7-gic";
+                       #interrupt-cells = <3>;
+                       interrupt-controller;
+                       reg = <0x31001000 0x1000>,
+                             <0x31002000 0x1000>,
+                             <0x31004000 0x2000>,
+                             <0x31006000 0x2000>;
                };
-       };
 
-       soc {
-               #address-cells = <1>;
-               #size-cells = <1>;
-               compatible = "simple-bus";
-               interrupt-parent = <&intc>;
-               ranges;
+               timer {
+                       compatible = "arm,armv7-timer";
+                       interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+                                    <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+                                    <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+                                    <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
+               };
 
                aips1: aips-bus@30000000 {
                        compatible = "fsl,aips-bus", "simple-bus";