linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms
@ 2017-01-12  1:48 Suman Anna
  2017-01-12  1:48 ` [PATCH v2 1/5] ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER Suman Anna
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Santosh,

This is a slightly updated patch series for the reset controller nodes for
TI Keystone2 SoCs. The only change is to rename the reset controller nodes
from "psc-reset-controller" to just "reset-controller" following Rob Herring's
comment on the Documentation update patch [1]. There are no changes to the first
2 patches. I have already posted a v2 for the Documentation update as well.
Please pick this up instead of the v1 series [2].

regards
Suman

[1] https://www.spinics.net/lists/arm-kernel/msg553646.html
[2] https://www.spinics.net/lists/arm-kernel/msg552911.html


Suman Anna (5):
  ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER
  ARM: dts: keystone: Add PSC node
  ARM: dts: keystone-k2hk: Add PSC reset controller node
  ARM: dts: keystone-k2l: Add PSC reset controller node
  ARM: dts: keystone-k2e: Add PSC reset controller node

 arch/arm/boot/dts/keystone-k2e.dtsi  | 13 +++++++++++++
 arch/arm/boot/dts/keystone-k2hk.dtsi | 20 ++++++++++++++++++++
 arch/arm/boot/dts/keystone-k2l.dtsi  | 16 ++++++++++++++++
 arch/arm/boot/dts/keystone.dtsi      |  5 +++++
 arch/arm/mach-keystone/Kconfig       |  1 +
 5 files changed, 55 insertions(+)

-- 
2.10.2

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v2 1/5] ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
@ 2017-01-12  1:48 ` Suman Anna
  2017-01-12  1:48 ` [PATCH v2 2/5] ARM: dts: keystone: Add PSC node Suman Anna
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

The Keystone 2 family of SoCs will use various Reset Controller
drivers for managing the resets of remote processor devices like
DSPs on the SoC, so select the ARCH_HAS_RESET_CONTROLLER option
by default to enable the Reset framework.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
---
v2: No changes

 arch/arm/mach-keystone/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig
index 24bd64dabdfc..554357035f30 100644
--- a/arch/arm/mach-keystone/Kconfig
+++ b/arch/arm/mach-keystone/Kconfig
@@ -4,6 +4,7 @@ config ARCH_KEYSTONE
 	select ARM_GIC
 	select HAVE_ARM_ARCH_TIMER
 	select KEYSTONE_TIMER
+	select ARCH_HAS_RESET_CONTROLLER
 	select ARM_ERRATA_798181 if SMP
 	select COMMON_CLK_KEYSTONE
 	select ARCH_SUPPORTS_BIG_ENDIAN
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 2/5] ARM: dts: keystone: Add PSC node
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
  2017-01-12  1:48 ` [PATCH v2 1/5] ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER Suman Anna
@ 2017-01-12  1:48 ` Suman Anna
  2017-01-12  1:48 ` [PATCH v2 3/5] ARM: dts: keystone-k2hk: Add PSC reset controller node Suman Anna
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

The Power Sleep Controller (PSC) module is responsible
for the power and clock management for each of the peripherals
present on the SoC. Represent this as a syscon node so that
multiple users can leverage it for various functionalities.

Signed-off-by: Suman Anna <s-anna@ti.com>
[afd at ti.com: add simple-mfd compatible]
Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
---
v2: No changes

 arch/arm/boot/dts/keystone.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/keystone.dtsi b/arch/arm/boot/dts/keystone.dtsi
index 02708ba2d4f4..ec203d0a673d 100644
--- a/arch/arm/boot/dts/keystone.dtsi
+++ b/arch/arm/boot/dts/keystone.dtsi
@@ -83,6 +83,11 @@
 			reg = <0x02310000 0x200>;
 		};
 
+		psc: power-sleep-controller at 02350000 {
+			compatible = "syscon", "simple-mfd";
+			reg = <0x02350000 0x1000>;
+		};
+
 		devctrl: device-state-control at 02620000 {
 			compatible = "ti,keystone-devctrl", "syscon";
 			reg = <0x02620000 0x1000>;
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 3/5] ARM: dts: keystone-k2hk: Add PSC reset controller node
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
  2017-01-12  1:48 ` [PATCH v2 1/5] ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER Suman Anna
  2017-01-12  1:48 ` [PATCH v2 2/5] ARM: dts: keystone: Add PSC node Suman Anna
@ 2017-01-12  1:48 ` Suman Anna
  2017-01-12  1:48 ` [PATCH v2 4/5] ARM: dts: keystone-k2l: " Suman Anna
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

The Power Sleep Controller (PSC) module contains specific
memory-mapped registers that can be used to perform reset
management using specific bits for the DSPs available on the
SoC. The PSC is defined using a syscon node, and the reset
functionality is defined using a child syscon reset controller
node.

