* [PATCH v2 1/8] dt-bindings: arm: actions: Add S700 and CubieBoard7
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-11-16 14:03 ` Andreas Färber
2017-11-13 23:34 ` [PATCH v2 2/8] dt-bindings: timer: Add Actions Semi S700 Andreas Färber
` (7 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Document the Actions Semi S700 SoC and the Cubietech CubieBoard7.
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v1 -> v2: Unchanged
Documentation/devicetree/bindings/arm/actions.txt | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/actions.txt b/Documentation/devicetree/bindings/arm/actions.txt
index ced764a8549e..544a8855fad5 100644
--- a/Documentation/devicetree/bindings/arm/actions.txt
+++ b/Documentation/devicetree/bindings/arm/actions.txt
@@ -25,6 +25,21 @@ Root node property compatible must contain, depending on board:
- LeMaker Guitar Base Board rev. B: "lemaker,guitar-bb-rev-b", "lemaker,guitar"
+S700 SoC
+========
+
+Required root node properties:
+
+- compatible : must contain "actions,s700"
+
+
+Boards:
+
+Root node property compatible must contain, depending on board:
+
+ - Cubietech CubieBoard7: "cubietech,cubieboard7"
+
+
S900 SoC
========
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 2/8] dt-bindings: timer: Add Actions Semi S700
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
2017-11-13 23:34 ` [PATCH v2 1/8] dt-bindings: arm: actions: Add S700 and CubieBoard7 Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-12-07 13:15 ` Daniel Lezcano
2017-11-13 23:34 ` [PATCH v2 3/8] clocksource: owl: Adopt TIMER_OF_DECLARE() Andreas Färber
` (6 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Define a compatible string for the Actions Semi S700 SoC timer.
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v1 -> v2: Unchanged
Documentation/devicetree/bindings/timer/actions,owl-timer.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/timer/actions,owl-timer.txt b/Documentation/devicetree/bindings/timer/actions,owl-timer.txt
index e3c28da80cb2..977054f87563 100644
--- a/Documentation/devicetree/bindings/timer/actions,owl-timer.txt
+++ b/Documentation/devicetree/bindings/timer/actions,owl-timer.txt
@@ -2,6 +2,7 @@ Actions Semi Owl Timer
Required properties:
- compatible : "actions,s500-timer" for S500
+ "actions,s700-timer" for S700
"actions,s900-timer" for S900
- reg : Offset and length of the register set for the device.
- interrupts : Should contain the interrupts.
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 3/8] clocksource: owl: Adopt TIMER_OF_DECLARE()
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
2017-11-13 23:34 ` [PATCH v2 1/8] dt-bindings: arm: actions: Add S700 and CubieBoard7 Andreas Färber
2017-11-13 23:34 ` [PATCH v2 2/8] dt-bindings: timer: Add Actions Semi S700 Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-12-07 13:15 ` Daniel Lezcano
2017-11-13 23:34 ` [PATCH v2 4/8] clocksource: owl: Prepare S700 Andreas Färber
` (5 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Commit 1727339590fdb5a1ded881b540cd32121278d414 ("clocksource/drivers:
Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE") deprecated
CLOCKSOURCE_OF_DECLARE(), so adopt the new macro TIMER_OF_DECLARE().
Reported-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v2: New (Daniel)
drivers/clocksource/owl-timer.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/clocksource/owl-timer.c b/drivers/clocksource/owl-timer.c
index c68630565079..9fb4333cfb8a 100644
--- a/drivers/clocksource/owl-timer.c
+++ b/drivers/clocksource/owl-timer.c
@@ -168,5 +168,5 @@ static int __init owl_timer_init(struct device_node *node)
return 0;
}
-CLOCKSOURCE_OF_DECLARE(owl_s500, "actions,s500-timer", owl_timer_init);
-CLOCKSOURCE_OF_DECLARE(owl_s900, "actions,s900-timer", owl_timer_init);
+TIMER_OF_DECLARE(owl_s500, "actions,s500-timer", owl_timer_init);
+TIMER_OF_DECLARE(owl_s900, "actions,s900-timer", owl_timer_init);
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (2 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 3/8] clocksource: owl: Adopt TIMER_OF_DECLARE() Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-12-04 23:00 ` Andreas Färber
2017-12-07 13:16 ` Daniel Lezcano
2017-11-13 23:34 ` [PATCH v2 5/8] arm64: dts: actions: Add S700 and CubieBoard7 Andreas Färber
` (4 subsequent siblings)
8 siblings, 2 replies; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v1 -> v2:
* Adopted TIMER_OF_DECLARE() (Daniel)
drivers/clocksource/owl-timer.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/clocksource/owl-timer.c b/drivers/clocksource/owl-timer.c
index 9fb4333cfb8a..ea00a5e8f95d 100644
--- a/drivers/clocksource/owl-timer.c
+++ b/drivers/clocksource/owl-timer.c
@@ -169,4 +169,5 @@ static int __init owl_timer_init(struct device_node *node)
return 0;
}
TIMER_OF_DECLARE(owl_s500, "actions,s500-timer", owl_timer_init);
+TIMER_OF_DECLARE(owl_s700, "actions,s700-timer", owl_timer_init);
TIMER_OF_DECLARE(owl_s900, "actions,s900-timer", owl_timer_init);
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-11-13 23:34 ` [PATCH v2 4/8] clocksource: owl: Prepare S700 Andreas Färber
@ 2017-12-04 23:00 ` Andreas Färber
2017-12-07 9:23 ` Daniel Lezcano
2017-12-07 13:16 ` Daniel Lezcano
1 sibling, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-12-04 23:00 UTC (permalink / raw)
To: linux-arm-kernel
Hi Daniel,
Am 14.11.2017 um 00:34 schrieb Andreas F?rber:
> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>
> Signed-off-by: Andreas F?rber <afaerber@suse.de>
> ---
> v1 -> v2:
> * Adopted TIMER_OF_DECLARE() (Daniel)
>
> drivers/clocksource/owl-timer.c | 1 +
> 1 file changed, 1 insertion(+)
Are you planning to queue this v2 patch for 4.16?
Thanks,
Andreas
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-12-04 23:00 ` Andreas Färber
@ 2017-12-07 9:23 ` Daniel Lezcano
2017-12-07 12:47 ` Andreas Färber
0 siblings, 1 reply; 25+ messages in thread
From: Daniel Lezcano @ 2017-12-07 9:23 UTC (permalink / raw)
To: linux-arm-kernel
On 05/12/2017 00:00, Andreas F?rber wrote:
> Hi Daniel,
>
> Am 14.11.2017 um 00:34 schrieb Andreas F?rber:
>> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>>
>> Signed-off-by: Andreas F?rber <afaerber@suse.de>
>> ---
>> v1 -> v2:
>> * Adopted TIMER_OF_DECLARE() (Daniel)
>>
>> drivers/clocksource/owl-timer.c | 1 +
>> 1 file changed, 1 insertion(+)
>
> Are you planning to queue this v2 patch for 4.16?
Yeah, what about the patch 1/8 ?
--
<http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-12-07 9:23 ` Daniel Lezcano
@ 2017-12-07 12:47 ` Andreas Färber
2017-12-07 13:11 ` Daniel Lezcano
0 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-12-07 12:47 UTC (permalink / raw)
To: linux-arm-kernel
Am 07.12.2017 um 10:23 schrieb Daniel Lezcano:
> On 05/12/2017 00:00, Andreas F?rber wrote:
>> Hi Daniel,
>>
>> Am 14.11.2017 um 00:34 schrieb Andreas F?rber:
>>> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>>>
>>> Signed-off-by: Andreas F?rber <afaerber@suse.de>
>>> ---
>>> v1 -> v2:
>>> * Adopted TIMER_OF_DECLARE() (Daniel)
>>>
>>> drivers/clocksource/owl-timer.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>
>> Are you planning to queue this v2 patch for 4.16?
>
> Yeah, what about the patch 1/8 ?
In linux-next already.
If you take 2-4, I can take 5; if you'd rather have me take the binding,
fine with me as well.
Thanks,
Andreas
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-12-07 12:47 ` Andreas Färber
@ 2017-12-07 13:11 ` Daniel Lezcano
2017-12-07 13:16 ` Andreas Färber
0 siblings, 1 reply; 25+ messages in thread
From: Daniel Lezcano @ 2017-12-07 13:11 UTC (permalink / raw)
To: linux-arm-kernel
On 07/12/2017 13:47, Andreas F?rber wrote:
> Am 07.12.2017 um 10:23 schrieb Daniel Lezcano:
>> On 05/12/2017 00:00, Andreas F?rber wrote:
>>> Hi Daniel,
>>>
>>> Am 14.11.2017 um 00:34 schrieb Andreas F?rber:
>>>> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>>>>
>>>> Signed-off-by: Andreas F?rber <afaerber@suse.de>
>>>> ---
>>>> v1 -> v2:
>>>> * Adopted TIMER_OF_DECLARE() (Daniel)
>>>>
>>>> drivers/clocksource/owl-timer.c | 1 +
>>>> 1 file changed, 1 insertion(+)
>>>
>>> Are you planning to queue this v2 patch for 4.16?
>>
>> Yeah, what about the patch 1/8 ?
>
> In linux-next already.
Yeah, but that does not mean the patch is merged. Do you mean it is
merged in arm-soc, so it is visible in linux-next?
> If you take 2-4, I can take 5; if you'd rather have me take the binding,
> fine with me as well.
I will take patches 2-4.
Thanks.
-- Daniel
--
<http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-12-07 13:11 ` Daniel Lezcano
@ 2017-12-07 13:16 ` Andreas Färber
0 siblings, 0 replies; 25+ messages in thread
From: Andreas Färber @ 2017-12-07 13:16 UTC (permalink / raw)
To: linux-arm-kernel
Am 07.12.2017 um 14:11 schrieb Daniel Lezcano:
> On 07/12/2017 13:47, Andreas F?rber wrote:
>> Am 07.12.2017 um 10:23 schrieb Daniel Lezcano:
>>> On 05/12/2017 00:00, Andreas F?rber wrote:
>>>> Hi Daniel,
>>>>
>>>> Am 14.11.2017 um 00:34 schrieb Andreas F?rber:
>>>>> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>>>>>
>>>>> Signed-off-by: Andreas F?rber <afaerber@suse.de>
>>>>> ---
>>>>> v1 -> v2:
>>>>> * Adopted TIMER_OF_DECLARE() (Daniel)
>>>>>
>>>>> drivers/clocksource/owl-timer.c | 1 +
>>>>> 1 file changed, 1 insertion(+)
>>>>
>>>> Are you planning to queue this v2 patch for 4.16?
>>>
>>> Yeah, what about the patch 1/8 ?
>>
>> In linux-next already.
>
> Yeah, but that does not mean the patch is merged. Do you mean it is
> merged in arm-soc, so it is visible in linux-next?
No, I am waiting to send my initial 4.16 pull to arm-soc and wanted to
clarify what (if anything) from this series can still go into that pull.
>> If you take 2-4, I can take 5; if you'd rather have me take the binding,
>> fine with me as well.
>
> I will take patches 2-4.
Thanks,
Andreas
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 4/8] clocksource: owl: Prepare S700
2017-11-13 23:34 ` [PATCH v2 4/8] clocksource: owl: Prepare S700 Andreas Färber
2017-12-04 23:00 ` Andreas Färber
@ 2017-12-07 13:16 ` Daniel Lezcano
1 sibling, 0 replies; 25+ messages in thread
From: Daniel Lezcano @ 2017-12-07 13:16 UTC (permalink / raw)
To: linux-arm-kernel
On 14/11/2017 00:34, Andreas F?rber wrote:
> Actions S700 has two 2Hz timers like S500, and four TIMx timers like S900.
>
> Signed-off-by: Andreas F?rber <afaerber@suse.de>
> ---
Applied for 4.16.
Thanks
-- Daniel
--
<http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 5/8] arm64: dts: actions: Add S700 and CubieBoard7
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (3 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 4/8] clocksource: owl: Prepare S700 Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-12-22 10:10 ` Andreas Färber
2017-11-13 23:34 ` [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS Andreas Färber
` (3 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Add Device Trees for S700 SoC and Cubietech CubieBoard7.
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v1 -> v2: Unchanged
arch/arm64/boot/dts/actions/Makefile | 2 +
arch/arm64/boot/dts/actions/s700-cubieboard7.dts | 47 +++++++
arch/arm64/boot/dts/actions/s700.dtsi | 164 +++++++++++++++++++++++
3 files changed, 213 insertions(+)
create mode 100644 arch/arm64/boot/dts/actions/s700-cubieboard7.dts
create mode 100644 arch/arm64/boot/dts/actions/s700.dtsi
diff --git a/arch/arm64/boot/dts/actions/Makefile b/arch/arm64/boot/dts/actions/Makefile
index cc4661256356..d8b923480f5a 100644
--- a/arch/arm64/boot/dts/actions/Makefile
+++ b/arch/arm64/boot/dts/actions/Makefile
@@ -1 +1,3 @@
+dtb-$(CONFIG_ARCH_ACTIONS) += s700-cubieboard7.dtb
+
dtb-$(CONFIG_ARCH_ACTIONS) += s900-bubblegum-96.dtb
diff --git a/arch/arm64/boot/dts/actions/s700-cubieboard7.dts b/arch/arm64/boot/dts/actions/s700-cubieboard7.dts
new file mode 100644
index 000000000000..e562f04c2490
--- /dev/null
+++ b/arch/arm64/boot/dts/actions/s700-cubieboard7.dts
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2017 Andreas F?rber
+ *
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+ */
+
+/dts-v1/;
+
+#include "s700.dtsi"
+
+/ {
+ compatible = "cubietech,cubieboard7", "actions,s700";
+ model = "CubieBoard7";
+
+ aliases {
+ serial3 = &uart3;
+ };
+
+ chosen {
+ stdout-path = "serial3:115200n8";
+ };
+
+ memory at 0 {
+ device_type = "memory";
+ reg = <0x0 0x0 0x0 0x80000000>;
+ };
+
+ memory at 1,e0000000 {
+ device_type = "memory";
+ reg = <0x1 0xe0000000 0x0 0x0>;
+ };
+
+ uart3_clk: uart3-clk {
+ compatible = "fixed-clock";
+ clock-frequency = <921600>;
+ #clock-cells = <0>;
+ };
+};
+
+&timer {
+ clocks = <&hosc>;
+};
+
+&uart3 {
+ status = "okay";
+ clocks = <&uart3_clk>;
+};
diff --git a/arch/arm64/boot/dts/actions/s700.dtsi b/arch/arm64/boot/dts/actions/s700.dtsi
new file mode 100644
index 000000000000..b54df405aaeb
--- /dev/null
+++ b/arch/arm64/boot/dts/actions/s700.dtsi
@@ -0,0 +1,164 @@
+/*
+ * Copyright (c) 2017 Andreas F?rber
+ *
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+ */
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+
+/ {
+ compatible = "actions,s700";
+ interrupt-parent = <&gic>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ cpus {
+ #address-cells = <2>;
+ #size-cells = <0>;
+
+ cpu0: cpu at 0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a53", "arm,armv8";
+ reg = <0x0 0x0>;
+ enable-method = "psci";
+ };
+
+ cpu1: cpu at 1 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a53", "arm,armv8";
+ reg = <0x0 0x1>;
+ enable-method = "psci";
+ };
+
+ cpu2: cpu at 2 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a53", "arm,armv8";
+ reg = <0x0 0x2>;
+ enable-method = "psci";
+ };
+
+ cpu3: cpu at 3 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a53", "arm,armv8";
+ reg = <0x0 0x3>;
+ enable-method = "psci";
+ };
+ };
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ secmon at 1f000000 {
+ reg = <0x0 0x1f000000 0x0 0x1000000>;
+ no-map;
+ };
+ };
+
+ psci {
+ compatible = "arm,psci-0.2";
+ method = "smc";
+ };
+
+ arm-pmu {
+ compatible = "arm,cortex-a53-pmu";
+ interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
+ };
+
+ timer {
+ compatible = "arm,armv8-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)>;
+ };
+
+ hosc: hosc {
+ compatible = "fixed-clock";
+ clock-frequency = <24000000>;
+ #clock-cells = <0>;
+ };
+
+ soc {
+ compatible = "simple-bus";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ gic: interrupt-controller at e00f1000 {
+ compatible = "arm,gic-400";
+ reg = <0x0 0xe00f1000 0x0 0x1000>,
+ <0x0 0xe00f2000 0x0 0x2000>,
+ <0x0 0xe00f4000 0x0 0x2000>,
+ <0x0 0xe00f6000 0x0 0x2000>;
+ interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
+ interrupt-controller;
+ #interrupt-cells = <3>;
+ };
+
+ uart0: serial at e0120000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe0120000 0x0 0x2000>;
+ interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart1: serial at e0122000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe0122000 0x0 0x2000>;
+ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart2: serial at e0124000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe0124000 0x0 0x2000>;
+ interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart3: serial at e0126000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe0126000 0x0 0x2000>;
+ interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart4: serial at e0128000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe0128000 0x0 0x2000>;
+ interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart5: serial at e012a000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe012a000 0x0 0x2000>;
+ interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ uart6: serial at e012c000 {
+ compatible = "actions,s900-uart", "actions,owl-uart";
+ reg = <0x0 0xe012c000 0x0 0x2000>;
+ interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ timer: timer at e024c000 {
+ compatible = "actions,s700-timer";
+ reg = <0x0 0xe024c000 0x0 0x4000>;
+ interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "timer1";
+ };
+ };
+};
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (4 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 5/8] arm64: dts: actions: Add S700 and CubieBoard7 Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-11-16 4:35 ` Rob Herring
2017-11-13 23:34 ` [PATCH v2 7/8] soc: actions: sps: Add S700 Andreas Färber
` (2 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Define power domains for Actions Semi S700 SoC Smart Power System (SPS).
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v2: New
.../devicetree/bindings/power/actions,owl-sps.txt | 2 ++
include/dt-bindings/power/owl-s700-powergate.h | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+)
create mode 100644 include/dt-bindings/power/owl-s700-powergate.h
diff --git a/Documentation/devicetree/bindings/power/actions,owl-sps.txt b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
index 007b9a7ae723..78edd63641e8 100644
--- a/Documentation/devicetree/bindings/power/actions,owl-sps.txt
+++ b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
@@ -2,10 +2,12 @@ Actions Semi Owl Smart Power System (SPS)
Required properties:
- compatible : "actions,s500-sps" for S500
+ "actions,s700-sps" for S700
- reg : Offset and length of the register set for the device.
- #power-domain-cells : Must be 1.
See macros in:
include/dt-bindings/power/owl-s500-powergate.h for S500
+ include/dt-bindings/power/owl-s700-powergate.h for S700
Example:
diff --git a/include/dt-bindings/power/owl-s700-powergate.h b/include/dt-bindings/power/owl-s700-powergate.h
new file mode 100644
index 000000000000..4ded16bc074f
--- /dev/null
+++ b/include/dt-bindings/power/owl-s700-powergate.h
@@ -0,0 +1,20 @@
+/*
+ * Actions Semi S700 SPS
+ *
+ * Copyright (c) 2017 Andreas F?rber
+ *
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+ */
+#ifndef DT_BINDINGS_POWER_OWL_S700_POWERGATE_H
+#define DT_BINDINGS_POWER_OWL_S700_POWERGATE_H
+
+#define S700_PD_VDE 0
+#define S700_PD_VCE_SI 1
+#define S700_PD_USB2_1 2
+#define S700_PD_HDE 3
+#define S700_PD_DMA 4
+#define S700_PD_DS 5
+#define S700_PD_USB3 6
+#define S700_PD_USB2_0 7
+
+#endif
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS
2017-11-13 23:34 ` [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS Andreas Färber
@ 2017-11-16 4:35 ` Rob Herring
2017-11-16 13:42 ` Andreas Färber
0 siblings, 1 reply; 25+ messages in thread
From: Rob Herring @ 2017-11-16 4:35 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Nov 14, 2017 at 12:34:25AM +0100, Andreas F?rber wrote:
> Define power domains for Actions Semi S700 SoC Smart Power System (SPS).
>
> Signed-off-by: Andreas F?rber <afaerber@suse.de>
> ---
> v2: New
>
> .../devicetree/bindings/power/actions,owl-sps.txt | 2 ++
> include/dt-bindings/power/owl-s700-powergate.h | 20 ++++++++++++++++++++
> 2 files changed, 22 insertions(+)
> create mode 100644 include/dt-bindings/power/owl-s700-powergate.h
>
> diff --git a/Documentation/devicetree/bindings/power/actions,owl-sps.txt b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
> index 007b9a7ae723..78edd63641e8 100644
> --- a/Documentation/devicetree/bindings/power/actions,owl-sps.txt
> +++ b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
> @@ -2,10 +2,12 @@ Actions Semi Owl Smart Power System (SPS)
>
> Required properties:
> - compatible : "actions,s500-sps" for S500
> + "actions,s700-sps" for S700
> - reg : Offset and length of the register set for the device.
> - #power-domain-cells : Must be 1.
> See macros in:
> include/dt-bindings/power/owl-s500-powergate.h for S500
> + include/dt-bindings/power/owl-s700-powergate.h for S700
>
>
> Example:
> diff --git a/include/dt-bindings/power/owl-s700-powergate.h b/include/dt-bindings/power/owl-s700-powergate.h
> new file mode 100644
> index 000000000000..4ded16bc074f
> --- /dev/null
> +++ b/include/dt-bindings/power/owl-s700-powergate.h
> @@ -0,0 +1,20 @@
> +/*
> + * Actions Semi S700 SPS
> + *
> + * Copyright (c) 2017 Andreas F?rber
> + *
> + * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
The decree now for SPDX tags is make this the first line using "//".
Otherwise,
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 25+ messages in thread
* [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS
2017-11-16 4:35 ` Rob Herring
@ 2017-11-16 13:42 ` Andreas Färber
0 siblings, 0 replies; 25+ messages in thread
From: Andreas Färber @ 2017-11-16 13:42 UTC (permalink / raw)
To: linux-arm-kernel
Am 16.11.2017 um 05:35 schrieb Rob Herring:
> On Tue, Nov 14, 2017 at 12:34:25AM +0100, Andreas F?rber wrote:
>> Define power domains for Actions Semi S700 SoC Smart Power System (SPS).
>>
>> Signed-off-by: Andreas F?rber <afaerber@suse.de>
>> ---
>> v2: New
>>
>> .../devicetree/bindings/power/actions,owl-sps.txt | 2 ++
>> include/dt-bindings/power/owl-s700-powergate.h | 20 ++++++++++++++++++++
>> 2 files changed, 22 insertions(+)
>> create mode 100644 include/dt-bindings/power/owl-s700-powergate.h
>>
>> diff --git a/Documentation/devicetree/bindings/power/actions,owl-sps.txt b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
>> index 007b9a7ae723..78edd63641e8 100644
>> --- a/Documentation/devicetree/bindings/power/actions,owl-sps.txt
>> +++ b/Documentation/devicetree/bindings/power/actions,owl-sps.txt
>> @@ -2,10 +2,12 @@ Actions Semi Owl Smart Power System (SPS)
>>
>> Required properties:
>> - compatible : "actions,s500-sps" for S500
>> + "actions,s700-sps" for S700
>> - reg : Offset and length of the register set for the device.
>> - #power-domain-cells : Must be 1.
>> See macros in:
>> include/dt-bindings/power/owl-s500-powergate.h for S500
>> + include/dt-bindings/power/owl-s700-powergate.h for S700
>>
>>
>> Example:
>> diff --git a/include/dt-bindings/power/owl-s700-powergate.h b/include/dt-bindings/power/owl-s700-powergate.h
>> new file mode 100644
>> index 000000000000..4ded16bc074f
>> --- /dev/null
>> +++ b/include/dt-bindings/power/owl-s700-powergate.h
>> @@ -0,0 +1,20 @@
>> +/*
>> + * Actions Semi S700 SPS
>> + *
>> + * Copyright (c) 2017 Andreas F?rber
>> + *
>> + * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>
> The decree now for SPDX tags is make this the first line using "//".
Thanks for noticing. Fixed:
diff --git a/include/dt-bindings/power/owl-s700-powergate.h
b/include/dt-bindings/power/owl-s700-powergate.h
index 4ded16bc074f..4cf1aefbf09c 100644
--- a/include/dt-bindings/power/owl-s700-powergate.h
+++ b/include/dt-bindings/power/owl-s700-powergate.h
@@ -1,9 +1,8 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Actions Semi S700 SPS
*
* Copyright (c) 2017 Andreas F?rber
- *
- * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
*/
#ifndef DT_BINDINGS_POWER_OWL_S700_POWERGATE_H
#define DT_BINDINGS_POWER_OWL_S700_POWERGATE_H
>
> Otherwise,
>
> Acked-by: Rob Herring <robh@kernel.org>
Thanks, queued in v4.16/dt64:
https://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions.git/log/?h=v4.16/dt64
Regards,
Andreas
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
^ permalink raw reply related [flat|nested] 25+ messages in thread
* [PATCH v2 7/8] soc: actions: sps: Add S700
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (5 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 6/8] dt-bindings: power: Add Actions Semi S700 SPS Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-11-16 14:05 ` Andreas Färber
2017-11-13 23:34 ` [PATCH v2 8/8] arm64: dts: actions: Add S700 SPS node Andreas Färber
2017-12-07 9:20 ` [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Daniel Lezcano
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Add power domains for S700 SoC.
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v2: New
drivers/soc/actions/owl-sps.c | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/drivers/soc/actions/owl-sps.c b/drivers/soc/actions/owl-sps.c
index 875225bfa21c..8477f0f18e24 100644
--- a/drivers/soc/actions/owl-sps.c
+++ b/drivers/soc/actions/owl-sps.c
@@ -17,6 +17,7 @@
#include <linux/pm_domain.h>
#include <linux/soc/actions/owl-sps.h>
#include <dt-bindings/power/owl-s500-powergate.h>
+#include <dt-bindings/power/owl-s700-powergate.h>
struct owl_sps_domain_info {
const char *name;
@@ -203,8 +204,49 @@ static const struct owl_sps_info s500_sps_info = {
.domains = s500_sps_domains,
};
+static const struct owl_sps_domain_info s700_sps_domains[] = {
+ [S700_PD_VDE] = {
+ .name = "VDE",
+ .pwr_bit = 0,
+ },
+ [S700_PD_VCE_SI] = {
+ .name = "VCE_SI",
+ .pwr_bit = 1,
+ },
+ [S700_PD_USB2_1] = {
+ .name = "USB2_1",
+ .pwr_bit = 2,
+ },
+ [S700_PD_HDE] = {
+ .name = "HDE",
+ .pwr_bit = 7,
+ },
+ [S700_PD_DMA] = {
+ .name = "DMA",
+ .pwr_bit = 8,
+ },
+ [S700_PD_DS] = {
+ .name = "DS",
+ .pwr_bit = 9,
+ },
+ [S700_PD_USB3] = {
+ .name = "USB3",
+ .pwr_bit = 10,
+ },
+ [S700_PD_USB2_0] = {
+ .name = "USB2_0",
+ .pwr_bit = 11,
+ },
+};
+
+static const struct owl_sps_info s700_sps_info = {
+ .num_domains = ARRAY_SIZE(s700_sps_domains),
+ .domains = s700_sps_domains,
+};
+
static const struct of_device_id owl_sps_of_matches[] = {
{ .compatible = "actions,s500-sps", .data = &s500_sps_info },
+ { .compatible = "actions,s700-sps", .data = &s700_sps_info },
{ }
};
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 8/8] arm64: dts: actions: Add S700 SPS node
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (6 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 7/8] soc: actions: sps: Add S700 Andreas Färber
@ 2017-11-13 23:34 ` Andreas Färber
2017-11-16 14:16 ` Andreas Färber
2017-12-07 9:20 ` [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Daniel Lezcano
8 siblings, 1 reply; 25+ messages in thread
From: Andreas Färber @ 2017-11-13 23:34 UTC (permalink / raw)
To: linux-arm-kernel
Add a node to the S700 Device Tree for the Smart Power System (SPS).
Signed-off-by: Andreas F?rber <afaerber@suse.de>
---
v2: New
To be squashed into 5/8 if binding gets acked.
arch/arm64/boot/dts/actions/s700.dtsi | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/arm64/boot/dts/actions/s700.dtsi b/arch/arm64/boot/dts/actions/s700.dtsi
index b54df405aaeb..6a39968b209f 100644
--- a/arch/arm64/boot/dts/actions/s700.dtsi
+++ b/arch/arm64/boot/dts/actions/s700.dtsi
@@ -154,6 +154,12 @@
status = "disabled";
};
+ sps: power-controller at e01b0100 {
+ compatible = "actions,s700-sps";
+ reg = <0x0 0xe01b0100 0x0 0x100>;
+ #power-domain-cells = <1>;
+ };
+
timer: timer at e024c000 {
compatible = "actions,s700-timer";
reg = <0x0 0xe024c000 0x0 0x4000>;
--
2.13.6
^ permalink raw reply related [flat|nested] 25+ messages in thread* [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support
2017-11-13 23:34 [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Andreas Färber
` (7 preceding siblings ...)
2017-11-13 23:34 ` [PATCH v2 8/8] arm64: dts: actions: Add S700 SPS node Andreas Färber
@ 2017-12-07 9:20 ` Daniel Lezcano
2017-12-07 11:30 ` Andreas Färber
8 siblings, 1 reply; 25+ messages in thread
From: Daniel Lezcano @ 2017-12-07 9:20 UTC (permalink / raw)
To: linux-arm-kernel
On 14/11/2017 00:34, Andreas F?rber wrote:
> Hello,
>
> This series prepares the Actions Semi S700 SoC and Cubietech CubieBoard7.
> It boots equally far as the S900 based Bubblegum-96 these patches are based on,
> i.e. into an initrd with serial and all four cores up.
>
> v2 modifies the clocksource driver patches and adds SPS patches.
>
> Not having succeeded to replace the bootloader on eMMC or to try
> booting from SD, the only working way I've found to boot mainline kernels
> appears to be booting into Android, then issuing "reboot bootloader". U-Boot
> is lacking the saveenv command, so it wasn't possible to change the bootdelay
> to facilitate this.
Is it possible this change fixes your issue ?
http://git.denx.de/?p=u-boot.git;a=commit;h=c9e87ba66540cf72c164674a71af43853d087ba8
> Cf. https://en.opensuse.org/HCL:CubieBoard7
--
<http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
^ permalink raw reply [flat|nested] 25+ messages in thread* [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support
2017-12-07 9:20 ` [PATCH v2 0/8] arm64: Add initial Actions Semi S700 and CubieBoard7 support Daniel Lezcano
@ 2017-12-07 11:30 ` Andreas Färber
0 siblings, 0 replies; 25+ messages in thread
From: Andreas Färber @ 2017-12-07 11:30 UTC (permalink / raw)
To: linux-arm-kernel
Am 07.12.2017 um 10:20 schrieb Daniel Lezcano:
> On 14/11/2017 00:34, Andreas F?rber wrote:
>> Hello,
>>
>> This series prepares the Actions Semi S700 SoC and Cubietech CubieBoard7.
>> It boots equally far as the S900 based Bubblegum-96 these patches are based on,
>> i.e. into an initrd with serial and all four cores up.
>>
>> v2 modifies the clocksource driver patches and adds SPS patches.
>>
>> Not having succeeded to replace the bootloader on eMMC or to try
>> booting from SD, the only working way I've found to boot mainline kernels
>> appears to be booting into Android, then issuing "reboot bootloader". U-Boot
>> is lacking the saveenv command, so it wasn't possible to change the bootdelay
>> to facilitate this.
>
> Is it possible this change fixes your issue ?
>
> http://git.denx.de/?p=u-boot.git;a=commit;h=c9e87ba66540cf72c164674a71af43853d087ba8
Actions is not yet supported in mainline U-Boot, and S500 boards did not
have a problem there. The saveenv command is simply not enabled in this
config deployed by Cubietech. Since I have not succeeded in getting a
self-built U-Boot booted from SD, I cannot test individual commits on
top either.
Maybe Cubietech or Actions can comment?
Regards,
Andreas
>> Cf. https://en.opensuse.org/HCL:CubieBoard7
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
^ permalink raw reply [flat|nested] 25+ messages in thread