From nobody Mon May 25 02:57:45 2026 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 142FB328B7B for ; Tue, 19 May 2026 14:15:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200126; cv=none; b=TKjDPmeJzAV1VYEav56ZN5qM5bdK6jLnyEKUrpUNZelTyP7isXnyOiGsvX89SY8l1oQzEeYMCjpS0vPvyZKnCQhh28PIffMDZBnyYi5+BjKsQ0ZgvUQiyTX7rCeojoHut/Fj5XMD5713bvOITBKIKzzR3Vst70830edzM6HHRmk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200126; c=relaxed/simple; bh=pxo7F/tChpy81PH8CXvEavW4XJAGjkb2GYq5cMW9O70=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=m3PlVwhtGRO160XofxzhrB1edyIXDOv+uoQ35eYazrhn3h20FMw/CZOqJvS/ZnrTLjPsKCdpl1gdQbg9qcnFJBmDm5U2eOyV5EnqF9SaXRbsGorCDD5D1KSBVkfIrmCL1q8XPVFdKaEUseSNf1diAdxuOXMz1lW4v52IwUuXp/o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=r+04coke; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="r+04coke" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-488ab2db91aso37812305e9.3 for ; Tue, 19 May 2026 07:15:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779200122; x=1779804922; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tQpJR4lnY8iF+dc/T45GTK0kwfTJMPwYvTImeEo4ULw=; b=r+04coke2Fyly1xesVt63TrjEHRxw8LXp/vil3Si/Y/C2tLleU2rBX0V4et1O55hBY cRuHUKX/O5ByiB5q6SV78Cji2E2OTRPeflNoZ27Bg6sraPcsxlBH+WpVLvN1B7Ig2Wuc y1Df/bahNTAkMNEiaDBUeWJ1PoWNKKxfl/2PxQMMkFf8pXreTNtHfWxpD40Q1EuGtjCx JweodHBjsYMLdUQbtrHqMELVB+bW9Bmxr7mrJz4TEFETaiKx0k7IYD5X8OPuUneVN5yR mBHvb6hc+dCfci0pauPmSntpEf+3MjcDqPFGQMMnAjvDqKM1E0FUow3POvQJ6mVboj9k RiOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779200122; x=1779804922; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=tQpJR4lnY8iF+dc/T45GTK0kwfTJMPwYvTImeEo4ULw=; b=HgadSbXHr52j6yG9yt3Bxvk5EA22W+d6ZsrvilbxiAPBbZtlSQm8/QYdrlv4nFIJvL 39jNmU61OE9cLQjllZ7PGZPJRyWBuqxxXJmNKXpS5A7aRfGfRqizY5Ch19Kb404pY9TW AxE2FgdOiaenJcYtaAwcMD3dqngebCosiR8sPEFim6c82WDLZUBbOxPKEfJFIIF1EmqP 7TYqjVDJmhqkfmBqbTt7SF4qW5EdEW6JJuF1veiPYNLxt8m03IeH6twoHQe/8erN/AdF PIC3/bPSR3L5NJXL//xgfnWnVnn2EcSfdK1Tg/yd1vih2KtD2LwUWCzyk8xY5Dg7bN8w i1wg== X-Forwarded-Encrypted: i=1; AFNElJ8icrpAO/ZZTo1HvAvCeviTzu633gu9If20fIReuXSYZw0a0wVDy5GGGwZP51mXKroqsx7dumt1UHlYWI4=@vger.kernel.org X-Gm-Message-State: AOJu0YxZhr+RkxD92lMqBa6gixmVHoWirg68v7fsGgsdulzfMomeUGTG ZTPUtokeAbh5HdTWbGkX3zADK0HqVniCvbwIUrCzJ32WKelpGowI6L8+ X-Gm-Gg: Acq92OFnr2slqBs7bMs9qNOk1UPSu3PHaqxqLAqX3zar9E/M1WipQppT870nqbteqsh Kvx2sCpsTl9jDa3FfDL9iWiKlVL1mZ9TjKf8TZQGPYeY6qHubggT4Nya6nFsasNMvc4c2KYt6sp 0NPlbCuiD0+Rg0odXNEDig/bF0kp53zMkBV/HGdbCbbm4VY9L5+lj4ilqaggMd7BdvmtRJD9Roh SOcqYjM3lgdxmudsKikwLDR9YM1XQIVAOStglAwRd2/f4slq/aL/OUZ9TzqySNWlFYr1L7GpsZf lk4kGmcBISNwprkZea2ojxKEYBiwuyKGBsJ42BU4Xx74c5KpWfQMhcZHSdSmW+WcaA1cdjjuOqe F88UdQ7fuJhp9rWImRL204EcSaDGl6jloWu6nUIh2ZboPXUjwgUfTPpRADYO/NOw6AEt04qjEob 0JKflKoPlZcrO4neX41Cf+L9ppKAzlVFoD+pqWrlNEBsgM0fzI X-Received: by 2002:a05:600c:a309:b0:486:fba7:b150 with SMTP id 5b1f17b1804b1-48fe61f20a7mr252146205e9.15.1779200122174; Tue, 19 May 2026 07:15:22 -0700 (PDT) Received: from localhost.localdomain ([2a00:23c4:a700:7301:4abf:a82a:41d5:6663]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48fe4c8344asm557912205e9.1.2026.05.19.07.15.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 07:15:21 -0700 (PDT) From: Biju X-Google-Original-From: Biju To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd Cc: Biju Das , Brian Masney , linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Prabhakar Mahadev Lad , Biju Das Subject: [PATCH v3 1/3] clk: renesas: rzg2l: Simplify SAM PLL configuration macro Date: Tue, 19 May 2026 15:15:13 +0100 Message-ID: <20260519141518.389670-2-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> References: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Biju Das Replace the PLL146_CONF() macro and its associated CPG_SAMPLL_CLK{1,2}(n) helpers with a single CPG_SAM_PLL_CONF(stby) macro that takes the PLL standby register offset directly. This removes the implicit coupling between PLL index n and register layout and eliminates the now-redundant GET_REG_SAMPLL_CLK2() macro. The RZ/V2M PLL4 definition is also updated to use the new macro with its explicit standby offset (0x100), removing the local PLL4_CONF define. No functional changes. Reviewed-by: Geert Uytterhoeven Signed-off-by: Biju Das --- v2->v3: * Rebased to renesas-clk. v1->v2: * Collected the tag. --- drivers/clk/renesas/r9a07g043-cpg.c | 2 +- drivers/clk/renesas/r9a07g044-cpg.c | 2 +- drivers/clk/renesas/r9a09g011-cpg.c | 7 +------ drivers/clk/renesas/rzg2l-cpg.c | 9 ++++++--- drivers/clk/renesas/rzg2l-cpg.h | 6 +----- 5 files changed, 10 insertions(+), 16 deletions(-) diff --git a/drivers/clk/renesas/r9a07g043-cpg.c b/drivers/clk/renesas/r9a0= 7g043-cpg.c index 70944ef8c5b8..59d6ee2e888f 100644 --- a/drivers/clk/renesas/r9a07g043-cpg.c +++ b/drivers/clk/renesas/r9a07g043-cpg.c @@ -103,7 +103,7 @@ static const struct cpg_core_clk r9a07g043_core_clks[] = __initconst =3D { /* Internal Core Clocks */ DEF_FIXED(".osc", R9A07G043_OSCCLK, CLK_EXTAL, 1, 1), DEF_FIXED(".osc_div1000", CLK_OSC_DIV1000, CLK_EXTAL, 1, 1000), - DEF_SAMPLL(".pll1", CLK_PLL1, CLK_EXTAL, PLL146_CONF(0)), + DEF_SAMPLL(".pll1", CLK_PLL1, CLK_EXTAL, CPG_SAM_PLL_CONF(0)), DEF_FIXED(".pll2", CLK_PLL2, CLK_EXTAL, 200, 3), DEF_FIXED(".pll2_div2", CLK_PLL2_DIV2, CLK_PLL2, 1, 2), DEF_FIXED(".clk_800", CLK_PLL2_800, CLK_PLL2, 1, 2), diff --git a/drivers/clk/renesas/r9a07g044-cpg.c b/drivers/clk/renesas/r9a0= 7g044-cpg.c index 2d3487203bf5..913cca6dd46f 100644 --- a/drivers/clk/renesas/r9a07g044-cpg.c +++ b/drivers/clk/renesas/r9a07g044-cpg.c @@ -159,7 +159,7 @@ static const struct { /* Internal Core Clocks */ DEF_FIXED(".osc", R9A07G044_OSCCLK, CLK_EXTAL, 1, 1), DEF_FIXED(".osc_div1000", CLK_OSC_DIV1000, CLK_EXTAL, 1, 1000), - DEF_SAMPLL(".pll1", CLK_PLL1, CLK_EXTAL, PLL146_CONF(0)), + DEF_SAMPLL(".pll1", CLK_PLL1, CLK_EXTAL, CPG_SAM_PLL_CONF(0)), DEF_FIXED(".pll2", CLK_PLL2, CLK_EXTAL, 200, 3), DEF_FIXED(".pll2_533", CLK_PLL2_533, CLK_PLL2, 1, 3), DEF_FIXED(".pll3", CLK_PLL3, CLK_EXTAL, 200, 3), diff --git a/drivers/clk/renesas/r9a09g011-cpg.c b/drivers/clk/renesas/r9a0= 9g011-cpg.c index ba25429c244d..a99ab1375f07 100644 --- a/drivers/clk/renesas/r9a09g011-cpg.c +++ b/drivers/clk/renesas/r9a09g011-cpg.c @@ -16,11 +16,6 @@ =20 #include "rzg2l-cpg.h" =20 -#define RZV2M_SAMPLL4_CLK1 0x104 -#define RZV2M_SAMPLL4_CLK2 0x108 - -#define PLL4_CONF (RZV2M_SAMPLL4_CLK1 << 22 | RZV2M_SAMPLL4_CLK2 << 12) - #define DIV_A DDIV_PACK(0x200, 0, 3) #define DIV_B DDIV_PACK(0x204, 0, 2) #define DIV_D DDIV_PACK(0x204, 4, 2) @@ -131,7 +126,7 @@ static const struct cpg_core_clk r9a09g011_core_clks[] = __initconst =3D { DEF_FIXED(".pll2_400", CLK_PLL2_400, CLK_PLL2_800, 1, 2), DEF_FIXED(".pll2_200", CLK_PLL2_200, CLK_PLL2_800, 1, 4), DEF_FIXED(".pll2_100", CLK_PLL2_100, CLK_PLL2_800, 1, 8), - DEF_SAMPLL(".pll4", CLK_PLL4, CLK_MAIN_2, PLL4_CONF), + DEF_SAMPLL(".pll4", CLK_PLL4, CLK_MAIN_2, CPG_SAM_PLL_CONF(0x100)), =20 DEF_DIV_RO(".diva", CLK_DIV_A, CLK_PLL1, DIV_A, dtable_diva), DEF_DIV_RO(".divb", CLK_DIV_B, CLK_PLL2_400, DIV_B, dtable_divb), diff --git a/drivers/clk/renesas/rzg2l-cpg.c b/drivers/clk/renesas/rzg2l-cp= g.c index 426e93dc7a98..ad9aab2ecc62 100644 --- a/drivers/clk/renesas/rzg2l-cpg.c +++ b/drivers/clk/renesas/rzg2l-cpg.c @@ -58,6 +58,10 @@ #define RZG3S_DIV_NF GENMASK(12, 1) #define RZG3S_SEL_PLL BIT(0) =20 +#define CPG_PLL_STBY_OFFSET(conf) FIELD_GET(GENMASK(23, 12), (conf)) +#define CPG_PLL_CLK1_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x4) +#define CPG_PLL_CLK2_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x8) + #define RZG3L_PLL_STBY_OFFSET(x) (GET_REG_SAMPLL_CLK1(x) - 0x4) #define RZG3L_PLL_STBY_RESETB BIT(0) #define RZG3L_PLL_STBY_RESETB_WEN BIT(16) @@ -72,7 +76,6 @@ =20 #define GET_REG_OFFSET(val) ((val >> 20) & 0xfff) #define GET_REG_SAMPLL_CLK1(val) ((val >> 22) & 0xfff) -#define GET_REG_SAMPLL_CLK2(val) ((val >> 12) & 0xfff) #define GET_REG_SAMPLL_SETTING(val) ((val) & 0xfff) =20 #define CPG_WEN_BIT BIT(16) @@ -1093,8 +1096,8 @@ static unsigned long rzg2l_cpg_pll_clk_recalc_rate(st= ruct clk_hw *hw, if (pll_clk->type !=3D CLK_TYPE_SAM_PLL) return parent_rate; =20 - val1 =3D readl(priv->base + GET_REG_SAMPLL_CLK1(pll_clk->conf)); - val2 =3D readl(priv->base + GET_REG_SAMPLL_CLK2(pll_clk->conf)); + val1 =3D readl(priv->base + CPG_PLL_CLK1_OFFSET(pll_clk->conf)); + val2 =3D readl(priv->base + CPG_PLL_CLK2_OFFSET(pll_clk->conf)); =20 rate =3D mul_u64_u32_shr(parent_rate, (MDIV(val1) << 16) + KDIV(val1), 16 + SDIV(val2)); diff --git a/drivers/clk/renesas/rzg2l-cpg.h b/drivers/clk/renesas/rzg2l-cp= g.h index 33f54ba0e64e..17ec6f285c21 100644 --- a/drivers/clk/renesas/rzg2l-cpg.h +++ b/drivers/clk/renesas/rzg2l-cpg.h @@ -58,11 +58,7 @@ #define CPG_CLKSTATUS_SELSDHI0_STS BIT(28) #define CPG_CLKSTATUS_SELSDHI1_STS BIT(29) =20 -/* n =3D 0/1/2 for PLL1/4/6 */ -#define CPG_SAMPLL_CLK1(n) (0x04 + (16 * n)) -#define CPG_SAMPLL_CLK2(n) (0x08 + (16 * n)) - -#define PLL146_CONF(n) (CPG_SAMPLL_CLK1(n) << 22 | CPG_SAMPLL_CLK2(n) << 1= 2) +#define CPG_SAM_PLL_CONF(stby) ((stby) << 12) =20 #define DDIV_PACK(offset, bitpos, size) \ (((offset) << 20) | ((bitpos) << 12) | ((size) << 8)) --=20 2.43.0 From nobody Mon May 25 02:57:45 2026 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 072144028E1 for ; Tue, 19 May 2026 14:15:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200126; cv=none; b=S2kL4FF5GUgGPaqRknT5PgWYVM7Ki/j85Rgi9EU+ICmKBznnlkaP1/xUUIpH0Zk4kh+7oIlqXglTpWUNvth8z/1x9iJ4Bp4zu4d/zXY7QXg6eXRTPQcI4psqJNzFI2ttc7l51Gm1+tJIwuHoVUvl/r0k+U0IH0kPyBWA6f3e4Tw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200126; c=relaxed/simple; bh=pCIbonQaY01gdkVUQZdkziRl+vA0GKesQQYmOj+A/PU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=n2VC9pzTnL7M7JD0vQpYkhZNufu2d8gdoNvdAyWJi9fXDHYVHWudPKEyrTCpsnDmO+wv7Q412lb5kyqqnoA7btY0VfDh3iaj6/VA6krmt0+G1EkGakZJZ7SP48wCsCDxXpXtDmbqqJ6kqPkqAdopYT+QN8au4xRMlq+PJvCtWqU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=MMjcWyBi; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="MMjcWyBi" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4891c00e7aeso26753345e9.2 for ; Tue, 19 May 2026 07:15:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779200123; x=1779804923; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=A6DuZOB9oPUQHqKQEB3iHnG+d1dypyecAQyiCjdc3Bc=; b=MMjcWyBiRsx/PuwwOugOcRGghPiDULrIZVGl7JUoVhbd8NB92J/Tm4UTE0IfKB0hE6 p3H5TkOAxB8oLmz7Dh8W0WIULzcnp9/YzrpNGIvB/sQCor5ohTVPY+2H8+0hIaW0vOcp Mb4vEpJ8LLBUyqrQ2oU/21D/AyiIjXf67SaSkN09TK2i8l2j1p5c1JImDydzxUvFmEVq 4r0dVDMWanWgMaSlF8LYbYEBMgSkG5BcKIzKBLzrLHuxdPgJveimUgAF5GuYCM/Mad4h w947I34X4sbVL/c78QMn49NtfT2+sXoO82lVLjmOzjibMD9wiajgJvtKjeisTs1g7ies wNSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779200123; x=1779804923; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=A6DuZOB9oPUQHqKQEB3iHnG+d1dypyecAQyiCjdc3Bc=; b=di+UTReTU4pM6xfM7rPqa+dlCeYs533p8/dDg0QiNeM7Gy0hOQiDJALWCakaunsfUS a8+xdYh7momB+sE/sS9QwqvzGg7hSIPlEZbuzNLg+KmGLODp/rLae6s7Kv463NhVnohL 2OUxJEWO/NMk0Kd3s9W0Y7oc5dIePyWehrxxrwIyVMDjxV4ZYyY8v+j6eWO0zxyvgvmy r1QkG05FWdZGMQT7S8V6iIHkuP0dhrm6aKBdnVRU+tdI5oy9VZUm4XFCD8zunFriSVzC 1FKcg9qsa4hEkUdOftNDaR/df7YuAw6An7y8RDjPvvor7SVc8rZeiwQmaQL5HaqPLhfm Wo6w== X-Forwarded-Encrypted: i=1; AFNElJ8oPUXsRykcTuxT37t9tWvbbDw1c/rOIMIoaoF8LhevEngwFxPyUFZ2BoI/9s35wISBaR4XEDYCjouXb8s=@vger.kernel.org X-Gm-Message-State: AOJu0Yxgh4yY3lBBROoQ669e8uk/vRaZppfgmNtZoJQHR7qQOiZnrWUa TMhT8niFgCRxJr3qhW0RZ0rUstZRM5597EED8t4k0OahYHkqZrNO92kx X-Gm-Gg: Acq92OHsIgdy07a31zc5uBj30qmO6PzJiTxUS1uz2BZtflqXpU4C7q18/g853UkqfJK aVGfdFmuH+hjSDvN8MO4c3Ayd/mzPj9q3qEMilimW1iLIc/rV2LViU6Jb4+93tVfQdyP1ZIftjw Osea/mPd/iFYGDRPsVdCYErMRsr1qXuTiRWjnkGnhCIVvbY/I/J1VaMiQQYDgCyIyr/ZIqI14se uj53rQ/rSaaTk5W40EqzzciEbv0tCJYD8xe5EZOyxYz1cN2NHk0RbGkUpGqD1KkoGsTuKw99Rdh 2EY568hVpusvxnfnLoCDKq84GybyKXfhAhQIHTx2gMMzGZECU1lrEjeQwzl3dfwJhrDszDGUO+u 466+KaesOBdtKI1lEmmSr1AD374t4vyxt1WPFp04ydFDY6GPqysX/oGy//jLd4vqTV6A+ZeQXIe cmL1/8Bhh3I4js9zNg4qz/ALUB4ajP8+oh1A80iOXwU6mCYuaJ X-Received: by 2002:a05:600c:b95:b0:48a:8b02:ae91 with SMTP id 5b1f17b1804b1-48fe60ea2dfmr299875135e9.11.1779200123300; Tue, 19 May 2026 07:15:23 -0700 (PDT) Received: from localhost.localdomain ([2a00:23c4:a700:7301:4abf:a82a:41d5:6663]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48fe4c8344asm557912205e9.1.2026.05.19.07.15.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 07:15:22 -0700 (PDT) From: Biju X-Google-Original-From: Biju To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd Cc: Biju Das , Brian Masney , linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Prabhakar Mahadev Lad , Biju Das Subject: [PATCH v3 2/3] clk: renesas: rzg3s/rzg3l: Simplify PLL configuration macro Date: Tue, 19 May 2026 15:15:14 +0100 Message-ID: <20260519141518.389670-3-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> References: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Biju Das Replace the per-SoC G3S_PLL146_CONF() and G3L_PLL1467_CONF() macros with a unified CPG_PLL_CONF(stby, setting) macro defined in rzg2l-cpg.h. Drop the now-redundant GET_REG_SAMPLL_{CLK1, SETTING}() macros, replacing the latter with CPG_PLL1_SETTING_OFFSET() using FIELD_GET() to extract the offset value. Update RZG3L_PLL_{STBY,MON}_OFFSET() macros to derive offsets directly from CPG_PLL_STBY_OFFSET(). No functional changes. Signed-off-by: Biju Das Reviewed-by: Geert Uytterhoeven --- v2->v3: * Rebased to renesas-clk and fixed the merge conflict. v1->v2: * Updated commit description. * Fixed the macro RZG3L_PLL_STBY_OFFSET by using CPG_PLL_STBY_OFFSET. --- drivers/clk/renesas/r9a08g045-cpg.c | 5 +---- drivers/clk/renesas/r9a08g046-cpg.c | 7 ++----- drivers/clk/renesas/rzg2l-cpg.c | 11 +++++------ drivers/clk/renesas/rzg2l-cpg.h | 1 + 4 files changed, 9 insertions(+), 15 deletions(-) diff --git a/drivers/clk/renesas/r9a08g045-cpg.c b/drivers/clk/renesas/r9a0= 8g045-cpg.c index 1232fec913eb..9610676058de 100644 --- a/drivers/clk/renesas/r9a08g045-cpg.c +++ b/drivers/clk/renesas/r9a08g045-cpg.c @@ -50,9 +50,6 @@ #define G3S_SEL_SDHI1 SEL_PLL_PACK(G3S_CPG_SDHI_DSEL, 4, 2) #define G3S_SEL_SDHI2 SEL_PLL_PACK(G3S_CPG_SDHI_DSEL, 8, 2) =20 -/* PLL 1/4/6 configuration registers macro. */ -#define G3S_PLL146_CONF(clk1, clk2, setting) ((clk1) << 22 | (clk2) << 12 = | (setting)) - #define DEF_G3S_MUX(_name, _id, _conf, _parent_names, _mux_flags, _clk_fla= gs) \ DEF_TYPE(_name, _id, CLK_TYPE_MUX, .conf =3D (_conf), \ .parent_names =3D (_parent_names), \ @@ -134,7 +131,7 @@ static const struct cpg_core_clk r9a08g045_core_clks[] = __initconst =3D { =20 /* Internal Core Clocks */ DEF_FIXED(".osc_div1000", CLK_OSC_DIV1000, CLK_EXTAL, 1, 1000), - DEF_G3S_PLL(".pll1", CLK_PLL1, CLK_EXTAL, G3S_PLL146_CONF(0x4, 0x8, 0x100= ), + DEF_G3S_PLL(".pll1", CLK_PLL1, CLK_EXTAL, CPG_PLL_CONF(0, 0x100), 1100000000UL), DEF_FIXED(".pll2", CLK_PLL2, CLK_EXTAL, 200, 3), DEF_FIXED(".pll3", CLK_PLL3, CLK_EXTAL, 200, 3), diff --git a/drivers/clk/renesas/r9a08g046-cpg.c b/drivers/clk/renesas/r9a0= 8g046-cpg.c index fc9db5a2f0ac..a57638734ce7 100644 --- a/drivers/clk/renesas/r9a08g046-cpg.c +++ b/drivers/clk/renesas/r9a08g046-cpg.c @@ -81,9 +81,6 @@ #define G3L_SEL_RSPI1 SEL_PLL_PACK(G3L_CPG_RSPI_SSEL, 2, 2) #define G3L_SEL_RSPI2 SEL_PLL_PACK(G3L_CPG_RSPI_SSEL, 4, 2) =20 -/* PLL 1/4/6/7 configuration registers macro. */ -#define G3L_PLL1467_CONF(clk1, clk2, setting) ((clk1) << 22 | (clk2) << 12= | (setting)) - enum clk_ids { /* Core Clock Outputs exported to DT */ LAST_DT_CORE_CLK =3D R9A08G046_USB_SCLK, @@ -207,11 +204,11 @@ static const struct cpg_core_clk r9a08g046_core_clks[= ] __initconst =3D { DEF_INPUT("eth1_rxc_rx_clk", CLK_ETH1_RXC_RX_CLK_IN), =20 /* Internal Core Clocks */ - DEF_G3L_PLL(".pll1", CLK_PLL1, CLK_EXTAL, G3L_PLL1467_CONF(0x4, 0x8, 0x10= 0), + DEF_G3L_PLL(".pll1", CLK_PLL1, CLK_EXTAL, CPG_PLL_CONF(0, 0x100), 1200000000UL), DEF_FIXED(".pll2", CLK_PLL2, CLK_EXTAL, 200, 3), DEF_FIXED(".pll3", CLK_PLL3, CLK_EXTAL, 200, 3), - DEF_G3L_PLL(".pll6", CLK_PLL6, CLK_EXTAL, G3L_PLL1467_CONF(0x54, 0x58, 0), + DEF_G3L_PLL(".pll6", CLK_PLL6, CLK_EXTAL, CPG_PLL_CONF(0x50, 0), 500000000UL), DEF_FIXED(".pll2_div2", CLK_PLL2_DIV2, CLK_PLL2, 1, 2), DEF_FIXED(".pll2_div2_4", CLK_PLL2_DIV2_4, CLK_PLL2_DIV2, 1, 4), diff --git a/drivers/clk/renesas/rzg2l-cpg.c b/drivers/clk/renesas/rzg2l-cp= g.c index ad9aab2ecc62..096901e25317 100644 --- a/drivers/clk/renesas/rzg2l-cpg.c +++ b/drivers/clk/renesas/rzg2l-cpg.c @@ -58,14 +58,15 @@ #define RZG3S_DIV_NF GENMASK(12, 1) #define RZG3S_SEL_PLL BIT(0) =20 +#define CPG_PLL1_SETTING_OFFSET(conf) FIELD_GET(GENMASK(11, 0), (conf)) #define CPG_PLL_STBY_OFFSET(conf) FIELD_GET(GENMASK(23, 12), (conf)) #define CPG_PLL_CLK1_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x4) #define CPG_PLL_CLK2_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x8) =20 -#define RZG3L_PLL_STBY_OFFSET(x) (GET_REG_SAMPLL_CLK1(x) - 0x4) +#define RZG3L_PLL_STBY_OFFSET(x) (CPG_PLL_STBY_OFFSET(x)) #define RZG3L_PLL_STBY_RESETB BIT(0) #define RZG3L_PLL_STBY_RESETB_WEN BIT(16) -#define RZG3L_PLL_MON_OFFSET(x) (GET_REG_SAMPLL_CLK1(x) + 0x8) +#define RZG3L_PLL_MON_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0xc) #define RZG3L_PLL_MON_RESETB BIT(0) #define RZG3L_PLL_MON_LOCK BIT(4) =20 @@ -75,8 +76,6 @@ #define CLK_MRST_R(reg) (0x180 + (reg)) =20 #define GET_REG_OFFSET(val) ((val >> 20) & 0xfff) -#define GET_REG_SAMPLL_CLK1(val) ((val >> 22) & 0xfff) -#define GET_REG_SAMPLL_SETTING(val) ((val) & 0xfff) =20 #define CPG_WEN_BIT BIT(16) =20 @@ -1117,14 +1116,14 @@ static unsigned long rzg3s_cpg_pll_clk_recalc_rate(= struct clk_hw *hw, u32 nir, nfr, mr, pr, val, setting; u64 rate; =20 - setting =3D GET_REG_SAMPLL_SETTING(pll_clk->conf); + setting =3D CPG_PLL1_SETTING_OFFSET(pll_clk->conf); if (setting) { val =3D readl(priv->base + setting); if (val & RZG3S_SEL_PLL) return pll_clk->default_rate; } =20 - val =3D readl(priv->base + GET_REG_SAMPLL_CLK1(pll_clk->conf)); + val =3D readl(priv->base + CPG_PLL_CLK1_OFFSET(pll_clk->conf)); =20 pr =3D 1 << FIELD_GET(RZG3S_DIV_P, val); /* Hardware interprets values higher than 8 as p =3D 16. */ diff --git a/drivers/clk/renesas/rzg2l-cpg.h b/drivers/clk/renesas/rzg2l-cp= g.h index 17ec6f285c21..bd6169f62538 100644 --- a/drivers/clk/renesas/rzg2l-cpg.h +++ b/drivers/clk/renesas/rzg2l-cpg.h @@ -59,6 +59,7 @@ #define CPG_CLKSTATUS_SELSDHI1_STS BIT(29) =20 #define CPG_SAM_PLL_CONF(stby) ((stby) << 12) +#define CPG_PLL_CONF(stby, setting) ((stby) << 12 | (setting)) =20 #define DDIV_PACK(offset, bitpos, size) \ (((offset) << 20) | ((bitpos) << 12) | ((size) << 8)) --=20 2.43.0 From nobody Mon May 25 02:57:45 2026 Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 13D3A4028F7 for ; Tue, 19 May 2026 14:15:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200127; cv=none; b=P7Q1gfJRoA8srm06p9xER1Gc4rVkH3MFYcu6tQ5Gqt/MBTJgH3dhLxpQDrBg6SESlkS0oVApax31+UHjTzXrlzGjH7K+ch+7Nc0V5qjj9VSfjoeIdnSuNtG/UUiEcGaA10Pbg6g/77mG+Dj6OzYKrcxsedrCVUUgpyheVBbYPzo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779200127; c=relaxed/simple; bh=tDYG3+8XiKZlF3E3b3WpE4A3INkHP9bqPVrhIBkxUdU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DQE/lnKEqJej3aDgF4B5zvjH5fvK27/vhJ2ym+qCjsAWdPmmp1znJPFj/fWntIsbw4fhLd1sTNiZAdP0JvIh0cePcDbAW6DbrZG0OQchYJ+eNVY9iwM/yCzzG0ZYmQYiZKLt97txwoMRPdA+huC7g/QTZ8wM5f6oniMXuLCnS8c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=o60kHnXg; arc=none smtp.client-ip=209.85.221.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="o60kHnXg" Received: by mail-wr1-f42.google.com with SMTP id ffacd0b85a97d-45e7c636e74so1610082f8f.0 for ; Tue, 19 May 2026 07:15:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779200124; x=1779804924; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jYVmVWSUhwTTTImhIixvGMooyyhf3UJ+qaABfiENa7U=; b=o60kHnXgWb9eLA6ZdExRjr7HcrasXwQk9YGiQ8SsEevEvsRZL1k3PmrrhAzxWpkJBt OM+l+ydWAa5TWquoI0drf3KaWQ8zaYdA2sLjj7846/FDTMASO1UyRlMA7nz/rTgs80aw w/vMfYo5xY3ylco88TWQnMW69Bh9oyCYhvpJP+kh1keCaDaeIYKPFxWTATjkV0TQfIa7 +sp0MWaYzlSWnqrymnnF9tEiY1MyIC1m5BKkXVHiO8Pr4D3g2cCTbNZh0UIEKOHFEC2w XtNr/8DVLPMoZCmtGZFvZVc3050gIcTCCyTbBv0TyAASkIKMojKONrt5UyTVNhoK0BNY 2AEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779200124; x=1779804924; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=jYVmVWSUhwTTTImhIixvGMooyyhf3UJ+qaABfiENa7U=; b=i5ArOU6BHJG3gzhrcsVFJFqwx+6GMlLHOTqLTSOCpBAT2gAEifk94Qld/SQbZhdk51 VaPtVEDVuFZI5qh/6m39o6zte2Y1uiT++GlvzsIsRqTEAQ+TUz+nBMm1TWg8c965Ejow w8CTRsfMzDLhKa3Y4jSKKy1fx+k7dGOli6pHi+RpkAdBWNLPjN0uYTM9k2YU9CZ8AUor b3rZ9eggfBFaSIY7cMiIhyv4G5PwNRTSUALxw5/no6w9nMPZizm3MOYGViK/7Nhl7gb6 BmbpQaP5P/khKxr96IvQ+oJwRNm3YhnamNg5UKEyk/9c0lXKzj/Is0bD6+0GeDXMV0CC Udbw== X-Forwarded-Encrypted: i=1; AFNElJ8rw0Ffhi0K8mFMH+WmMJzwyYFKstDs69muYnDdJhh0jsm0+QYcBLcVgP28OC5apmwv2ClgnsmVnzlAB1Q=@vger.kernel.org X-Gm-Message-State: AOJu0Ywa7rGv3k+eVh0SLW+itSM9Shv2/vNMqE6l5/5Cr8v5pBscNKbq Ppmwqc6TQhffbUAxiQI1IdHQbXjZ+8rBPROoWrSqAYhgkljEy+a8fgu7 X-Gm-Gg: Acq92OHznQ60CF64KysDNIOFtCcBHOvbi2t7rw+P/7ao8k27D7c4VU1EX08zR84B6oN ElKHIPykO0lFhtyiB5EQXyzG36MVrj39MshQGbr2F9AMUvi5nQodXolJyfiCwq/qVrwDgJSl6ft Y/W5DN+8QVO6P+zh7w8n9KMurI8ynUZlWR6zV68F8jtU/36BlLtkKCnn0jvLXQ89w1LkaQ47vNB fWhkrn7/S/OmwVu9SU8wcUiFVuymX8MaqcxlfsXrG73QnhYrRKDoSbEB0ARBj9i+EPxuYSjNVcf Jhmxz8kwSdo49D2pFU21GP2PkTGWmCgGpmadYcuoOqiPsWOSaI/KyYlKvYpuTqZdi4+qoThbz3t 8CdqKkAYtrGRN4EJqJJzxgAW05rQFn97ztGYvl41NUdPPaUT2ebnfcuK0buZKkVrtf0SAgIl7rA 2260ychACVKgnee90DLGh9ZfRiMEtgu8yIIigf9hWbe3sK2Wo8 X-Received: by 2002:a05:600c:8592:b0:48a:7aad:4425 with SMTP id 5b1f17b1804b1-48fe60e5235mr228206945e9.3.1779200124022; Tue, 19 May 2026 07:15:24 -0700 (PDT) Received: from localhost.localdomain ([2a00:23c4:a700:7301:4abf:a82a:41d5:6663]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48fe4c8344asm557912205e9.1.2026.05.19.07.15.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 07:15:23 -0700 (PDT) From: Biju X-Google-Original-From: Biju To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd Cc: Biju Das , Brian Masney , linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Prabhakar Mahadev Lad , Biju Das Subject: [PATCH v3 3/3] clk: renesas: rzg2l: Rename RZG3L-prefixed PLL macros to CPG-prefixed ones Date: Tue, 19 May 2026 15:15:15 +0100 Message-ID: <20260519141518.389670-4-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> References: <20260519141518.389670-1-biju.das.jz@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Biju Das Rename RZG3L_PLL_STBY_OFFSET(), RZG3L_PLL_STBY_RESETB, RZG3L_PLL_STBY_RESETB_WEN, RZG3L_PLL_MON_OFFSET(), RZG3L_PLL_MON_RESETB, and RZG3L_PLL_MON_LOCK to their CPG_PLL_* equivalents to reflect that these macros are not RZG3L-specific and are shared across SoCs. Also fold CPG_PLL_MON_OFFSET() into rzg2l-cpg.c alongside the other CPG_PLL_*_OFFSET() helpers introduced in previous patches. No functional changes. Reviewed-by: Geert Uytterhoeven Signed-off-by: Biju Das --- v2->v3: * Rebased to renesas-clk. v1->v2: * Moved CPG_PLL_STBY_{RESETB_WEN,RESETB} near to CPG_PLL_STBY_OFFSET. * Reorderd the above macros * Moved CPG_PLL_MON_{LOCK,RESETB} near to CPG_PLL_MON_OFFSET. * Reorderd the above macros * Dropped a blank line. * Retained the tag as it is trivial changes. --- drivers/clk/renesas/rzg2l-cpg.c | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/drivers/clk/renesas/rzg2l-cpg.c b/drivers/clk/renesas/rzg2l-cp= g.c index 096901e25317..0abe00e2960b 100644 --- a/drivers/clk/renesas/rzg2l-cpg.c +++ b/drivers/clk/renesas/rzg2l-cpg.c @@ -60,15 +60,13 @@ =20 #define CPG_PLL1_SETTING_OFFSET(conf) FIELD_GET(GENMASK(11, 0), (conf)) #define CPG_PLL_STBY_OFFSET(conf) FIELD_GET(GENMASK(23, 12), (conf)) +#define CPG_PLL_STBY_RESETB_WEN BIT(16) +#define CPG_PLL_STBY_RESETB BIT(0) #define CPG_PLL_CLK1_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x4) #define CPG_PLL_CLK2_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0x8) - -#define RZG3L_PLL_STBY_OFFSET(x) (CPG_PLL_STBY_OFFSET(x)) -#define RZG3L_PLL_STBY_RESETB BIT(0) -#define RZG3L_PLL_STBY_RESETB_WEN BIT(16) -#define RZG3L_PLL_MON_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0xc) -#define RZG3L_PLL_MON_RESETB BIT(0) -#define RZG3L_PLL_MON_LOCK BIT(4) +#define CPG_PLL_MON_OFFSET(x) (CPG_PLL_STBY_OFFSET(x) + 0xc) +#define CPG_PLL_MON_LOCK BIT(4) +#define CPG_PLL_MON_RESETB BIT(0) =20 #define CLK_ON_R(reg) (reg) #define CLK_MON_R(reg) (0x180 + (reg)) @@ -1188,8 +1186,8 @@ static int rzg3l_cpg_pll_clk_is_enabled(struct clk_hw= *hw) { struct pll_clk *pll_clk =3D to_pll(hw); struct rzg2l_cpg_priv *priv =3D pll_clk->priv; - u32 val =3D readl(priv->base + RZG3L_PLL_MON_OFFSET(pll_clk->conf)); - u32 mon_val =3D RZG3L_PLL_MON_RESETB | RZG3L_PLL_MON_LOCK; + u32 val =3D readl(priv->base + CPG_PLL_MON_OFFSET(pll_clk->conf)); + u32 mon_val =3D CPG_PLL_MON_RESETB | CPG_PLL_MON_LOCK; =20 /* Ensure both RESETB and LOCK bits are set */ return (mon_val =3D=3D (val & mon_val)); @@ -1199,17 +1197,17 @@ static int rzg3l_cpg_pll_clk_endisable(struct clk_h= w *hw, bool enable) { struct pll_clk *pll_clk =3D to_pll(hw); struct rzg2l_cpg_priv *priv =3D pll_clk->priv; - u32 mon_mask =3D RZG3L_PLL_MON_RESETB | RZG3L_PLL_MON_LOCK; - u32 val =3D RZG3L_PLL_STBY_RESETB_WEN; + u32 mon_mask =3D CPG_PLL_MON_RESETB | CPG_PLL_MON_LOCK; + u32 val =3D CPG_PLL_STBY_RESETB_WEN; u32 stby_offset, mon_offset; u32 mon_val =3D 0; int ret; =20 - stby_offset =3D RZG3L_PLL_STBY_OFFSET(pll_clk->conf); - mon_offset =3D RZG3L_PLL_MON_OFFSET(pll_clk->conf); + stby_offset =3D CPG_PLL_STBY_OFFSET(pll_clk->conf); + mon_offset =3D CPG_PLL_MON_OFFSET(pll_clk->conf); =20 if (enable) { - val |=3D RZG3L_PLL_STBY_RESETB; + val |=3D CPG_PLL_STBY_RESETB; mon_val =3D mon_mask; } =20 --=20 2.43.0