All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH/RFC 0/6] R-Car V3U GPIO support
@ 2020-10-19 12:06 Geert Uytterhoeven
  2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
                   ` (5 more replies)
  0 siblings, 6 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

	Hi all,

This RFC patch series adds support for the GPIO blocks on the R-Car V3U
(r8a77990) SoC.  This includes clock (incl. some drive-by fixes), DT
binding, driver, and DTS updates.

Due to lack of hardware, this is compile-tested only.

Thanks for your comments!

Geert Uytterhoeven (5):
  [RFC] clk: renesas: r8a779a0: Remove non-existent S2 clock
  [RFC] clk: renesas: r8a779a0: Fix parent of CBFUSA clock
  [RFC] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  [RFC] dt-bindings: gpio: rcar: Add r8a779a0 support
  [RFC] arm64: dts: r8a779a0: Add GPIO nodes

Phong Hoang (1):
  [RFC] gpio: rcar: Add support for R-Car V3U

 .../bindings/gpio/renesas,rcar-gpio.yaml      |   3 +
 arch/arm64/boot/dts/renesas/r8a779a0.dtsi     | 140 ++++++++++++++++++
 drivers/clk/renesas/r8a779a0-cpg-mssr.c       |   8 +-
 drivers/gpio/gpio-rcar.c                      |  23 +++
 4 files changed, 172 insertions(+), 2 deletions(-)

-- 
2.17.1

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] 20+ messages in thread

* [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-10-21  7:37   ` Yoshihiro Shimoda
  2020-12-30 16:04   ` Wolfram Sang
  2020-10-19 12:06 ` [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock Geert Uytterhoeven
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

The S2 internal core clock does not exist on R-Car V3U. Remove it.

Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 drivers/clk/renesas/r8a779a0-cpg-mssr.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/clk/renesas/r8a779a0-cpg-mssr.c b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
index 2a00eb82013f3829..496b7d3f94c8f65d 100644
--- a/drivers/clk/renesas/r8a779a0-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
@@ -70,7 +70,6 @@ enum clk_ids {
 	CLK_PLL5_DIV2,
 	CLK_PLL5_DIV4,
 	CLK_S1,
-	CLK_S2,
 	CLK_S3,
 	CLK_SDSRC,
 	CLK_RPCSRC,
-- 
2.17.1


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

* [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
  2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-10-21  7:37   ` Yoshihiro Shimoda
  2020-12-30 16:04   ` Wolfram Sang
  2020-10-19 12:06 ` [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks Geert Uytterhoeven
                   ` (3 subsequent siblings)
  5 siblings, 2 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

According to Figure 8.1.1 ("Block Diagram of CPG (R-Car V3U-AD)") in the
R-Car V3U Series User's Manual Rev. 0.5, the parent of the CBFUSA clock
is EXTAL.

Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 drivers/clk/renesas/r8a779a0-cpg-mssr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clk/renesas/r8a779a0-cpg-mssr.c b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
index 496b7d3f94c8f65d..968be8206a480015 100644
--- a/drivers/clk/renesas/r8a779a0-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
@@ -129,7 +129,7 @@ static const struct cpg_core_clk r8a779a0_core_clks[] __initconst = {
 	DEF_FIXED("icu",	R8A779A0_CLK_ICU,	CLK_PLL5_DIV4,	2, 1),
 	DEF_FIXED("icud2",	R8A779A0_CLK_ICUD2,	CLK_PLL5_DIV4,	4, 1),
 	DEF_FIXED("vcbus",	R8A779A0_CLK_VCBUS,	CLK_PLL5_DIV4,	1, 1),
-	DEF_FIXED("cbfusa",	R8A779A0_CLK_CBFUSA,	CLK_MAIN,	2, 1),
+	DEF_FIXED("cbfusa",	R8A779A0_CLK_CBFUSA,	CLK_EXTAL,	2, 1),
 
 	DEF_DIV6P1("mso",	R8A779A0_CLK_MSO,	CLK_PLL5_DIV4,	0x87c),
 	DEF_DIV6P1("canfd",	R8A779A0_CLK_CANFD,	CLK_PLL5_DIV4,	0x878),
-- 
2.17.1


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

* [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
  2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
  2020-10-19 12:06 ` [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-10-21  7:40   ` Yoshihiro Shimoda
  2020-12-30 16:05   ` Wolfram Sang
  2020-10-19 12:06 ` [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support Geert Uytterhoeven
                   ` (2 subsequent siblings)
  5 siblings, 2 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

Add the module clocks used by the Pin Function Controller (PFC) and
General Purpose Input/Output (GPIO) blocks, and their parent clock CP.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Untested on actual hardware.

Note that the BSP uses MAIN instead of EXTAL, just like for the CBFUSA
clock.  However, according to Figure 8.1.1 ("Block Diagram of CPG (R-Car
V3U-AD)") in the R-Car V3U Series User's Manual Rev. 0.5, the parent of
the CP clock is EXTAL, which matches earlier R-Car Gen3 SoCs.
---
 drivers/clk/renesas/r8a779a0-cpg-mssr.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/clk/renesas/r8a779a0-cpg-mssr.c b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
index 968be8206a480015..9d414ad9dd4469d2 100644
--- a/drivers/clk/renesas/r8a779a0-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a779a0-cpg-mssr.c
@@ -130,6 +130,7 @@ static const struct cpg_core_clk r8a779a0_core_clks[] __initconst = {
 	DEF_FIXED("icud2",	R8A779A0_CLK_ICUD2,	CLK_PLL5_DIV4,	4, 1),
 	DEF_FIXED("vcbus",	R8A779A0_CLK_VCBUS,	CLK_PLL5_DIV4,	1, 1),
 	DEF_FIXED("cbfusa",	R8A779A0_CLK_CBFUSA,	CLK_EXTAL,	2, 1),
+	DEF_FIXED("cp",		R8A779A0_CLK_CP,	CLK_EXTAL,	2, 1),
 
 	DEF_DIV6P1("mso",	R8A779A0_CLK_MSO,	CLK_PLL5_DIV4,	0x87c),
 	DEF_DIV6P1("canfd",	R8A779A0_CLK_CANFD,	CLK_PLL5_DIV4,	0x878),
@@ -180,6 +181,10 @@ static const struct mssr_mod_clk r8a779a0_mod_clks[] __initconst = {
 	DEF_MOD("vin35",	827,	R8A779A0_CLK_S1D1),
 	DEF_MOD("vin36",	828,	R8A779A0_CLK_S1D1),
 	DEF_MOD("vin37",	829,	R8A779A0_CLK_S1D1),
+	DEF_MOD("pfc0",		915,	R8A779A0_CLK_CP),
+	DEF_MOD("pfc1",		916,	R8A779A0_CLK_CP),
+	DEF_MOD("pfc2",		917,	R8A779A0_CLK_CP),
+	DEF_MOD("pfc3",		918,	R8A779A0_CLK_CP),
 };
 
 static spinlock_t cpg_lock;
-- 
2.17.1


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

* [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
                   ` (2 preceding siblings ...)
  2020-10-19 12:06 ` [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-12-30 16:05   ` Wolfram Sang
  2020-10-19 12:06 ` [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U Geert Uytterhoeven
  2020-10-19 12:06 ` [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes Geert Uytterhoeven
  5 siblings, 1 reply; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

Document the compatible value for the GPIO block in the Renesas R-Car
V3U (R8A779A0) SoC.

While this GPIO block is mostly compatible with GPIO blocks on R-Car
Gen3 SoCs, there are small differences, and one of the new registers
needs to be configured differently from its initial reset state.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Untested on actual hardware.
---
 Documentation/devicetree/bindings/gpio/renesas,rcar-gpio.yaml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/gpio/renesas,rcar-gpio.yaml b/Documentation/devicetree/bindings/gpio/renesas,rcar-gpio.yaml
index 5026662e45081b6c..f2541739ee3b9f7c 100644
--- a/Documentation/devicetree/bindings/gpio/renesas,rcar-gpio.yaml
+++ b/Documentation/devicetree/bindings/gpio/renesas,rcar-gpio.yaml
@@ -48,6 +48,9 @@ properties:
               - renesas,gpio-r8a77995     # R-Car D3
           - const: renesas,rcar-gen3-gpio # R-Car Gen3 or RZ/G2
 
+      - items:
+          - const: renesas,gpio-r8a779a0  # R-Car V3U
+
   reg:
     maxItems: 1
 
-- 
2.17.1


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

* [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
                   ` (3 preceding siblings ...)
  2020-10-19 12:06 ` [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-10-20  8:22   ` Geert Uytterhoeven
  2020-10-21 16:15   ` Ulrich Hecht
  2020-10-19 12:06 ` [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes Geert Uytterhoeven
  5 siblings, 2 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Phong Hoang,
	Geert Uytterhoeven

From: Phong Hoang <phong.hoang.wz@renesas.com>

Add support for the R-Car V3U (r8a779a0) SoC.
This includes support for the new "General Input Enable" register to
control input enable.

Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Untested on actual hardware.

Should input be enabled unconditionally, as recommended by the Hardware
Manual for backwards compatibility with existing software?
As per (errata?) commit ae9550f635533b1c ("gpio-rcar: Use OUTDT when
reading GPIOs configured as output"), the gpio-rcar driver does not use
the INDT register to read the status of a GPIO line when configured for
output.
---
 drivers/gpio/gpio-rcar.c | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/drivers/gpio/gpio-rcar.c b/drivers/gpio/gpio-rcar.c
index a924cf8ac8df7f8f..44d09a0028db49e9 100644
--- a/drivers/gpio/gpio-rcar.c
+++ b/drivers/gpio/gpio-rcar.c
@@ -42,6 +42,7 @@ struct gpio_rcar_priv {
 	atomic_t wakeup_path;
 	bool has_outdtsel;
 	bool has_both_edge_trigger;
+	bool has_inen;
 	struct gpio_rcar_bank_info bank_info;
 };
 
@@ -58,6 +59,7 @@ struct gpio_rcar_priv {
 #define FILONOFF 0x28	/* Chattering Prevention On/Off Register */
 #define OUTDTSEL 0x40	/* Output Data Select Register */
 #define BOTHEDGE 0x4c	/* One Edge/Both Edge Select Register */
+#define INEN 0x50	/* General Input Enable Register */
 
 #define RCAR_MAX_GPIO_PER_BANK		32
 
@@ -126,6 +128,10 @@ static void gpio_rcar_config_interrupt_input_mode(struct gpio_rcar_priv *p,
 	if (p->has_both_edge_trigger)
 		gpio_rcar_modify_bit(p, BOTHEDGE, hwirq, both);
 
+	/* Select "Input Enable" in INEN */
+	if (p->has_inen)
+		gpio_rcar_modify_bit(p, INEN, hwirq, true);
+
 	/* Select "Interrupt Input Mode" in IOINTSEL */
 	gpio_rcar_modify_bit(p, IOINTSEL, hwirq, true);
 
@@ -231,6 +237,10 @@ static void gpio_rcar_config_general_input_output_mode(struct gpio_chip *chip,
 	/* Configure positive logic in POSNEG */
 	gpio_rcar_modify_bit(p, POSNEG, gpio, false);
 
+	/* Select "Input Enable/Disable" in INEN */
+	if (p->has_inen)
+		gpio_rcar_modify_bit(p, INEN, gpio, !output);
+
 	/* Select "General Input/Output Mode" in IOINTSEL */
 	gpio_rcar_modify_bit(p, IOINTSEL, gpio, false);
 
@@ -349,16 +359,25 @@ static int gpio_rcar_direction_output(struct gpio_chip *chip, unsigned offset,
 struct gpio_rcar_info {
 	bool has_outdtsel;
 	bool has_both_edge_trigger;
+	bool has_inen;
 };
 
 static const struct gpio_rcar_info gpio_rcar_info_gen1 = {
 	.has_outdtsel = false,
 	.has_both_edge_trigger = false,
+	.has_inen = false,
 };
 
 static const struct gpio_rcar_info gpio_rcar_info_gen2 = {
 	.has_outdtsel = true,
 	.has_both_edge_trigger = true,
+	.has_inen = false,
+};
+
+static const struct gpio_rcar_info gpio_rcar_info_v3u = {
+	.has_outdtsel = true,
+	.has_both_edge_trigger = true,
+	.has_inen = true,
 };
 
 static const struct of_device_id gpio_rcar_of_table[] = {
@@ -389,6 +408,9 @@ static const struct of_device_id gpio_rcar_of_table[] = {
 		.compatible = "renesas,gpio-r8a7796",
 		/* Gen3 GPIO is identical to Gen2. */
 		.data = &gpio_rcar_info_gen2,
+	}, {
+		.compatible = "renesas,gpio-r8a779a0",
+		.data = &gpio_rcar_info_v3u,
 	}, {
 		.compatible = "renesas,rcar-gen1-gpio",
 		.data = &gpio_rcar_info_gen1,
@@ -419,6 +441,7 @@ static int gpio_rcar_parse_dt(struct gpio_rcar_priv *p, unsigned int *npins)
 	info = of_device_get_match_data(p->dev);
 	p->has_outdtsel = info->has_outdtsel;
 	p->has_both_edge_trigger = info->has_both_edge_trigger;
+	p->has_inen = info->has_inen;
 
 	ret = of_parse_phandle_with_fixed_args(np, "gpio-ranges", 3, 0, &args);
 	*npins = ret == 0 ? args.args[2] : RCAR_MAX_GPIO_PER_BANK;
-- 
2.17.1


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

* [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes
  2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
                   ` (4 preceding siblings ...)
  2020-10-19 12:06 ` [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U Geert Uytterhoeven
@ 2020-10-19 12:06 ` Geert Uytterhoeven
  2020-12-30 16:06   ` Wolfram Sang
  5 siblings, 1 reply; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-19 12:06 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Yoshihiro Shimoda, Ulrich Hecht, linux-clk, Geert Uytterhoeven

Add device nodes for the General Purpose Input/Output (GPIO) block on
the Renesas R-Car V3u (r8a779a0) SoC.

As there is no node for the PFC yet, all "gpio-ranges" properties are
commented out.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
This needs verification on real hardware, as the hardware manual is
unclear w.r.t. the following points:
  - Module clocks and interrupt mappings,
  - There are more/multiple resets for the PFC[0-3] in the Software
    Reset/Reset Clearing Registers 12, 13, and 14.
    The BSP picked up a different set.
---
 arch/arm64/boot/dts/renesas/r8a779a0.dtsi | 140 ++++++++++++++++++++++
 1 file changed, 140 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/r8a779a0.dtsi b/arch/arm64/boot/dts/renesas/r8a779a0.dtsi
index bc81e6a761d32034..1482bdf1cceb40ee 100644
--- a/arch/arm64/boot/dts/renesas/r8a779a0.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a779a0.dtsi
@@ -70,6 +70,146 @@
 		#size-cells = <2>;
 		ranges;
 
+		gpio0: gpio@e6058180 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6058180 0 0x54>;
+			interrupts = <GIC_SPI 832 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 916>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 916>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 0 28>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio1: gpio@e6050180 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6050180 0 0x54>;
+			interrupts = <GIC_SPI 836 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 915>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 915>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 32 31>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio2: gpio@e6050980 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6050980 0 0x54>;
+			interrupts = <GIC_SPI 840 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 915>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 915>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 64 25>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio3: gpio@e6058980 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6058980 0 0x54>;
+			interrupts = <GIC_SPI 844 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 916>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 916>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 96 17>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio4: gpio@e6060180 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6060180 0 0x54>;
+			interrupts = <GIC_SPI 848 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 917>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 917>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 128 27>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio5: gpio@e6060980 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6060980 0 0x54>;
+			interrupts = <GIC_SPI 852 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 917>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 917>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 160 21>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio6: gpio@e6068180 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6068180 0 0x54>;
+			interrupts = <GIC_SPI 856 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 918>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 918>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 192 21>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio7: gpio@e6068980 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6068980 0 0x54>;
+			interrupts = <GIC_SPI 860 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 918>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 918>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 224 21>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio8: gpio@e6069180 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6069180 0 0x54>;
+			interrupts = <GIC_SPI 864 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 918>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 918>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 256 21>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
+		gpio9: gpio@e6069980 {
+			compatible = "renesas,gpio-r8a779a0";
+			reg = <0 0xe6069980 0 0x54>;
+			interrupts = <GIC_SPI 868 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 918>;
+			power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
+			resets =  <&cpg 918>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			// gpio-ranges = <&pfc 0 288 21>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
+		};
+
 		cpg: clock-controller@e6150000 {
 			compatible = "renesas,r8a779a0-cpg-mssr";
 			reg = <0 0xe6150000 0 0x4000>;
-- 
2.17.1


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

* Re: [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U
  2020-10-19 12:06 ` [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U Geert Uytterhoeven
@ 2020-10-20  8:22   ` Geert Uytterhoeven
  2020-10-21 16:16     ` Ulrich Hecht
  2020-10-21 16:15   ` Ulrich Hecht
  1 sibling, 1 reply; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-20  8:22 UTC (permalink / raw)
  To: Linux-Renesas; +Cc: Yoshihiro Shimoda, Ulrich Hecht, Phong Hoang

On Mon, Oct 19, 2020 at 2:06 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
> From: Phong Hoang <phong.hoang.wz@renesas.com>
>
> Add support for the R-Car V3U (r8a779a0) SoC.
> This includes support for the new "General Input Enable" register to
> control input enable.
>
> Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Untested on actual hardware.
>
> Should input be enabled unconditionally, as recommended by the Hardware
> Manual for backwards compatibility with existing software?
> As per (errata?) commit ae9550f635533b1c ("gpio-rcar: Use OUTDT when
> reading GPIOs configured as output"), the gpio-rcar driver does not use
> the INDT register to read the status of a GPIO line when configured for
> output.

More investigation:
  1. On SH7734, R-Car Gen1, R-Car Gen2, and RZ/G1, INDT only reflects
     the state of the input pin if the GPIO is configured for input
     (documented, verified on R-Car M2-W),
  2. On R-Car Gen3 and RZ/G2, INDT always reflects the state of the
     input pin (documented, verified on R-Car H3/M3-W/M3-N),
  3. On R-Car V3U, input enable can be configured explicitly through the
      new INEN register (documented, unverified).

Given register accesses are slow, I think it makes sense to enable input
explicitly and unconditionally on R-Car V3U, and always use INDT to read
pin state on R-Car Gen3 and V3U.

Thanks for your comments!

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] 20+ messages in thread

* RE: [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock
  2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
@ 2020-10-21  7:37   ` Yoshihiro Shimoda
  2020-12-30 16:04   ` Wolfram Sang
  1 sibling, 0 replies; 20+ messages in thread
From: Yoshihiro Shimoda @ 2020-10-21  7:37 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc; +Cc: Ulrich Hecht, linux-clk

Hi Geert-san,

> From: Geert Uytterhoeven, Sent: Monday, October 19, 2020 9:06 PM
> 
> The S2 internal core clock does not exist on R-Car V3U. Remove it.
> 
> Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Thank you for the patch!

Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Best regards,
Yoshihiro Shimoda


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

* RE: [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock
  2020-10-19 12:06 ` [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock Geert Uytterhoeven
@ 2020-10-21  7:37   ` Yoshihiro Shimoda
  2020-12-30 16:04   ` Wolfram Sang
  1 sibling, 0 replies; 20+ messages in thread
From: Yoshihiro Shimoda @ 2020-10-21  7:37 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc; +Cc: Ulrich Hecht, linux-clk

Hi Geert-san,

> From: Geert Uytterhoeven, Sent: Monday, October 19, 2020 9:06 PM
> 
> According to Figure 8.1.1 ("Block Diagram of CPG (R-Car V3U-AD)") in the
> R-Car V3U Series User's Manual Rev. 0.5, the parent of the CBFUSA clock
> is EXTAL.
> 
> Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Thank you for the patch!

Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Best regards,
Yoshihiro Shimoda


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

* RE: [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  2020-10-19 12:06 ` [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks Geert Uytterhoeven
@ 2020-10-21  7:40   ` Yoshihiro Shimoda
  2020-10-21  8:07     ` Yoshihiro Shimoda
  2020-12-30 16:05   ` Wolfram Sang
  1 sibling, 1 reply; 20+ messages in thread
From: Yoshihiro Shimoda @ 2020-10-21  7:40 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc; +Cc: Ulrich Hecht, linux-clk

Hi Geert-san,

> From: Geert Uytterhoeven, Sent: Monday, October 19, 2020 9:06 PM
> 
> Add the module clocks used by the Pin Function Controller (PFC) and
> General Purpose Input/Output (GPIO) blocks, and their parent clock CP.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Untested on actual hardware.
> 
> Note that the BSP uses MAIN instead of EXTAL, just like for the CBFUSA
> clock.  However, according to Figure 8.1.1 ("Block Diagram of CPG (R-Car
> V3U-AD)") in the R-Car V3U Series User's Manual Rev. 0.5, the parent of
> the CP clock is EXTAL, which matches earlier R-Car Gen3 SoCs.

Thank you for the patch!

Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Best regards,
Yoshihiro Shimoda


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

* RE: [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  2020-10-21  7:40   ` Yoshihiro Shimoda
@ 2020-10-21  8:07     ` Yoshihiro Shimoda
  2020-10-21  8:18       ` Geert Uytterhoeven
  0 siblings, 1 reply; 20+ messages in thread
From: Yoshihiro Shimoda @ 2020-10-21  8:07 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc; +Cc: Ulrich Hecht, linux-clk

Hi Geert-san again,

> From: Yoshihiro Shimoda, Sent: Wednesday, October 21, 2020 4:41 PM
> 
> Hi Geert-san,
> 
> > From: Geert Uytterhoeven, Sent: Monday, October 19, 2020 9:06 PM
> >
> > Add the module clocks used by the Pin Function Controller (PFC) and
> > General Purpose Input/Output (GPIO) blocks, and their parent clock CP.
> >
> > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> > ---
> > Untested on actual hardware.
> >
> > Note that the BSP uses MAIN instead of EXTAL, just like for the CBFUSA
> > clock.  However, according to Figure 8.1.1 ("Block Diagram of CPG (R-Car
> > V3U-AD)") in the R-Car V3U Series User's Manual Rev. 0.5, the parent of
> > the CP clock is EXTAL, which matches earlier R-Car Gen3 SoCs.
> 
> Thank you for the patch!
> 
> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

I'm afraid but, since the upstream code doesn't have the following "vin3[567]"
lines, we should remove it from this patch. After fixed it,
you can use my Reviewed-by :)

>@@ -180,6 +181,10 @@ static const struct mssr_mod_clk r8a779a0_mod_clks[] __initconst = {
> 	DEF_MOD("vin35",	827,	R8A779A0_CLK_S1D1),
> 	DEF_MOD("vin36",	828,	R8A779A0_CLK_S1D1),
> 	DEF_MOD("vin37",	829,	R8A779A0_CLK_S1D1),

Best regards,
Yoshihiro Shimoda


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

* Re: [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  2020-10-21  8:07     ` Yoshihiro Shimoda
@ 2020-10-21  8:18       ` Geert Uytterhoeven
  0 siblings, 0 replies; 20+ messages in thread
From: Geert Uytterhoeven @ 2020-10-21  8:18 UTC (permalink / raw)
  To: Yoshihiro Shimoda; +Cc: linux-renesas-soc, Ulrich Hecht, linux-clk

Hi Shimoda-san,

On Wed, Oct 21, 2020 at 10:07 AM Yoshihiro Shimoda
<yoshihiro.shimoda.uh@renesas.com> wrote:
> > From: Yoshihiro Shimoda, Sent: Wednesday, October 21, 2020 4:41 PM
> > > From: Geert Uytterhoeven, Sent: Monday, October 19, 2020 9:06 PM
> > >
> > > Add the module clocks used by the Pin Function Controller (PFC) and
> > > General Purpose Input/Output (GPIO) blocks, and their parent clock CP.
> > >
> > > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> > > ---
> > > Untested on actual hardware.
> > >
> > > Note that the BSP uses MAIN instead of EXTAL, just like for the CBFUSA
> > > clock.  However, according to Figure 8.1.1 ("Block Diagram of CPG (R-Car
> > > V3U-AD)") in the R-Car V3U Series User's Manual Rev. 0.5, the parent of
> > > the CP clock is EXTAL, which matches earlier R-Car Gen3 SoCs.
> >
> > Thank you for the patch!
> >
> > Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
>
> I'm afraid but, since the upstream code doesn't have the following "vin3[567]"
> lines, we should remove it from this patch. After fixed it,
> you can use my Reviewed-by :)

Right, I had marked Jacopo's VIN clock patch for application to
renesas-clk-for-v5.11, but haven't actually done that, only in my local
tree.

But probably it does make sense to reorder the patches, and apply the
GPIO one first.

> >@@ -180,6 +181,10 @@ static const struct mssr_mod_clk r8a779a0_mod_clks[] __initconst = {
> >       DEF_MOD("vin35",        827,    R8A779A0_CLK_S1D1),
> >       DEF_MOD("vin36",        828,    R8A779A0_CLK_S1D1),
> >       DEF_MOD("vin37",        829,    R8A779A0_CLK_S1D1),

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] 20+ messages in thread

* Re: [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U
  2020-10-19 12:06 ` [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U Geert Uytterhoeven
  2020-10-20  8:22   ` Geert Uytterhoeven
@ 2020-10-21 16:15   ` Ulrich Hecht
  1 sibling, 0 replies; 20+ messages in thread
From: Ulrich Hecht @ 2020-10-21 16:15 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc
  Cc: Yoshihiro Shimoda, linux-clk, Phong Hoang

Thank you for your patch!

> On 10/19/2020 2:06 PM Geert Uytterhoeven <geert+renesas@glider.be> wrote:
> 
>  
> From: Phong Hoang <phong.hoang.wz@renesas.com>
> 
> Add support for the R-Car V3U (r8a779a0) SoC.
> This includes support for the new "General Input Enable" register to
> control input enable.
> 
> Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Untested on actual hardware.
> 
> Should input be enabled unconditionally, as recommended by the Hardware
> Manual for backwards compatibility with existing software?
> As per (errata?) commit ae9550f635533b1c ("gpio-rcar: Use OUTDT when
> reading GPIOs configured as output"), the gpio-rcar driver does not use
> the INDT register to read the status of a GPIO line when configured for
> output.
> ---
>  drivers/gpio/gpio-rcar.c | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
> 
> diff --git a/drivers/gpio/gpio-rcar.c b/drivers/gpio/gpio-rcar.c
> index a924cf8ac8df7f8f..44d09a0028db49e9 100644
> --- a/drivers/gpio/gpio-rcar.c
> +++ b/drivers/gpio/gpio-rcar.c
> @@ -42,6 +42,7 @@ struct gpio_rcar_priv {
>  	atomic_t wakeup_path;
>  	bool has_outdtsel;
>  	bool has_both_edge_trigger;
> +	bool has_inen;
>  	struct gpio_rcar_bank_info bank_info;
>  };
>  
> @@ -58,6 +59,7 @@ struct gpio_rcar_priv {
>  #define FILONOFF 0x28	/* Chattering Prevention On/Off Register */
>  #define OUTDTSEL 0x40	/* Output Data Select Register */
>  #define BOTHEDGE 0x4c	/* One Edge/Both Edge Select Register */
> +#define INEN 0x50	/* General Input Enable Register */
>  
>  #define RCAR_MAX_GPIO_PER_BANK		32
>  
> @@ -126,6 +128,10 @@ static void gpio_rcar_config_interrupt_input_mode(struct gpio_rcar_priv *p,
>  	if (p->has_both_edge_trigger)
>  		gpio_rcar_modify_bit(p, BOTHEDGE, hwirq, both);
>  
> +	/* Select "Input Enable" in INEN */
> +	if (p->has_inen)
> +		gpio_rcar_modify_bit(p, INEN, hwirq, true);
> +
>  	/* Select "Interrupt Input Mode" in IOINTSEL */
>  	gpio_rcar_modify_bit(p, IOINTSEL, hwirq, true);
>  
> @@ -231,6 +237,10 @@ static void gpio_rcar_config_general_input_output_mode(struct gpio_chip *chip,
>  	/* Configure positive logic in POSNEG */
>  	gpio_rcar_modify_bit(p, POSNEG, gpio, false);
>  
> +	/* Select "Input Enable/Disable" in INEN */

Nit: It's always called "Input Enable" in the DS.

> +	if (p->has_inen)
> +		gpio_rcar_modify_bit(p, INEN, gpio, !output);
> +
>  	/* Select "General Input/Output Mode" in IOINTSEL */
>  	gpio_rcar_modify_bit(p, IOINTSEL, gpio, false);
>  
> @@ -349,16 +359,25 @@ static int gpio_rcar_direction_output(struct gpio_chip *chip, unsigned offset,
>  struct gpio_rcar_info {
>  	bool has_outdtsel;
>  	bool has_both_edge_trigger;
> +	bool has_inen;
>  };
>  
>  static const struct gpio_rcar_info gpio_rcar_info_gen1 = {
>  	.has_outdtsel = false,
>  	.has_both_edge_trigger = false,
> +	.has_inen = false,
>  };
>  
>  static const struct gpio_rcar_info gpio_rcar_info_gen2 = {
>  	.has_outdtsel = true,
>  	.has_both_edge_trigger = true,
> +	.has_inen = false,
> +};
> +
> +static const struct gpio_rcar_info gpio_rcar_info_v3u = {
> +	.has_outdtsel = true,
> +	.has_both_edge_trigger = true,
> +	.has_inen = true,
>  };
>  
>  static const struct of_device_id gpio_rcar_of_table[] = {
> @@ -389,6 +408,9 @@ static const struct of_device_id gpio_rcar_of_table[] = {
>  		.compatible = "renesas,gpio-r8a7796",
>  		/* Gen3 GPIO is identical to Gen2. */
>  		.data = &gpio_rcar_info_gen2,
> +	}, {
> +		.compatible = "renesas,gpio-r8a779a0",
> +		.data = &gpio_rcar_info_v3u,
>  	}, {
>  		.compatible = "renesas,rcar-gen1-gpio",
>  		.data = &gpio_rcar_info_gen1,
> @@ -419,6 +441,7 @@ static int gpio_rcar_parse_dt(struct gpio_rcar_priv *p, unsigned int *npins)
>  	info = of_device_get_match_data(p->dev);
>  	p->has_outdtsel = info->has_outdtsel;
>  	p->has_both_edge_trigger = info->has_both_edge_trigger;
> +	p->has_inen = info->has_inen;
>  
>  	ret = of_parse_phandle_with_fixed_args(np, "gpio-ranges", 3, 0, &args);
>  	*npins = ret == 0 ? args.args[2] : RCAR_MAX_GPIO_PER_BANK;
> -- 
> 2.17.1

Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>

CU
Uli

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

* Re: [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U
  2020-10-20  8:22   ` Geert Uytterhoeven
@ 2020-10-21 16:16     ` Ulrich Hecht
  0 siblings, 0 replies; 20+ messages in thread
From: Ulrich Hecht @ 2020-10-21 16:16 UTC (permalink / raw)
  To: Geert Uytterhoeven, Linux-Renesas; +Cc: Yoshihiro Shimoda, Phong Hoang


> On 10/20/2020 10:22 AM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > Should input be enabled unconditionally, as recommended by the Hardware
> > Manual for backwards compatibility with existing software?
> > As per (errata?) commit ae9550f635533b1c ("gpio-rcar: Use OUTDT when
> > reading GPIOs configured as output"), the gpio-rcar driver does not use
> > the INDT register to read the status of a GPIO line when configured for
> > output.
> 
> More investigation:
>   1. On SH7734, R-Car Gen1, R-Car Gen2, and RZ/G1, INDT only reflects
>      the state of the input pin if the GPIO is configured for input
>      (documented, verified on R-Car M2-W),
>   2. On R-Car Gen3 and RZ/G2, INDT always reflects the state of the
>      input pin (documented, verified on R-Car H3/M3-W/M3-N),
>   3. On R-Car V3U, input enable can be configured explicitly through the
>       new INEN register (documented, unverified).
> 
> Given register accesses are slow, I think it makes sense to enable input
> explicitly and unconditionally on R-Car V3U, and always use INDT to read
> pin state on R-Car Gen3 and V3U.

That sounds like a good solution to me.

CU
Uli

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

* Re: [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock
  2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
  2020-10-21  7:37   ` Yoshihiro Shimoda
@ 2020-12-30 16:04   ` Wolfram Sang
  1 sibling, 0 replies; 20+ messages in thread
From: Wolfram Sang @ 2020-12-30 16:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-renesas-soc, Yoshihiro Shimoda, Ulrich Hecht, linux-clk

[-- Attachment #1: Type: text/plain, Size: 420 bytes --]

On Mon, Oct 19, 2020 at 02:06:09PM +0200, Geert Uytterhoeven wrote:
> The S2 internal core clock does not exist on R-Car V3U. Remove it.
> 
> Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock
  2020-10-19 12:06 ` [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock Geert Uytterhoeven
  2020-10-21  7:37   ` Yoshihiro Shimoda
@ 2020-12-30 16:04   ` Wolfram Sang
  1 sibling, 0 replies; 20+ messages in thread
From: Wolfram Sang @ 2020-12-30 16:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-renesas-soc, Yoshihiro Shimoda, Ulrich Hecht, linux-clk

[-- Attachment #1: Type: text/plain, Size: 514 bytes --]

On Mon, Oct 19, 2020 at 02:06:10PM +0200, Geert Uytterhoeven wrote:
> According to Figure 8.1.1 ("Block Diagram of CPG (R-Car V3U-AD)") in the
> R-Car V3U Series User's Manual Rev. 0.5, the parent of the CBFUSA clock
> is EXTAL.
> 
> Fixes: 17bcc8035d2d19fc ("clk: renesas: cpg-mssr: Add support for R-Car V3U")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks
  2020-10-19 12:06 ` [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks Geert Uytterhoeven
  2020-10-21  7:40   ` Yoshihiro Shimoda
@ 2020-12-30 16:05   ` Wolfram Sang
  1 sibling, 0 replies; 20+ messages in thread
From: Wolfram Sang @ 2020-12-30 16:05 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-renesas-soc, Yoshihiro Shimoda, Ulrich Hecht, linux-clk

[-- Attachment #1: Type: text/plain, Size: 414 bytes --]

On Mon, Oct 19, 2020 at 02:06:11PM +0200, Geert Uytterhoeven wrote:
> Add the module clocks used by the Pin Function Controller (PFC) and
> General Purpose Input/Output (GPIO) blocks, and their parent clock CP.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support
  2020-10-19 12:06 ` [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support Geert Uytterhoeven
@ 2020-12-30 16:05   ` Wolfram Sang
  0 siblings, 0 replies; 20+ messages in thread
From: Wolfram Sang @ 2020-12-30 16:05 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-renesas-soc, Yoshihiro Shimoda, Ulrich Hecht, linux-clk

[-- Attachment #1: Type: text/plain, Size: 514 bytes --]

On Mon, Oct 19, 2020 at 02:06:12PM +0200, Geert Uytterhoeven wrote:
> Document the compatible value for the GPIO block in the Renesas R-Car
> V3U (R8A779A0) SoC.
> 
> While this GPIO block is mostly compatible with GPIO blocks on R-Car
> Gen3 SoCs, there are small differences, and one of the new registers
> needs to be configured differently from its initial reset state.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes
  2020-10-19 12:06 ` [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes Geert Uytterhoeven
@ 2020-12-30 16:06   ` Wolfram Sang
  0 siblings, 0 replies; 20+ messages in thread
From: Wolfram Sang @ 2020-12-30 16:06 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-renesas-soc, Yoshihiro Shimoda, Ulrich Hecht, linux-clk

[-- Attachment #1: Type: text/plain, Size: 409 bytes --]

On Mon, Oct 19, 2020 at 02:06:14PM +0200, Geert Uytterhoeven wrote:
> Add device nodes for the General Purpose Input/Output (GPIO) block on
> the Renesas R-Car V3u (r8a779a0) SoC.
> 
> As there is no node for the PFC yet, all "gpio-ranges" properties are
> commented out.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

end of thread, other threads:[~2020-12-30 16:06 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-19 12:06 [PATCH/RFC 0/6] R-Car V3U GPIO support Geert Uytterhoeven
2020-10-19 12:06 ` [PATCH/RFC 1/6] clk: renesas: r8a779a0: Remove non-existent S2 clock Geert Uytterhoeven
2020-10-21  7:37   ` Yoshihiro Shimoda
2020-12-30 16:04   ` Wolfram Sang
2020-10-19 12:06 ` [PATCH/RFC 2/6] clk: renesas: r8a779a0: Fix parent of CBFUSA clock Geert Uytterhoeven
2020-10-21  7:37   ` Yoshihiro Shimoda
2020-12-30 16:04   ` Wolfram Sang
2020-10-19 12:06 ` [PATCH/RFC 3/6] clk: renesas: r8a779a0: Add PFC/GPIO clocks Geert Uytterhoeven
2020-10-21  7:40   ` Yoshihiro Shimoda
2020-10-21  8:07     ` Yoshihiro Shimoda
2020-10-21  8:18       ` Geert Uytterhoeven
2020-12-30 16:05   ` Wolfram Sang
2020-10-19 12:06 ` [PATCH/RFC 4/6] dt-bindings: gpio: rcar: Add r8a779a0 support Geert Uytterhoeven
2020-12-30 16:05   ` Wolfram Sang
2020-10-19 12:06 ` [PATCH/RFC 5/6] gpio: rcar: Add support for R-Car V3U Geert Uytterhoeven
2020-10-20  8:22   ` Geert Uytterhoeven
2020-10-21 16:16     ` Ulrich Hecht
2020-10-21 16:15   ` Ulrich Hecht
2020-10-19 12:06 ` [PATCH/RFC 6/6] arm64: dts: r8a779a0: Add GPIO nodes Geert Uytterhoeven
2020-12-30 16:06   ` Wolfram Sang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.