linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] renesas: r8a779g0: Add missing SCIF_CLK2
@ 2024-01-18 16:32 Geert Uytterhoeven
  2024-01-18 16:32 ` [PATCH 1/2] pinctrl: renesas: r8a779g0: Add missing SCIF_CLK2 pin group/function Geert Uytterhoeven
  2024-01-18 16:32 ` [PATCH 2/2] arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2 Geert Uytterhoeven
  0 siblings, 2 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2024-01-18 16:32 UTC (permalink / raw)
  To: Linus Walleij, Magnus Damm, Wolfram Sang
  Cc: Phong Hoang, Takeshi Kihara, linux-gpio, linux-renesas-soc,
	linux-arm-kernel, Geert Uytterhoeven

	Hi all,

R-Car V4H actually has two SCIF_CLK pins.
The second pin provides the SCIF_CLK signal for HSCIF2 and SCIF4.
The first pin provides the SCIF_CLK signal for the other (H)SCIF
instances.

This patch series adds the missing SCIF_CLK2 pin group/function to the
R-Car V4H pin control driver and to the R-Car V4H DTS file, and fixes
the HSCIF2 and SCIF4 DT descriptions to refer to the proper clock.

As SCIF_CLK2 cannot be used on the White Hawk development board, I could
not test proper operation of HSCIF2 and SCIF4.  I did verify that HSCIF2
and SCIF4 do not operate properly when trying to use (the first and thus
incorrect) SCIF_CLK as the clock source.

I plan to queue these in renesas-pinctrl resp. renesas-devel for v6.9.

Thanks for your comments!

Geert Uytterhoeven (2):
  pinctrl: renesas: r8a779g0: Add missing SCIF_CLK2 pin group/function
  arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2

 arch/arm64/boot/dts/renesas/r8a779g0.dtsi | 12 +++++++++---
 drivers/pinctrl/renesas/pfc-r8a779g0.c    | 14 ++++++++++++++
 2 files changed, 23 insertions(+), 3 deletions(-)

-- 
2.34.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] 3+ messages in thread

* [PATCH 1/2] pinctrl: renesas: r8a779g0: Add missing SCIF_CLK2 pin group/function
  2024-01-18 16:32 [PATCH 0/2] renesas: r8a779g0: Add missing SCIF_CLK2 Geert Uytterhoeven
@ 2024-01-18 16:32 ` Geert Uytterhoeven
  2024-01-18 16:32 ` [PATCH 2/2] arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2 Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2024-01-18 16:32 UTC (permalink / raw)
  To: Linus Walleij, Magnus Damm, Wolfram Sang
  Cc: Phong Hoang, Takeshi Kihara, linux-gpio, linux-renesas-soc,
	linux-arm-kernel, Geert Uytterhoeven

R-Car V4H actually has two SCIF_CLK pins.
The second pin provides the SCIF_CLK signal for HSCIF2 and SCIF4.

Fixes: 050442ae4c74f830 ("pinctrl: renesas: r8a779g0: Add pins, groups and functions")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 drivers/pinctrl/renesas/pfc-r8a779g0.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/pinctrl/renesas/pfc-r8a779g0.c b/drivers/pinctrl/renesas/pfc-r8a779g0.c
index 8420145a271d5bf8..2d59a80b7395af5f 100644
--- a/drivers/pinctrl/renesas/pfc-r8a779g0.c
+++ b/drivers/pinctrl/renesas/pfc-r8a779g0.c
@@ -2468,6 +2468,14 @@ static const unsigned int scif_clk_mux[] = {
 	SCIF_CLK_MARK,
 };
 
