Skip to content

Commit

Permalink
ARM: dts: am4372: add minimal l4 bus layout with control module support
Browse files Browse the repository at this point in the history
This patch creates an l4_wkup interconnect for AM43xx, and moves some of
the generic peripherals under it. System control module nodes are moved
under this new interconnect also, and the SCM clock layout is changed
to use the renamed SCM nodea as the clock provider.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
  • Loading branch information
Tero Kristo committed Mar 31, 2015
1 parent d7eaf3c commit 83a5d6c
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 39 deletions.
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/arm/omap/l4.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Required properties:
Should be "ti,omap2-l4-wkup" for OMAP2 family l4 wkup bus
Should be "ti,omap3-l4-core" for OMAP3 family l4 core bus
Should be "ti,am3-l4-wkup" for AM33xx family l4 wkup bus
Should be "ti,am4-l4-wkup" for AM43xx family l4 wkup bus
- ranges : contains the IO map range for the bus

Examples:
Expand Down
2 changes: 1 addition & 1 deletion Documentation/devicetree/bindings/arm/omap/prcm.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Required properties:
"ti,am3-prcm"
"ti,am3-scm"
"ti,am4-prcm"
"ti,am4-scrm"
"ti,am4-scm"
"ti,omap2-prcm"
"ti,omap2-scm"
"ti,omap3-prm"
Expand Down
85 changes: 49 additions & 36 deletions arch/arm/boot/dts/am4372.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -57,22 +57,6 @@
cache-level = <2>;
};

am43xx_control_module: control_module@4a002000 {
compatible = "syscon";
reg = <0x44e10000 0x7f4>;
};

am43xx_pinmux: pinmux@44e10800 {
compatible = "ti,am437-padconf", "pinctrl-single";
reg = <0x44e10800 0x31c>;
#address-cells = <1>;
#size-cells = <0>;
#interrupt-cells = <1>;
interrupt-controller;
pinctrl-single,register-width = <32>;
pinctrl-single,function-mask = <0xffffffff>;
};

ocp {
compatible = "ti,am4372-l3-noc", "simple-bus";
#address-cells = <1>;
Expand All @@ -84,29 +68,58 @@
interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;

prcm: prcm@44df0000 {
compatible = "ti,am4-prcm";
reg = <0x44df0000 0x11000>;

prcm_clocks: clocks {
#address-cells = <1>;
#size-cells = <0>;
};
l4_wkup: l4_wkup@44c00000 {
compatible = "ti,am4-l4-wkup", "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x44c00000 0x287000>;

prcm_clockdomains: clockdomains {
};
};
prcm: prcm@1f0000 {
compatible = "ti,am4-prcm";
reg = <0x1f0000 0x11000>;

scrm: scrm@44e10000 {
compatible = "ti,am4-scrm";
reg = <0x44e10000 0x2000>;
prcm_clocks: clocks {
#address-cells = <1>;
#size-cells = <0>;
};

scrm_clocks: clocks {
#address-cells = <1>;
#size-cells = <0>;
prcm_clockdomains: clockdomains {
};
};

scrm_clockdomains: clockdomains {
scm: scm@210000 {
compatible = "ti,am4-scm", "simple-bus";
reg = <0x210000 0x4000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x210000 0x4000>;

am43xx_pinmux: pinmux@800 {
compatible = "ti,am437-padconf",
"pinctrl-single";
reg = <0x800 0x31c>;
#address-cells = <1>;
#size-cells = <0>;
#interrupt-cells = <1>;
interrupt-controller;
pinctrl-single,register-width = <32>;
pinctrl-single,function-mask = <0xffffffff>;
};

scm_conf: scm_conf@0 {
compatible = "syscon";
reg = <0x0 0x800>;
#address-cells = <1>;
#size-cells = <1>;

scm_clocks: clocks {
#address-cells = <1>;
#size-cells = <0>;
};
};

scm_clockdomains: clockdomains {
};
};
};

Expand Down Expand Up @@ -933,7 +946,7 @@
clocks = <&dcan0_fck>;
clock-names = "fck";
reg = <0x481cc000 0x2000>;
syscon-raminit = <&am43xx_control_module 0x644 0>;
syscon-raminit = <&scm_conf 0x644 0>;
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
};
Expand All @@ -944,7 +957,7 @@
clocks = <&dcan1_fck>;
clock-names = "fck";
reg = <0x481d0000 0x2000>;
syscon-raminit = <&am43xx_control_module 0x644 1>;
syscon-raminit = <&scm_conf 0x644 1>;
interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
};
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boot/dts/am43xx-clocks.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
&scrm_clocks {
&scm_clocks {
sys_clkin_ck: sys_clkin_ck {
#clock-cells = <0>;
compatible = "ti,mux-clock";
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-omap2/control.c
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ static const struct control_init_data omap2_ctrl_data = {

static const struct of_device_id omap_scrm_dt_match_table[] = {
{ .compatible = "ti,am3-scm", .data = &ctrl_data },
{ .compatible = "ti,am4-scrm", .data = &ctrl_data },
{ .compatible = "ti,am4-scm", .data = &ctrl_data },
{ .compatible = "ti,omap2-scm", .data = &omap2_ctrl_data },
{ .compatible = "ti,omap3-scm", .data = &omap2_ctrl_data },
{ .compatible = "ti,dm816-scrm", .data = &ctrl_data },
Expand Down

0 comments on commit 83a5d6c

Please sign in to comment.