* [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