linux-renesas-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/3] Add SoC identification support for RZ/V2M
@ 2022-11-15 12:38 Biju Das
  2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Biju Das @ 2022-11-15 12:38 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski
  Cc: Biju Das, Geert Uytterhoeven, Magnus Damm, linux-renesas-soc,
	devicetree, Chris Paterson, Fabrizio Castro

This patch series aims to add SoC identification support for RZ/V2M.

v2->v3:
 * Renamed the binding file based on the compatible
 * Dropped quotes from id and schema
 * Updated binding description
 * Renamed device node from system-configuration->system-controller
 * Renamed label name from sysc->sys
 * Fixed the indentation in example
 * Updated commit header and description for SoC dtsi
 * Updated label and node-names for SoC dtsi
 * system-controller is enabled by default as it do not need external
   resources from board.
v1->v2:
 * Moved the binding file from arm->soc/renesas
 * Updated the binding example
 * Removed config from patch#2 as it is already present
 * Removed extra space before 'else if' statement

Ref:
[1] https://patchwork.kernel.org/project/linux-renesas-soc/patch/20220321154232.56315-3-phil.edworthy@renesas.com/
[2] https://patchwork.kernel.org/project/linux-renesas-soc/patch/20220321154232.56315-8-phil.edworthy@renesas.com/

logs:
root@rzv2m:~# dmesg | grep "Renesas RZ/V2M"
[ 0.119196] Detected Renesas RZ/V2M r9a09g011 1.1

root@rzv2m:~# for i in machine family soc_id revision; do echo -n "$i: ";cat /sys/devices/soc0/$i; done
machine: RZ/V2M Evaluation Kit 2.0
family: RZ/V2M
soc_id: r9a09g011
revision: 1.1

Biju Das (1):
  arm64: dts: renesas: r9a09g011: Add system controller node

Phil Edworthy (2):
  dt-bindings: arm: renesas: Document Renesas RZ/V2M System
    Configuration
  soc: renesas: Identify RZ/V2M SoC

 .../soc/renesas/renesas,r9a09g011-sys.yaml    | 43 +++++++++++++++++++
 arch/arm64/boot/dts/renesas/r9a09g011.dtsi    |  5 +++
 drivers/soc/renesas/renesas-soc.c             | 22 ++++++++++
 3 files changed, 70 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/soc/renesas/renesas,r9a09g011-sys.yaml

-- 
2.25.1


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

