* [PATCH 1/7] PM / Domains: Add DT bindings for the R-Car System Controller
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 2/7] soc: renesas: Add r8a7779 SYSC PM Domain Binding Definitions Simon Horman
` (6 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
The Renesas R-Car System Controller provides power management for the
CPU cores and various coprocessors, following the generic PM domain
bindings in Documentation/devicetree/bindings/power/power_domain.txt.
This supports R-Car Gen1 (H1), Gen2, and Gen3.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
.../bindings/power/renesas,rcar-sysc.txt | 48 ++++++++++++++++++++++
1 file changed, 48 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
diff --git a/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt b/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
new file mode 100644
index 000000000000..b74e4d4785ab
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
@@ -0,0 +1,48 @@
+DT bindings for the Renesas R-Car System Controller
+
+== System Controller Node ==
+
+The R-Car System Controller provides power management for the CPU cores and
+various coprocessors.
+
+Required properties:
+ - compatible: Must contain exactly one of the following:
+ - "renesas,r8a7779-sysc" (R-Car H1)
+ - "renesas,r8a7790-sysc" (R-Car H2)
+ - "renesas,r8a7791-sysc" (R-Car M2-W)
+ - "renesas,r8a7792-sysc" (R-Car V2H)
+ - "renesas,r8a7793-sysc" (R-Car M2-N)
+ - "renesas,r8a7794-sysc" (R-Car E2)
+ - "renesas,r8a7795-sysc" (R-Car H3)
+ - reg: Address start and address range for the device.
+ - #power-domain-cells: Must be 1.
+
+
+Example:
+
+ sysc: system-controller at e6180000 {
+ compatible = "renesas,r8a7791-sysc";
+ reg = <0 0xe6180000 0 0x0200>;
+ #power-domain-cells = <1>;
+ };
+
+
+== PM Domain Consumers ==
+
+Devices residing in a power area must refer to that power area, as documented
+by the generic PM domain bindings in
+Documentation/devicetree/bindings/power/power_domain.txt.
+
+Required properties:
+ - power-domains: A phandle and symbolic PM domain specifier, as defined in
+ <dt-bindings/power/r8a77*-sysc.h>.
+
+
+Example:
+
+ L2_CA15: cache-controller at 0 {
+ compatible = "cache";
+ power-domains = <&sysc R8A7791_PD_CA15_SCU>;
+ cache-unified;
+ cache-level = <2>;
+ };
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/7] soc: renesas: Add r8a7779 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
2016-04-21 3:44 ` [PATCH 1/7] PM / Domains: Add DT bindings for the R-Car System Controller Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 3/7] soc: renesas: Add r8a7790 " Simon Horman
` (5 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7779-sysc.h | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7779-sysc.h
diff --git a/include/dt-bindings/power/r8a7779-sysc.h b/include/dt-bindings/power/r8a7779-sysc.h
new file mode 100644
index 000000000000..183571da507e
--- /dev/null
+++ b/include/dt-bindings/power/r8a7779-sysc.h
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7779_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7779_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ */
+
+#define R8A7779_PD_ARM1 1
+#define R8A7779_PD_ARM2 2
+#define R8A7779_PD_ARM3 3
+#define R8A7779_PD_SGX 20
+#define R8A7779_PD_VDP 21
+#define R8A7779_PD_IMP 24
+
+/* Always-on power area */
+#define R8A7779_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7779_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/7] soc: renesas: Add r8a7790 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
2016-04-21 3:44 ` [PATCH 1/7] PM / Domains: Add DT bindings for the R-Car System Controller Simon Horman
2016-04-21 3:44 ` [PATCH 2/7] soc: renesas: Add r8a7779 SYSC PM Domain Binding Definitions Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 4/7] soc: renesas: Add r8a7791 " Simon Horman
` (4 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7790-sysc.h | 34 ++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7790-sysc.h
diff --git a/include/dt-bindings/power/r8a7790-sysc.h b/include/dt-bindings/power/r8a7790-sysc.h
new file mode 100644
index 000000000000..6af4e9929bd0
--- /dev/null
+++ b/include/dt-bindings/power/r8a7790-sysc.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7790_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7790_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ */
+
+#define R8A7790_PD_CA15_CPU0 0
+#define R8A7790_PD_CA15_CPU1 1
+#define R8A7790_PD_CA15_CPU2 2
+#define R8A7790_PD_CA15_CPU3 3
+#define R8A7790_PD_CA7_CPU0 5
+#define R8A7790_PD_CA7_CPU1 6
+#define R8A7790_PD_CA7_CPU2 7
+#define R8A7790_PD_CA7_CPU3 8
+#define R8A7790_PD_CA15_SCU 12
+#define R8A7790_PD_SH_4A 16
+#define R8A7790_PD_RGX 20
+#define R8A7790_PD_CA7_SCU 21
+#define R8A7790_PD_IMP 24
+
+/* Always-on power area */
+#define R8A7790_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7790_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 4/7] soc: renesas: Add r8a7791 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
` (2 preceding siblings ...)
2016-04-21 3:44 ` [PATCH 3/7] soc: renesas: Add r8a7790 " Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 5/7] soc: renesas: Add r8a7793 " Simon Horman
` (3 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7791-sysc.h | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7791-sysc.h
diff --git a/include/dt-bindings/power/r8a7791-sysc.h b/include/dt-bindings/power/r8a7791-sysc.h
new file mode 100644
index 000000000000..1403baa0514f
--- /dev/null
+++ b/include/dt-bindings/power/r8a7791-sysc.h
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7791_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7791_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ */
+
+#define R8A7791_PD_CA15_CPU0 0
+#define R8A7791_PD_CA15_CPU1 1
+#define R8A7791_PD_CA15_SCU 12
+#define R8A7791_PD_SH_4A 16
+#define R8A7791_PD_SGX 20
+
+/* Always-on power area */
+#define R8A7791_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7791_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 5/7] soc: renesas: Add r8a7793 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
` (3 preceding siblings ...)
2016-04-21 3:44 ` [PATCH 4/7] soc: renesas: Add r8a7791 " Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 6/7] soc: renesas: Add r8a7794 " Simon Horman
` (2 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
R-Car M2-N is identical to R-Car M2-W w.r.t. power domains, so reuse the
definitions from the latter.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7793-sysc.h | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7793-sysc.h
diff --git a/include/dt-bindings/power/r8a7793-sysc.h b/include/dt-bindings/power/r8a7793-sysc.h
new file mode 100644
index 000000000000..b5693df3d830
--- /dev/null
+++ b/include/dt-bindings/power/r8a7793-sysc.h
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7793_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7793_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ *
+ * Note that R-Car M2-N is identical to R-Car M2-W w.r.t. power domains.
+ */
+
+#define R8A7793_PD_CA15_CPU0 0
+#define R8A7793_PD_CA15_CPU1 1
+#define R8A7793_PD_CA15_SCU 12
+#define R8A7793_PD_SH_4A 16
+#define R8A7793_PD_SGX 20
+
+/* Always-on power area */
+#define R8A7793_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7793_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 6/7] soc: renesas: Add r8a7794 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
` (4 preceding siblings ...)
2016-04-21 3:44 ` [PATCH 5/7] soc: renesas: Add r8a7793 " Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-21 3:44 ` [PATCH 7/7] soc: renesas: Add r8a7795 " Simon Horman
2016-04-24 21:40 ` [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Arnd Bergmann
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7794-sysc.h | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7794-sysc.h
diff --git a/include/dt-bindings/power/r8a7794-sysc.h b/include/dt-bindings/power/r8a7794-sysc.h
new file mode 100644
index 000000000000..862241c2d27b
--- /dev/null
+++ b/include/dt-bindings/power/r8a7794-sysc.h
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7794_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7794_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ */
+
+#define R8A7794_PD_CA7_CPU0 5
+#define R8A7794_PD_CA7_CPU1 6
+#define R8A7794_PD_SH_4A 16
+#define R8A7794_PD_SGX 20
+#define R8A7794_PD_CA7_SCU 21
+
+/* Always-on power area */
+#define R8A7794_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7794_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 7/7] soc: renesas: Add r8a7795 SYSC PM Domain Binding Definitions
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
` (5 preceding siblings ...)
2016-04-21 3:44 ` [PATCH 6/7] soc: renesas: Add r8a7794 " Simon Horman
@ 2016-04-21 3:44 ` Simon Horman
2016-04-24 21:40 ` [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Arnd Bergmann
7 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-21 3:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
include/dt-bindings/power/r8a7795-sysc.h | 42 ++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7795-sysc.h
diff --git a/include/dt-bindings/power/r8a7795-sysc.h b/include/dt-bindings/power/r8a7795-sysc.h
new file mode 100644
index 000000000000..ee2e26ba605e
--- /dev/null
+++ b/include/dt-bindings/power/r8a7795-sysc.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2016 Glider bvba
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ */
+#ifndef __DT_BINDINGS_POWER_R8A7795_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7795_SYSC_H__
+
+/*
+ * These power domain indices match the numbers of the interrupt bits
+ * representing the power areas in the various Interrupt Registers
+ * (e.g. SYSCISR, Interrupt Status Register)
+ */
+
+#define R8A7795_PD_CA57_CPU0 0
+#define R8A7795_PD_CA57_CPU1 1
+#define R8A7795_PD_CA57_CPU2 2
+#define R8A7795_PD_CA57_CPU3 3
+#define R8A7795_PD_CA53_CPU0 5
+#define R8A7795_PD_CA53_CPU1 6
+#define R8A7795_PD_CA53_CPU2 7
+#define R8A7795_PD_CA53_CPU3 8
+#define R8A7795_PD_A3VP 9
+#define R8A7795_PD_CA57_SCU 12
+#define R8A7795_PD_CR7 13
+#define R8A7795_PD_A3VC 14
+#define R8A7795_PD_3DG_A 17
+#define R8A7795_PD_3DG_B 18
+#define R8A7795_PD_3DG_C 19
+#define R8A7795_PD_3DG_D 20
+#define R8A7795_PD_CA53_SCU 21
+#define R8A7795_PD_3DG_E 22
+#define R8A7795_PD_A3IR 24
+#define R8A7795_PD_A2VC0 25
+#define R8A7795_PD_A2VC1 26
+
+/* Always-on power area */
+#define R8A7795_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7795_SYSC_H__ */
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7
2016-04-21 3:44 [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Simon Horman
` (6 preceding siblings ...)
2016-04-21 3:44 ` [PATCH 7/7] soc: renesas: Add r8a7795 " Simon Horman
@ 2016-04-24 21:40 ` Arnd Bergmann
2016-04-25 0:23 ` Simon Horman
7 siblings, 1 reply; 10+ messages in thread
From: Arnd Bergmann @ 2016-04-24 21:40 UTC (permalink / raw)
To: linux-arm-kernel
On Thursday 21 April 2016 13:44:48 Simon Horman wrote:
> Renesas ARM Based SoC R-Car SYSC Updates for v4.7
>
> * Add DT bindings for the R-Car System Controller.
> An implementation is intended to follow.
>
This seems to best fit into next/dt, but we can also stick it into other
branches if it's needed as a dependency.
Pulled now, thanks!
Arnd
^ permalink raw reply [flat|nested] 10+ messages in thread
* [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7
2016-04-24 21:40 ` [GIT PULL] Renesas ARM Based SoC R-Car SYSC Updates for v4.7 Arnd Bergmann
@ 2016-04-25 0:23 ` Simon Horman
0 siblings, 0 replies; 10+ messages in thread
From: Simon Horman @ 2016-04-25 0:23 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, Apr 24, 2016 at 11:40:47PM +0200, Arnd Bergmann wrote:
> On Thursday 21 April 2016 13:44:48 Simon Horman wrote:
> > Renesas ARM Based SoC R-Car SYSC Updates for v4.7
> >
> > * Add DT bindings for the R-Car System Controller.
> > An implementation is intended to follow.
> >
>
> This seems to best fit into next/dt, but we can also stick it into other
> branches if it's needed as a dependency.
Hi Arnd,
Unfortunately this is more complex than I expected when I prepared this
pull request though the pull request itself is still correct.
There are driver changes that seem to logically fit on top of this pull
request. Though strictly speaking I don't believe there are any hard
run-time dependencies.
Then there are DT changes to enable the new driver that have
hard run-time dependencies on the driver changes themselves.
I have queued things up as described above and you can see them in the
renesas-next-20160422v3-v4.6-rc1 tag of next branch of the renesas tree.
I am planning to send corresponding pull requests in the near future.
I would be very happy to hear any feedback you have before I take that
step.
^ permalink raw reply [flat|nested] 10+ messages in thread