Add this syscon reset controller node as well as the reset
control data for the resets it supports for the 66AK2H SoCs.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
---
v2: change reset node name from psc-reset-controller to reset-controller

 arch/arm/boot/dts/keystone-k2hk.dtsi | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2hk.dtsi b/arch/arm/boot/dts/keystone-k2hk.dtsi
index e0780f111537..69d449430511 100644
--- a/arch/arm/boot/dts/keystone-k2hk.dtsi
+++ b/arch/arm/boot/dts/keystone-k2hk.dtsi
@@ -8,6 +8,8 @@
  * published by the Free Software Foundation.
  */
 
+#include <dt-bindings/reset/ti-syscon.h>
+
 / {
 	compatible = "ti,k2hk", "ti,keystone";
 	model = "Texas Instruments Keystone 2 Kepler/Hawking SoC";
@@ -58,6 +60,24 @@
 			};
 		};
 
+		psc: power-sleep-controller at 02350000 {
+			pscrst: reset-controller {
+				compatible = "ti,k2hk-pscrst", "ti,syscon-reset";
+				#reset-cells = <1>;
+
+				ti,reset-bits = <
+					0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
+					0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */
+					0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */
+					0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */
+					0xa4c 8 0xa4c 8 0x84c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 4: dsp4 */
+					0xa50 8 0xa50 8 0x850 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 5: dsp5 */
+					0xa54 8 0xa54 8 0x854 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 6: dsp6 */
+					0xa58 8 0xa58 8 0x858 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 7: dsp7 */
+				>;
+			};
+		};
+
 		dspgpio0: keystone_dsp_gpio at 02620240 {
 			compatible = "ti,keystone-dsp-gpio";
 			gpio-controller;
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 4/5] ARM: dts: keystone-k2l: Add PSC reset controller node
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
                   ` (2 preceding siblings ...)
  2017-01-12  1:48 ` [PATCH v2 3/5] ARM: dts: keystone-k2hk: Add PSC reset controller node Suman Anna