+static const unsigned int scif_clk2_pins[] = {
+	/* SCIF_CLK2 */
+	RCAR_GP_PIN(8, 11),
+};
+static const unsigned int scif_clk2_mux[] = {
+	SCIF_CLK2_MARK,
+};
+
 /* - SSI ------------------------------------------------- */
 static const unsigned int ssi_data_pins[] = {
 	/* SSI_SD */
@@ -2790,6 +2798,7 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
 	SH_PFC_PIN_GROUP(scif4_clk),
 	SH_PFC_PIN_GROUP(scif4_ctrl),
 	SH_PFC_PIN_GROUP(scif_clk),
+	SH_PFC_PIN_GROUP(scif_clk2),
 
 	SH_PFC_PIN_GROUP(ssi_data),
 	SH_PFC_PIN_GROUP(ssi_ctrl),
@@ -3126,6 +3135,10 @@ static const char * const scif_clk_groups[] = {
 	"scif_clk",
 };
 
+static const char * const scif_clk2_groups[] = {
+	"scif_clk2",
+};
+
 static const char * const ssi_groups[] = {
 	"ssi_data",
 	"ssi_ctrl",
@@ -3215,6 +3228,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
 	SH_PFC_FUNCTION(scif3),
 	SH_PFC_FUNCTION(scif4),
 	SH_PFC_FUNCTION(scif_clk),
+	SH_PFC_FUNCTION(scif_clk2),
 
 	SH_PFC_FUNCTION(ssi),
 
-- 
2.34.1


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

* [PATCH 2/2] arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2
  2024-01-18 16:32 [PATCH 0/2] renesas: r8a779g0: Add missing SCIF_CLK2 Geert Uytterhoeven
  2024-01-18 16:32 ` [PATCH 1/2] pinctrl: renesas: r8a779g0: Add missing SCIF_CLK2 pin group/function Geert Uytterhoeven
@ 2024-01-18 16:32 ` Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2024-01-18 16:32 UTC (permalink / raw)
  To: Linus Walleij, Magnus Damm, Wolfram Sang
  Cc: Phong Hoang, Takeshi Kihara, linux-gpio, linux-renesas-soc,
	linux-arm-kernel, Geert Uytterhoeven

R-Car V4H actually has two SCIF_CLK pins.
The second pin provides the SCIF_CLK signal for HSCIF2 and SCIF4.

Fixes: a4c31c56d2d35641 ("arm64: dts: renesas: r8a779g0: Add SCIF nodes")
Fixes: 39d9dfc6fbe1860e ("arm64: dts: renesas: r8a779g0: Add remaining HSCIF nodes")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 arch/arm64/boot/dts/renesas/r8a779g0.dtsi | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/renesas/r8a779g0.dtsi b/arch/arm64/boot/dts/renesas/r8a779g0.dtsi
index 0a46f315c307e3cb..7b05b9b3e0a85f44 100644
--- a/arch/arm64/boot/dts/renesas/r8a779g0.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a779g0.dtsi
@@ -185,13 +185,19 @@ psci {
 		method = "smc";
 	};
 
-	/* External SCIF clock - to be overridden by boards that provide it */
+	/* External SCIF clocks - to be overridden by boards that provide them */
 	scif_clk: scif {
 		compatible = "fixed-clock";
 		#clock-cells = <0>;
 		clock-frequency = <0>;
 	};
 
+	scif_clk2: scif2 {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <0>;
+	};
+
 	soc: soc {
 		compatible = "simple-bus";
 		interrupt-parent = <&gic>;
@@ -690,7 +696,7 @@ hscif2: serial@e6560000 {
 			interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>;
 			clocks = <&cpg CPG_MOD 516>,
 				 <&cpg CPG_CORE R8A779G0_CLK_SASYNCPERD1>,
-				 <&scif_clk>;
+				 <&scif_clk2>;
 			clock-names = "fck", "brg_int", "scif_clk";
 			dmas = <&dmac0 0x35>, <&dmac0 0x34>,
 			       <&dmac1 0x35>, <&dmac1 0x34>;
@@ -1066,7 +1072,7 @@ scif4: serial@e6c40000 {
 			interrupts = <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>;
 			clocks = <&cpg CPG_MOD 705>,
 				 <&cpg CPG_CORE R8A779G0_CLK_SASYNCPERD1>,
-				 <&scif_clk>;
+				 <&scif_clk2>;
 			clock-names = "fck", "brg_int", "scif_clk";
 			dmas = <&dmac0 0x59>, <&dmac0 0x58>,
 			       <&dmac1 0x59>, <&dmac1 0x58>;
-- 
2.34.1


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

end of thread, other threads:[~2024-01-18 16:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-18 16:32 [PATCH 0/2] renesas: r8a779g0: Add missing SCIF_CLK2 Geert Uytterhoeven
2024-01-18 16:32 ` [PATCH 1/2] pinctrl: renesas: r8a779g0: Add missing SCIF_CLK2 pin group/function Geert Uytterhoeven
2024-01-18 16:32 ` [PATCH 2/2] arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2 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).