Re: [PATCH v2 1/3] clk: renesas: r9a09g047: Add clock and reset signals for the GBETH IPs
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2025-06-25 15:18:59
Also in:
linux-devicetree, linux-renesas-soc, lkml
Ho John, On Thu, 19 Jun 2025 at 10:22, Lad, Prabhakar [off-list ref] wrote:
On Thu, Jun 19, 2025 at 5:34 AM John Madieu [off-list ref] wrote:quoted
quoted
From: Geert Uytterhoeven <geert@linux-m68k.org> On Wed, 18 Jun 2025 at 12:04, John Madieu [off-list ref] wrote:quoted
quoted
From: Geert Uytterhoeven <geert@linux-m68k.org> On Wed, 11 Jun 2025 at 11:02, John Madieu [off-list ref] wrote:quoted
Add clock and reset entries for the Gigabit Ethernet Interfaces (GBETH 0-1) IPs found on the RZ/G3E SoC. This includes various PLLs, dividers, and mux clocks needed by these two GBETH IPs. Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com> Tested-by: Biju Das <biju.das.jz@bp.renesas.com> Signed-off-by: John Madieu <john.madieu.xa@bp.renesas.com>Thanks for your patch!quoted
--- a/drivers/clk/renesas/r9a09g047-cpg.c +++ b/drivers/clk/renesas/r9a09g047-cpg.cquoted
quoted
quoted
@@ -214,6 +252,30 @@ static const struct rzv2h_mod_clkr9a09g047_mod_clks[] __initconst = {quoted
BUS_MSTOP(8,BIT(4))),quoted
quoted
quoted
DEF_MOD("sdhi_2_aclk",CLK_PLLDTY_ACPU_DIV4,quoted
quoted
10, 14, 5, 14,quoted
BUS_MSTOP(8, BIT(4))), + DEF_MOD("gbeth_0_clk_tx_i",CLK_SMUX2_GBE0_TXCLK,quoted
quoted
11, 8, 5, 24,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_0_clk_rx_i",CLK_SMUX2_GBE0_RXCLK,quoted
quoted
11, 9, 5, 25,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_0_clk_tx_180_i",CLK_SMUX2_GBE0_TXCLK,quoted
quoted
11, 10, 5, 26,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_0_clk_rx_180_i",CLK_SMUX2_GBE0_RXCLK,quoted
quoted
11, 11, 5, 27,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_0_aclk_csr_i", CLK_PLLDTY_DIV8, 11,12,quoted
quoted
5, 28,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_0_aclk_i", CLK_PLLDTY_DIV8, 11,13,quoted
quoted
5, 29,quoted
+ BUS_MSTOP(8,BIT(5))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_clk_tx_i",CLK_SMUX2_GBE1_TXCLK,quoted
quoted
11, 14, 5, 30,quoted
+ BUS_MSTOP(8,BIT(6))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_clk_rx_i",CLK_SMUX2_GBE1_RXCLK,quoted
quoted
11, 15, 5, 31,quoted
+ BUS_MSTOP(8,BIT(6))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_clk_tx_180_i",CLK_SMUX2_GBE1_TXCLK,quoted
quoted
12, 0, 6, 0, scripts/checkpatch.pl says: WARNING: please, no space before tabsNoted.quoted
quoted
+ BUS_MSTOP(8,BIT(6))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_clk_rx_180_i",CLK_SMUX2_GBE1_RXCLK,quoted
quoted
12, 1, 6, 1,quoted
+ BUS_MSTOP(8,BIT(6))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_aclk_csr_i", CLK_PLLDTY_DIV8, 12,2,quoted
quoted
6, 2,quoted
+ BUS_MSTOP(8,BIT(6))),quoted
quoted
quoted
+ DEF_MOD("gbeth_1_aclk_i", CLK_PLLDTY_DIV8, 12,3,quoted
quoted
6, 3,quoted
+ BUS_MSTOP(8, + BIT(6))),Shouldn't all of these use DEF_MOD_MUX_EXTERNAL() instead of DEF_MOD(), like on RZ/V2H and RZ/V2N?Do we really need to use DEF_MOD_MUX_EXTERNAL? Unlike for the RZ/V2H, On G3E, unbind/bind works with DEF_MOD. I can however switch to DEF_MOD_MUX_EXTERNAL for consistency if required. Please let me know.Does that mean the monitor bits on RZ/G3E do reflect the correct state of external clocks? If yes, then DEF_MOD() is fine.Checked DEF_MOD() and had expected result. I'll then it and send v3.Can you please share the devmem logs for external clocks please. I ask because the HW team mentioned the below information will be added in the RZ/V2H(P) HW manual. We need to check if below is not needed on RZ/G3E. "The clock gating cells require source clocks to operate correctly. If the source clocks are stopped, these registers cannot be used."
Has this been sorted out yet? I see no change or mention of it in v3.
Thanks!
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