@ 2017-01-12  1:48 ` Suman Anna
  2017-01-12  1:48 ` [PATCH v2 5/5] ARM: dts: keystone-k2e: " Suman Anna
  2017-01-12  2:28 ` [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms santosh.shilimkar at oracle.com
  5 siblings, 0 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

The Power Sleep Controller (PSC) module contains specific
memory-mapped registers that can be used to perform reset
management using specific bits for the DSPs available on the
SoC. The PSC is defined using a syscon node, and the reset
functionality is defined using a child syscon reset controller
node.

Add this syscon reset controller node as well as the reset
control data for the resets it supports for the 66AK2L SoCs.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
---
v2: change reset node name from psc-reset-controller to reset-controller

 arch/arm/boot/dts/keystone-k2l.dtsi | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2l.dtsi b/arch/arm/boot/dts/keystone-k2l.dtsi
index b58015737a35..15392d32c572 100644
--- a/arch/arm/boot/dts/keystone-k2l.dtsi
+++ b/arch/arm/boot/dts/keystone-k2l.dtsi
@@ -8,6 +8,8 @@
  * published by the Free Software Foundation.
  */
 
+#include <dt-bindings/reset/ti-syscon.h>
+
 / {
 	compatible = "ti,k2l", "ti,keystone";
 	model = "Texas Instruments Keystone 2 Lamarr SoC";
@@ -216,6 +218,20 @@
 			};
 		};
 
+		psc: power-sleep-controller at 02350000 {
+			pscrst: reset-controller {
+				compatible = "ti,k2l-pscrst", "ti,syscon-reset";
+				#reset-cells = <1>;
+
+				ti,reset-bits = <
+					0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
+					0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */
+					0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */
+					0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */
+				>;
+			};
+		};
+
 		dspgpio0: keystone_dsp_gpio at 02620240 {
 			compatible = "ti,keystone-dsp-gpio";
 			gpio-controller;
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 5/5] ARM: dts: keystone-k2e: Add PSC reset controller node
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
                   ` (3 preceding siblings ...)
  2017-01-12  1:48 ` [PATCH v2 4/5] ARM: dts: keystone-k2l: " Suman Anna
@ 2017-01-12  1:48 ` Suman Anna
  2017-01-12  2:28 ` [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms santosh.shilimkar at oracle.com
  5 siblings, 0 replies; 8+ messages in thread
From: Suman Anna @ 2017-01-12  1:48 UTC (permalink / raw)
  To: linux-arm-kernel

The Power Sleep Controller (PSC) module contains specific
memory-mapped registers that can be used to perform reset
management using specific bits for the DSPs available on the
SoC. The PSC is defined using a syscon node, and the reset
functionality is defined using a child syscon reset controller
node.

Add this syscon reset controller node as well as the reset
control data for the resets it supports for the 66AK2E SoCs.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
---
v2: change reset node name from psc-reset-controller to reset-controller

 arch/arm/boot/dts/keystone-k2e.dtsi | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2e.dtsi b/arch/arm/boot/dts/keystone-k2e.dtsi
index 9d1d8a64d10e..0dd4cdd6d40c 100644
--- a/arch/arm/boot/dts/keystone-k2e.dtsi
+++ b/arch/arm/boot/dts/keystone-k2e.dtsi
@@ -8,6 +8,8 @@
  * published by the Free Software Foundation.
  */
 
+#include <dt-bindings/reset/ti-syscon.h>
+
 / {
 	compatible = "ti,k2e", "ti,keystone";
 	model = "Texas Instruments Keystone 2 Edison SoC";
@@ -94,6 +96,17 @@
 			};
 		};
 
+		psc: power-sleep-controller at 02350000 {
+			pscrst: reset-controller {
+				compatible = "ti,k2e-pscrst", "ti,syscon-reset";
+				#reset-cells = <1>;
+
+				ti,reset-bits = <
+					0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
+				>;
+			};
+		};
+
 		dspgpio0: keystone_dsp_gpio at 02620240 {
 			compatible = "ti,keystone-dsp-gpio";
 			gpio-controller;
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms
  2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
                   ` (4 preceding siblings ...)
  2017-01-12  1:48 ` [PATCH v2 5/5] ARM: dts: keystone-k2e: " Suman Anna
@ 2017-01-12  2:28 ` santosh.shilimkar at oracle.com
  2017-01-19 17:46   ` santosh.shilimkar at oracle.com
  5 siblings, 1 reply; 8+ messages in thread
From: santosh.shilimkar at oracle.com @ 2017-01-12  2:28 UTC (permalink / raw)
  To: linux-arm-kernel

On 1/11/17 5:48 PM, Suman Anna wrote:
> Hi Santosh,
>
> This is a slightly updated patch series for the reset controller nodes for
> TI Keystone2 SoCs. The only change is to rename the reset controller nodes
> from "psc-reset-controller" to just "reset-controller" following Rob Herring's
> comment on the Documentation update patch [1]. There are no changes to the first
> 2 patches. I have already posted a v2 for the Documentation update as well.
> Please pick this up instead of the v1 series [2].
>
I haven't picked up V1 so no worries. Even V2 I won't apply for another
week to give some more time if there are any more comments on the
bindings.

Thanks for following up.

Regards,
Santosh

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms
  2017-01-12  2:28 ` [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms santosh.shilimkar at oracle.com
@ 2017-01-19 17:46   ` santosh.shilimkar at oracle.com
  0 siblings, 0 replies; 8+ messages in thread
From: santosh.shilimkar at oracle.com @ 2017-01-19 17:46 UTC (permalink / raw)
  To: linux-arm-kernel

On 1/11/17 6:28 PM, santosh.shilimkar at oracle.com wrote:
> On 1/11/17 5:48 PM, Suman Anna wrote:
>> Hi Santosh,
>>
>> This is a slightly updated patch series for the reset controller nodes
>> for
>> TI Keystone2 SoCs. The only change is to rename the reset controller
>> nodes
>> from "psc-reset-controller" to just "reset-controller" following Rob
>> Herring's
>> comment on the Documentation update patch [1]. There are no changes to
>> the first
>> 2 patches. I have already posted a v2 for the Documentation update as
>> well.
>> Please pick this up instead of the v1 series [2].
>>
> I haven't picked up V1 so no worries. Even V2 I won't apply for another
> week to give some more time if there are any more comments on the
> bindings.
>
> Thanks for following up.

Series applied !!

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-01-19 17:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-12  1:48 [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms Suman Anna
2017-01-12  1:48 ` [PATCH v2 1/5] ARM: Keystone: Enable ARCH_HAS_RESET_CONTROLLER Suman Anna
2017-01-12  1:48 ` [PATCH v2 2/5] ARM: dts: keystone: Add PSC node Suman Anna
2017-01-12  1:48 ` [PATCH v2 3/5] ARM: dts: keystone-k2hk: Add PSC reset controller node Suman Anna
2017-01-12  1:48 ` [PATCH v2 4/5] ARM: dts: keystone-k2l: " Suman Anna
2017-01-12  1:48 ` [PATCH v2 5/5] ARM: dts: keystone-k2e: " Suman Anna
2017-01-12  2:28 ` [PATCH v2 0/5] Reset Controller Nodes for TI Keystone platforms santosh.shilimkar at oracle.com
2017-01-19 17:46   ` santosh.shilimkar at oracle.com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).