* [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration
  2022-11-15 12:38 [PATCH v3 0/3] Add SoC identification support for RZ/V2M Biju Das
@ 2022-11-15 12:38 ` Biju Das
  2022-11-16  8:29   ` Geert Uytterhoeven
  2022-11-16  9:46   ` Krzysztof Kozlowski
  2022-11-15 12:38 ` [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC Biju Das
  2022-11-15 12:38 ` [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node Biju Das
  2 siblings, 2 replies; 9+ messages in thread
From: Biju Das @ 2022-11-15 12:38 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski
  Cc: Phil Edworthy, Geert Uytterhoeven, Magnus Damm,
	linux-renesas-soc, devicetree, Biju Das, Chris Paterson,
	Fabrizio Castro

From: Phil Edworthy <phil.edworthy@renesas.com>

Add DT binding documentation for System Configuration (SYS) found on
RZ/V2M SoC's.

SYS block contains the SYS_VERSION register which can be used to retrieve
SoC version information.

Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2->v3:
 * Renamed the file based on the compatible
 * Dropped quotes from id and schema
 * Updated description
 * Renamed device node from system-configuration->system-controller
 * Renamed label name from sysc->sys
 * Fixed the indentation in example
v1->v2:
 * Moved the file from arm->soc/renesas
 * Updated the path for binding file
 * Updated the example
---
 .../soc/renesas/renesas,r9a09g011-sys.yaml    | 43 +++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/soc/renesas/renesas,r9a09g011-sys.yaml

diff --git a/Documentation/devicetree/bindings/soc/renesas/renesas,r9a09g011-sys.yaml b/Documentation/devicetree/bindings/soc/renesas/renesas,r9a09g011-sys.yaml
new file mode 100644
index 000000000000..9e535bbacdda
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/renesas/renesas,r9a09g011-sys.yaml
@@ -0,0 +1,43 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/renesas/renesas,r9a09g011-sys.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Renesas RZ/V2M System Configuration (SYS)
+
+maintainers:
+  - Geert Uytterhoeven <geert+renesas@glider.be>
+
+description:
+  The RZ/V2M-alike SYS (System Configuration) controls the overall
+  configuration of the LSI and supports the following functions,
+  - Bank address settings for DMAC
+  - Bank address settings of the units for ICB
+  - ETHER AxCACHE[1] (C bit) control function
+  - RAMA initialization control
+  - MD[7:0] pin monitoring
+  - LSI version
+  - PCIe related settings
+  - WDT stop control
+  - Temperature sensor (TSU) monitor
+
+properties:
+  compatible:
+    const: renesas,r9a09g011-sys
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    sys: system-controller@a3f03000 {
+       compatible = "renesas,r9a09g011-sys";
+       reg = <0xa3f03000 0x400>;
+    };
-- 
2.25.1


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

* [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC
  2022-11-15 12:38 [PATCH v3 0/3] Add SoC identification support for RZ/V2M Biju Das
  2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
@ 2022-11-15 12:38 ` Biju Das
  2022-11-16  8:25   ` Geert Uytterhoeven
  2022-11-15 12:38 ` [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node Biju Das
  2 siblings, 1 reply; 9+ messages in thread
From: Biju Das @ 2022-11-15 12:38 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Phil Edworthy, Magnus Damm, linux-renesas-soc, Biju Das,
	Chris Paterson, Fabrizio Castro

From: Phil Edworthy <phil.edworthy@renesas.com>

Add support for identifying the RZ/V2M (R9A09G011) SoC.
Note that the SoC does not have a identification register.

Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
[biju: removed config changes ]
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2->v3:
 * No change.
v1->v2:
 * Removed KConfig changes as SoC config already present
 * Fixed an extra space before 'else if' statement.
---
 drivers/soc/renesas/renesas-soc.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/drivers/soc/renesas/renesas-soc.c b/drivers/soc/renesas/renesas-soc.c
index 621ceaa047d4..468ebce1ea88 100644
--- a/drivers/soc/renesas/renesas-soc.c
+++ b/drivers/soc/renesas/renesas-soc.c
@@ -76,6 +76,10 @@ static const struct renesas_family fam_rzv2l __initconst __maybe_unused = {
 	.name	= "RZ/V2L",
 };
 
+static const struct renesas_family fam_rzv2m __initconst __maybe_unused = {
+	.name	= "RZ/V2M",
+};
+
 static const struct renesas_family fam_shmobile __initconst __maybe_unused = {
 	.name	= "SH-Mobile",
 	.reg	= 0xe600101c,		/* CCCR (Common Chip Code Register) */
@@ -171,6 +175,10 @@ static const struct renesas_soc soc_rz_v2l __initconst __maybe_unused = {
 	.id     = 0x8447447,
 };
 
+static const struct renesas_soc soc_rz_v2m __initconst __maybe_unused = {
+	.family = &fam_rzv2m,
+};
+
 static const struct renesas_soc soc_rcar_m1a __initconst __maybe_unused = {
 	.family	= &fam_rcar_gen1,
 };
@@ -380,6 +388,9 @@ static const struct of_device_id renesas_socs[] __initconst = {
 #if defined(CONFIG_ARCH_R9A07G054)
 	{ .compatible = "renesas,r9a07g054",	.data = &soc_rz_v2l },
 #endif
+#if defined(CONFIG_ARCH_R9A09G011)
+	{ .compatible = "renesas,r9a09g011",	.data = &soc_rz_v2m },
+#endif
 #ifdef CONFIG_ARCH_SH73A0
 	{ .compatible = "renesas,sh73a0",	.data = &soc_shmobile_ag5 },
 #endif
@@ -405,6 +416,11 @@ static const struct renesas_id id_rzg2l __initconst = {
 	.mask = 0xfffffff,
 };
 
+static const struct renesas_id id_rzv2m __initconst = {
+	.offset = 0x104,
+	.mask = 0xff,
+};
+
 static const struct renesas_id id_prr __initconst = {
 	.offset = 0,
 	.mask = 0xff00,
@@ -415,6 +431,7 @@ static const struct of_device_id renesas_ids[] __initconst = {
 	{ .compatible = "renesas,r9a07g043-sysc",	.data = &id_rzg2l },
 	{ .compatible = "renesas,r9a07g044-sysc",	.data = &id_rzg2l },
 	{ .compatible = "renesas,r9a07g054-sysc",	.data = &id_rzg2l },
+	{ .compatible = "renesas,r9a09g011-sys",	.data = &id_rzv2m },
 	{ .compatible = "renesas,prr",			.data = &id_prr },
 	{ /* sentinel */ }
 };
@@ -485,6 +502,11 @@ static int __init renesas_soc_init(void)
 			soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%u",
 							   eshi);
 			rev_prefix = "Rev ";
+		} else if (id == &id_rzv2m) {
+			eshi = ((product >> 4) & 0x0f);
+			eslo = product & 0xf;
+			soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%u.%u",
+							   eshi, eslo);
 		}
 
 		if (soc->id &&
-- 
2.25.1


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

* [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node
  2022-11-15 12:38 [PATCH v3 0/3] Add SoC identification support for RZ/V2M Biju Das
  2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
  2022-11-15 12:38 ` [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC Biju Das
@ 2022-11-15 12:38 ` Biju Das
  2022-11-16  8:29   ` Geert Uytterhoeven
  2 siblings, 1 reply; 9+ messages in thread
From: Biju Das @ 2022-11-15 12:38 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski
  Cc: Biju Das, Geert Uytterhoeven, Magnus Damm, linux-renesas-soc,
	devicetree, Chris Paterson, Fabrizio Castro

Add system controller node to RZ/V2M SoC dtsi.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2->v3:
 * Updated commit header and description 
 * Updated label and node-names
 * system-controller node is enabled by default as it do not need external
   resources from board.
v2:
 * New patch
---
 arch/arm64/boot/dts/renesas/r9a09g011.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/r9a09g011.dtsi b/arch/arm64/boot/dts/renesas/r9a09g011.dtsi
index ca9f022d6632..0373ec409d54 100644
--- a/arch/arm64/boot/dts/renesas/r9a09g011.dtsi
+++ b/arch/arm64/boot/dts/renesas/r9a09g011.dtsi
@@ -130,6 +130,11 @@ cpg: clock-controller@a3500000 {
 			#power-domain-cells = <0>;
 		};
 
+		sys: system-controller@a3f03000 {
+			compatible = "renesas,r9a09g011-sys";
+			reg = <0 0xa3f03000 0 0x400>;
+		};
+
 		i2c0: i2c@a4030000 {
 			#address-cells = <1>;
 			#size-cells = <0>;
-- 
2.25.1


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

* Re: [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC
  2022-11-15 12:38 ` [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC Biju Das
@ 2022-11-16  8:25   ` Geert Uytterhoeven
  0 siblings, 0 replies; 9+ messages in thread
From: Geert Uytterhoeven @ 2022-11-16  8:25 UTC (permalink / raw)
  To: Biju Das
  Cc: Phil Edworthy, Magnus Damm, linux-renesas-soc, Chris Paterson,
	Fabrizio Castro

On Tue, Nov 15, 2022 at 1:38 PM Biju Das <biju.das.jz@bp.renesas.com> wrote:
> From: Phil Edworthy <phil.edworthy@renesas.com>
>
> Add support for identifying the RZ/V2M (R9A09G011) SoC.
> Note that the SoC does not have a identification register.
>
> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
> [biju: removed config changes ]
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> v2->v3:
>  * No change.
> v1->v2:
>  * Removed KConfig changes as SoC config already present
>  * Fixed an extra space before 'else if' statement.

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.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

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

* Re: [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration
  2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
@ 2022-11-16  8:29   ` Geert Uytterhoeven
  2022-11-16  9:46   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 9+ messages in thread
From: Geert Uytterhoeven @ 2022-11-16  8:29 UTC (permalink / raw)
  To: Biju Das
  Cc: Rob Herring, Krzysztof Kozlowski, Magnus Damm, linux-renesas-soc,
	devicetree, Chris Paterson, Fabrizio Castro

On Tue, Nov 15, 2022 at 1:38 PM Biju Das <biju.das.jz@bp.renesas.com> wrote:
> From: Phil Edworthy <phil.edworthy@renesas.com>
>
> Add DT binding documentation for System Configuration (SYS) found on
> RZ/V2M SoC's.
>
> SYS block contains the SYS_VERSION register which can be used to retrieve
> SoC version information.
>
> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> v2->v3:
>  * Renamed the file based on the compatible
>  * Dropped quotes from id and schema
>  * Updated description
>  * Renamed device node from system-configuration->system-controller
>  * Renamed label name from sysc->sys
>  * Fixed the indentation in example
> v1->v2:
>  * Moved the file from arm->soc/renesas
>  * Updated the path for binding file
>  * Updated the example

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.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

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

* Re: [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node
  2022-11-15 12:38 ` [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node Biju Das
@ 2022-11-16  8:29   ` Geert Uytterhoeven
  0 siblings, 0 replies; 9+ messages in thread
From: Geert Uytterhoeven @ 2022-11-16  8:29 UTC (permalink / raw)
  To: Biju Das
  Cc: Rob Herring, Krzysztof Kozlowski, Magnus Damm, linux-renesas-soc,
	devicetree, Chris Paterson, Fabrizio Castro

On Tue, Nov 15, 2022 at 1:38 PM Biju Das <biju.das.jz@bp.renesas.com> wrote:
> Add system controller node to RZ/V2M SoC dtsi.
>
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> v2->v3:
>  * Updated commit header and description
>  * Updated label and node-names
>  * system-controller node is enabled by default as it do not need external
>    resources from board.

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.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

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

* Re: [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration
  2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
  2022-11-16  8:29   ` Geert Uytterhoeven
@ 2022-11-16  9:46   ` Krzysztof Kozlowski
  2022-11-16  9:56     ` Biju Das
  1 sibling, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-16  9:46 UTC (permalink / raw)
  To: Biju Das, Rob Herring, Krzysztof Kozlowski
  Cc: Phil Edworthy, Geert Uytterhoeven, Magnus Damm,
	linux-renesas-soc, devicetree, Chris Paterson, Fabrizio Castro

On 15/11/2022 13:38, Biju Das wrote:
> From: Phil Edworthy <phil.edworthy@renesas.com>
> 
> Add DT binding documentation for System Configuration (SYS) found on
> RZ/V2M SoC's.

Thank you for your patch. There is something to discuss/improve.

> +properties:
> +  compatible:
> +    const: renesas,r9a09g011-sys
> +
> +  reg:
> +    maxItems: 1
> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    sys: system-controller@a3f03000 {
> +       compatible = "renesas,r9a09g011-sys";
> +       reg = <0xa3f03000 0x400>;

Use 4 spaces for example indentation (two is also okay, but not three).

With this fixed:

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


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

* RE: [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration
  2022-11-16  9:46   ` Krzysztof Kozlowski
@ 2022-11-16  9:56     ` Biju Das
  0 siblings, 0 replies; 9+ messages in thread
From: Biju Das @ 2022-11-16  9:56 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski
  Cc: Phil Edworthy, Geert Uytterhoeven, Magnus Damm,
	linux-renesas-soc, devicetree, Chris Paterson, Fabrizio Castro

Hi Krzysztof Kozlowski,

> Subject: Re: [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas
> RZ/V2M System Configuration
> 
> On 15/11/2022 13:38, Biju Das wrote:
> > From: Phil Edworthy <phil.edworthy@renesas.com>
> >
> > Add DT binding documentation for System Configuration (SYS) found on
> > RZ/V2M SoC's.
> 
> Thank you for your patch. There is something to discuss/improve.
> 
> > +properties:
> > +  compatible:
> > +    const: renesas,r9a09g011-sys
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +required:
> > +  - compatible
> > +  - reg
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > +  - |
> > +    sys: system-controller@a3f03000 {
> > +       compatible = "renesas,r9a09g011-sys";
> > +       reg = <0xa3f03000 0x400>;
> 
> Use 4 spaces for example indentation (two is also okay, but not three).

Sure, will fix it to 2 spaces.

Cheers,
Biju
> 
> With this fixed:
> 
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> Best regards,
> Krzysztof


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

end of thread, other threads:[~2022-11-16  9:56 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-15 12:38 [PATCH v3 0/3] Add SoC identification support for RZ/V2M Biju Das
2022-11-15 12:38 ` [PATCH v3 1/3] dt-bindings: arm: renesas: Document Renesas RZ/V2M System Configuration Biju Das
2022-11-16  8:29   ` Geert Uytterhoeven
2022-11-16  9:46   ` Krzysztof Kozlowski
2022-11-16  9:56     ` Biju Das
2022-11-15 12:38 ` [PATCH v3 2/3] soc: renesas: Identify RZ/V2M SoC Biju Das
2022-11-16  8:25   ` Geert Uytterhoeven
2022-11-15 12:38 ` [PATCH v3 3/3] arm64: dts: renesas: r9a09g011: Add system controller node Biju Das
2022-11-16  8:29   ` Geert Uytterhoeven

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).