aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRajendra Nayak <rnayak@ti.com>2013-10-15 03:07:50 -0400
committerBenoit Cousson <bcousson@baylibre.com>2013-10-20 13:16:08 -0400
commitf12ecbe2ea3c01b61e93af815723939a27511abc (patch)
tree09bbb65d1a84c4d3a24b574f7e4f75083171676f
parentd2afcf09e6450e41b8987cf282ffde79c40ab401 (diff)
ARM: dts: omap: Add reset/idle on init bindings for OMAP
On OMAP we have co-processor IPs, memory controllers, GPIOs which control regulators and power switches to PMIC, and SoC internal Bus IPs, some or most of which should either not be reset or idled or both at init. (In some cases there are erratas which prevent an IP from being reset) Have a way to pass this information from DT. Update the am33xx/omap4 and omap5 dtsi files with the new bindings for modules which either should not be idled. reset or both. A later patch would cleanup the same information that exists today as part of the hwmod data files. Signed-off-by: Rajendra Nayak <rnayak@ti.com> Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
-rw-r--r--Documentation/devicetree/bindings/arm/omap/omap.txt3
-rw-r--r--arch/arm/boot/dts/am33xx.dtsi2
-rw-r--r--arch/arm/boot/dts/omap4.dtsi3
-rw-r--r--arch/arm/boot/dts/omap5.dtsi2
4 files changed, 9 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
index 91b7049affa1..808c1543b0f8 100644
--- a/Documentation/devicetree/bindings/arm/omap/omap.txt
+++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
@@ -21,7 +21,8 @@ Required properties:
21Optional properties: 21Optional properties:
22- ti,no_idle_on_suspend: When present, it prevents the PM to idle the module 22- ti,no_idle_on_suspend: When present, it prevents the PM to idle the module
23 during suspend. 23 during suspend.
24 24- ti,no-reset-on-init: When present, the module should not be reset at init
25- ti,no-idle-on-init: When present, the module should not be idled at init
25 26
26Example: 27Example:
27 28
diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
index 7db3c81d1563..58cf5b91a118 100644
--- a/arch/arm/boot/dts/am33xx.dtsi
+++ b/arch/arm/boot/dts/am33xx.dtsi
@@ -674,6 +674,7 @@
674 reg = <0x44d00000 0x4000 /* M3 UMEM */ 674 reg = <0x44d00000 0x4000 /* M3 UMEM */
675 0x44d80000 0x2000>; /* M3 DMEM */ 675 0x44d80000 0x2000>; /* M3 DMEM */
676 ti,hwmods = "wkup_m3"; 676 ti,hwmods = "wkup_m3";
677 ti,no-reset-on-init;
677 }; 678 };
678 679
679 elm: elm@48080000 { 680 elm: elm@48080000 {
@@ -713,6 +714,7 @@
713 gpmc: gpmc@50000000 { 714 gpmc: gpmc@50000000 {
714 compatible = "ti,am3352-gpmc"; 715 compatible = "ti,am3352-gpmc";
715 ti,hwmods = "gpmc"; 716 ti,hwmods = "gpmc";
717 ti,no-idle-on-init;
716 reg = <0x50000000 0x2000>; 718 reg = <0x50000000 0x2000>;
717 interrupts = <100>; 719 interrupts = <100>;
718 gpmc,num-cs = <7>; 720 gpmc,num-cs = <7>;
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
index 6be1f5678f1a..6ca45b0d346b 100644
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -214,6 +214,7 @@
214 gpmc,num-cs = <8>; 214 gpmc,num-cs = <8>;
215 gpmc,num-waitpins = <4>; 215 gpmc,num-waitpins = <4>;
216 ti,hwmods = "gpmc"; 216 ti,hwmods = "gpmc";
217 ti,no-idle-on-init;
217 }; 218 };
218 219
219 uart1: serial@4806a000 { 220 uart1: serial@4806a000 {
@@ -492,6 +493,7 @@
492 reg = <0x4c000000 0x100>; 493 reg = <0x4c000000 0x100>;
493 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 494 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
494 ti,hwmods = "emif1"; 495 ti,hwmods = "emif1";
496 ti,no-idle-on-init;
495 phy-type = <1>; 497 phy-type = <1>;
496 hw-caps-read-idle-ctrl; 498 hw-caps-read-idle-ctrl;
497 hw-caps-ll-interface; 499 hw-caps-ll-interface;
@@ -503,6 +505,7 @@
503 reg = <0x4d000000 0x100>; 505 reg = <0x4d000000 0x100>;
504 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 506 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
505 ti,hwmods = "emif2"; 507 ti,hwmods = "emif2";
508 ti,no-idle-on-init;
506 phy-type = <1>; 509 phy-type = <1>;
507 hw-caps-read-idle-ctrl; 510 hw-caps-read-idle-ctrl;
508 hw-caps-ll-interface; 511 hw-caps-ll-interface;
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
index 6a558cedffd6..f518ec6b6e49 100644
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -606,6 +606,7 @@
606 emif1: emif@4c000000 { 606 emif1: emif@4c000000 {
607 compatible = "ti,emif-4d5"; 607 compatible = "ti,emif-4d5";
608 ti,hwmods = "emif1"; 608 ti,hwmods = "emif1";
609 ti,no-idle-on-init;
609 phy-type = <2>; /* DDR PHY type: Intelli PHY */ 610 phy-type = <2>; /* DDR PHY type: Intelli PHY */
610 reg = <0x4c000000 0x400>; 611 reg = <0x4c000000 0x400>;
611 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 612 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
@@ -617,6 +618,7 @@
617 emif2: emif@4d000000 { 618 emif2: emif@4d000000 {
618 compatible = "ti,emif-4d5"; 619 compatible = "ti,emif-4d5";
619 ti,hwmods = "emif2"; 620 ti,hwmods = "emif2";
621 ti,no-idle-on-init;
620 phy-type = <2>; /* DDR PHY type: Intelli PHY */ 622 phy-type = <2>; /* DDR PHY type: Intelli PHY */
621 reg = <0x4d000000 0x400>; 623 reg = <0x4d000000 0x400>;
622 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 624 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;