* [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
@ 2016-05-04 14:36 Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support Geert Uytterhoeven
` (3 more replies)
0 siblings, 4 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2016-05-04 14:36 UTC (permalink / raw)
To: Simon Horman, Magnus Damm
Cc: Laurent Pinchart, linux-renesas-soc-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Geert Uytterhoeven
Hi Simon, Magnus,
This patch series adds support for the power areas exposed by the System
Controller on the Renesas R-Car M3-W SoC.
/sys/kernel/debug/pm_genpd/pm_genpd_summary output:
domain status slaves
/device runtime status
----------------------------------------------------------------------
clock-controller on
a3ir off-0
3dg-b off-0
3dg-a off-0 3dg-b
a2vc1 off-0
a2vc0 off-0
a3vc off-0 a2vc0, a2vc1
cr7 off-0
ca53-cpu3 on
ca53-cpu2 on
ca53-cpu1 on
ca53-cpu0 on
ca53-scu on ca53-cpu0, ca53-cpu1, ca53-cpu2, ca53-cpu3
ca57-cpu1 on
ca57-cpu0 on
ca57-scu on ca57-cpu0, ca57-cpu1
always-on on ca57-scu, ca53-scu, cr7, a3vc, 3dg-a, a3ir
/devices/platform/soc/e6e88000.serial active
For your convenience, I've pushed this series to the
topic/r8a7796-sysc-v1 branch of
https://git.kernel.org/cgit/linux/kernel/git/geert/renesas-drivers.git.
Integration with renesas-drivers-2016-04-26-v4.6-rc5, and minimal board
integration for testing is available in the topic/gen3-latest branch.
This has received minimal testing on r8a7796/salvator-x.
Thanks for your comments!
Geert Uytterhoeven (3):
soc: renesas: rcar-sysc: Document r8a7796 support
soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions
soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
.../bindings/power/renesas,rcar-sysc.txt | 1 +
drivers/soc/renesas/Makefile | 1 +
drivers/soc/renesas/r8a7796-sysc.c | 48 ++++++++++++++++++++++
drivers/soc/renesas/rcar-sysc.c | 3 ++
drivers/soc/renesas/rcar-sysc.h | 1 +
include/dt-bindings/power/r8a7796-sysc.h | 36 ++++++++++++++++
6 files changed, 90 insertions(+)
create mode 100644 drivers/soc/renesas/r8a7796-sysc.c
create mode 100644 include/dt-bindings/power/r8a7796-sysc.h
--
1.9.1
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support
2016-05-04 14:36 [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
@ 2016-05-04 14:36 ` Geert Uytterhoeven
2016-05-05 22:13 ` Rob Herring
2016-05-04 14:36 ` [PATCH 2/3] soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions Geert Uytterhoeven
` (2 subsequent siblings)
3 siblings, 1 reply; 6+ messages in thread
From: Geert Uytterhoeven @ 2016-05-04 14:36 UTC (permalink / raw)
To: Simon Horman, Magnus Damm
Cc: Laurent Pinchart, linux-renesas-soc, devicetree, Geert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt b/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
index b74e4d4785ab2d60..0725fb37a973d8eb 100644
--- a/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
+++ b/Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt
@@ -14,6 +14,7 @@ Required properties:
- "renesas,r8a7793-sysc" (R-Car M2-N)
- "renesas,r8a7794-sysc" (R-Car E2)
- "renesas,r8a7795-sysc" (R-Car H3)
+ - "renesas,r8a7796-sysc" (R-Car M3-W)
- reg: Address start and address range for the device.
- #power-domain-cells: Must be 1.
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/3] soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions
2016-05-04 14:36 [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support Geert Uytterhoeven
@ 2016-05-04 14:36 ` Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 3/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
2016-05-09 12:01 ` [PATCH 0/3] " Laurent Pinchart
3 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2016-05-04 14:36 UTC (permalink / raw)
To: Simon Horman, Magnus Damm
Cc: Laurent Pinchart, linux-renesas-soc, devicetree, Geert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
include/dt-bindings/power/r8a7796-sysc.h | 36 ++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 include/dt-bindings/power/r8a7796-sysc.h
diff --git a/include/dt-bindings/power/r8a7796-sysc.h b/include/dt-bindings/power/r8a7796-sysc.h
new file mode 100644
index 0000000000000000..5b4daab44daa0057
--- /dev/null
+++ b/include/dt-bindings/power/r8a7796-sysc.h
@@ -0,0 +1,36 @@
+/*
+ * 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_R8A7796_SYSC_H__
+#define __DT_BINDINGS_POWER_R8A7796_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 R8A7796_PD_CA57_CPU0 0
+#define R8A7796_PD_CA57_CPU1 1
+#define R8A7796_PD_CA53_CPU0 5
+#define R8A7796_PD_CA53_CPU1 6
+#define R8A7796_PD_CA53_CPU2 7
+#define R8A7796_PD_CA53_CPU3 8
+#define R8A7796_PD_CA57_SCU 12
+#define R8A7796_PD_CR7 13
+#define R8A7796_PD_A3VC 14
+#define R8A7796_PD_3DG_A 17
+#define R8A7796_PD_3DG_B 18
+#define R8A7796_PD_CA53_SCU 21
+#define R8A7796_PD_A3IR 24
+#define R8A7796_PD_A2VC0 25
+#define R8A7796_PD_A2VC1 26
+
+/* Always-on power area */
+#define R8A7796_PD_ALWAYS_ON 32
+
+#endif /* __DT_BINDINGS_POWER_R8A7796_SYSC_H__ */
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 3/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
2016-05-04 14:36 [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 2/3] soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions Geert Uytterhoeven
@ 2016-05-04 14:36 ` Geert Uytterhoeven
2016-05-09 12:01 ` [PATCH 0/3] " Laurent Pinchart
3 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2016-05-04 14:36 UTC (permalink / raw)
To: Simon Horman, Magnus Damm
Cc: Laurent Pinchart, linux-renesas-soc, devicetree, Geert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
drivers/soc/renesas/Makefile | 1 +
drivers/soc/renesas/r8a7796-sysc.c | 48 ++++++++++++++++++++++++++++++++++++++
drivers/soc/renesas/rcar-sysc.c | 3 +++
drivers/soc/renesas/rcar-sysc.h | 1 +
4 files changed, 53 insertions(+)
create mode 100644 drivers/soc/renesas/r8a7796-sysc.c
diff --git a/drivers/soc/renesas/Makefile b/drivers/soc/renesas/Makefile
index 151fcd3f025b01f3..cd85cd5e6a01517c 100644
--- a/drivers/soc/renesas/Makefile
+++ b/drivers/soc/renesas/Makefile
@@ -5,3 +5,4 @@ obj-$(CONFIG_ARCH_R8A7791) += rcar-sysc.o r8a7791-sysc.o
obj-$(CONFIG_ARCH_R8A7793) += rcar-sysc.o r8a7791-sysc.o
obj-$(CONFIG_ARCH_R8A7794) += rcar-sysc.o r8a7794-sysc.o
obj-$(CONFIG_ARCH_R8A7795) += rcar-sysc.o r8a7795-sysc.o
+obj-$(CONFIG_ARCH_R8A7796) += rcar-sysc.o r8a7796-sysc.o
diff --git a/drivers/soc/renesas/r8a7796-sysc.c b/drivers/soc/renesas/r8a7796-sysc.c
new file mode 100644
index 0000000000000000..f700c842b9e1d010
--- /dev/null
+++ b/drivers/soc/renesas/r8a7796-sysc.c
@@ -0,0 +1,48 @@
+/*
+ * Renesas R-Car M3-W System Controller
+ *
+ * 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.
+ */
+
+#include <linux/bug.h>
+#include <linux/kernel.h>
+
+#include <dt-bindings/power/r8a7796-sysc.h>
+
+#include "rcar-sysc.h"
+
+static const struct rcar_sysc_area r8a7796_areas[] __initconst = {
+ { "always-on", 0, 0, R8A7796_PD_ALWAYS_ON, -1, PD_ALWAYS_ON },
+ { "ca57-scu", 0x1c0, 0, R8A7796_PD_CA57_SCU, R8A7796_PD_ALWAYS_ON,
+ PD_SCU },
+ { "ca57-cpu0", 0x80, 0, R8A7796_PD_CA57_CPU0, R8A7796_PD_CA57_SCU,
+ PD_CPU_NOCR },
+ { "ca57-cpu1", 0x80, 1, R8A7796_PD_CA57_CPU1, R8A7796_PD_CA57_SCU,
+ PD_CPU_NOCR },
+ { "ca53-scu", 0x140, 0, R8A7796_PD_CA53_SCU, R8A7796_PD_ALWAYS_ON,
+ PD_SCU },
+ { "ca53-cpu0", 0x200, 0, R8A7796_PD_CA53_CPU0, R8A7796_PD_CA53_SCU,
+ PD_CPU_NOCR },
+ { "ca53-cpu1", 0x200, 1, R8A7796_PD_CA53_CPU1, R8A7796_PD_CA53_SCU,
+ PD_CPU_NOCR },
+ { "ca53-cpu2", 0x200, 2, R8A7796_PD_CA53_CPU2, R8A7796_PD_CA53_SCU,
+ PD_CPU_NOCR },
+ { "ca53-cpu3", 0x200, 3, R8A7796_PD_CA53_CPU3, R8A7796_PD_CA53_SCU,
+ PD_CPU_NOCR },
+ { "cr7", 0x240, 0, R8A7796_PD_CR7, R8A7796_PD_ALWAYS_ON },
+ { "a3vc", 0x380, 0, R8A7796_PD_A3VC, R8A7796_PD_ALWAYS_ON },
+ { "a2vc0", 0x3c0, 0, R8A7796_PD_A2VC0, R8A7796_PD_A3VC },
+ { "a2vc1", 0x3c0, 1, R8A7796_PD_A2VC1, R8A7796_PD_A3VC },
+ { "3dg-a", 0x100, 0, R8A7796_PD_3DG_A, R8A7796_PD_ALWAYS_ON },
+ { "3dg-b", 0x100, 1, R8A7796_PD_3DG_B, R8A7796_PD_3DG_A },
+ { "a3ir", 0x180, 0, R8A7796_PD_A3IR, R8A7796_PD_ALWAYS_ON },
+};
+
+const struct rcar_sysc_info r8a7796_sysc_info __initconst = {
+ .areas = r8a7796_areas,
+ .num_areas = ARRAY_SIZE(r8a7796_areas),
+};
diff --git a/drivers/soc/renesas/rcar-sysc.c b/drivers/soc/renesas/rcar-sysc.c
index 79dbc770895f4b6d..fc997d4d2a4afb7e 100644
--- a/drivers/soc/renesas/rcar-sysc.c
+++ b/drivers/soc/renesas/rcar-sysc.c
@@ -303,6 +303,9 @@ static const struct of_device_id rcar_sysc_matches[] = {
#ifdef CONFIG_ARCH_R8A7795
{ .compatible = "renesas,r8a7795-sysc", .data = &r8a7795_sysc_info },
#endif
+#ifdef CONFIG_ARCH_R8A7796
+ { .compatible = "renesas,r8a7796-sysc", .data = &r8a7796_sysc_info },
+#endif
{ /* sentinel */ }
};
diff --git a/drivers/soc/renesas/rcar-sysc.h b/drivers/soc/renesas/rcar-sysc.h
index 5e766174c2f47eb0..4ac3d7bf7f38043c 100644
--- a/drivers/soc/renesas/rcar-sysc.h
+++ b/drivers/soc/renesas/rcar-sysc.h
@@ -55,4 +55,5 @@ extern const struct rcar_sysc_info r8a7790_sysc_info;
extern const struct rcar_sysc_info r8a7791_sysc_info;
extern const struct rcar_sysc_info r8a7794_sysc_info;
extern const struct rcar_sysc_info r8a7795_sysc_info;
+extern const struct rcar_sysc_info r8a7796_sysc_info;
#endif /* __SOC_RENESAS_RCAR_SYSC_H__ */
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support
2016-05-04 14:36 ` [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support Geert Uytterhoeven
@ 2016-05-05 22:13 ` Rob Herring
0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2016-05-05 22:13 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Simon Horman, Magnus Damm, Laurent Pinchart, linux-renesas-soc,
devicetree
On Wed, May 04, 2016 at 04:36:08PM +0200, Geert Uytterhoeven wrote:
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Documentation/devicetree/bindings/power/renesas,rcar-sysc.txt | 1 +
> 1 file changed, 1 insertion(+)
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
2016-05-04 14:36 [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
` (2 preceding siblings ...)
2016-05-04 14:36 ` [PATCH 3/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
@ 2016-05-09 12:01 ` Laurent Pinchart
3 siblings, 0 replies; 6+ messages in thread
From: Laurent Pinchart @ 2016-05-09 12:01 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Simon Horman, Magnus Damm, linux-renesas-soc, devicetree
Hi Geert,
Thank you for the patches.
For the whole series,
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
On Wednesday 04 May 2016 16:36:07 Geert Uytterhoeven wrote:
> Hi Simon, Magnus,
>
> This patch series adds support for the power areas exposed by the System
> Controller on the Renesas R-Car M3-W SoC.
>
> /sys/kernel/debug/pm_genpd/pm_genpd_summary output:
>
> domain status slaves
> /device runtime status
> ----------------------------------------------------------------------
> clock-controller on
> a3ir off-0
> 3dg-b off-0
> 3dg-a off-0 3dg-b
> a2vc1 off-0
> a2vc0 off-0
> a3vc off-0 a2vc0, a2vc1
> cr7 off-0
> ca53-cpu3 on
> ca53-cpu2 on
> ca53-cpu1 on
> ca53-cpu0 on
> ca53-scu on ca53-cpu0, ca53-cpu1,
> ca53-cpu2, ca53-cpu3 ca57-cpu1 on
> ca57-cpu0 on
> ca57-scu on ca57-cpu0, ca57-cpu1
> always-on on ca57-scu, ca53-scu, cr7,
> a3vc, 3dg-a, a3ir /devices/platform/soc/e6e88000.serial
> active
>
> For your convenience, I've pushed this series to the
> topic/r8a7796-sysc-v1 branch of
> https://git.kernel.org/cgit/linux/kernel/git/geert/renesas-drivers.git.
>
> Integration with renesas-drivers-2016-04-26-v4.6-rc5, and minimal board
> integration for testing is available in the topic/gen3-latest branch.
>
> This has received minimal testing on r8a7796/salvator-x.
>
> Thanks for your comments!
>
> Geert Uytterhoeven (3):
> soc: renesas: rcar-sysc: Document r8a7796 support
> soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions
> soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
>
> .../bindings/power/renesas,rcar-sysc.txt | 1 +
> drivers/soc/renesas/Makefile | 1 +
> drivers/soc/renesas/r8a7796-sysc.c | 48 +++++++++++++++++++
> drivers/soc/renesas/rcar-sysc.c | 3 ++
> drivers/soc/renesas/rcar-sysc.h | 1 +
> include/dt-bindings/power/r8a7796-sysc.h | 36 ++++++++++++++++
> 6 files changed, 90 insertions(+)
> create mode 100644 drivers/soc/renesas/r8a7796-sysc.c
> create mode 100644 include/dt-bindings/power/r8a7796-sysc.h
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-05-09 12:01 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-04 14:36 [PATCH 0/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 1/3] soc: renesas: rcar-sysc: Document r8a7796 support Geert Uytterhoeven
2016-05-05 22:13 ` Rob Herring
2016-05-04 14:36 ` [PATCH 2/3] soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions Geert Uytterhoeven
2016-05-04 14:36 ` [PATCH 3/3] soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas Geert Uytterhoeven
2016-05-09 12:01 ` [PATCH 0/3] " Laurent Pinchart
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).