From nobody Thu Apr 9 18:46:40 2026 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (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 4D58831195B for ; Fri, 6 Mar 2026 13:42:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772804557; cv=none; b=VpAsUxzIfYM5qjavuzZh1Ba4AvAnh/7d0FwFlYPyzJ1sadS/xxHJ9kYp70ipg3tBN1MjTEySsfSXgMEiz84v8hUY9+4d2EMTqp93Yf1jNIjLrcOEZJMoztC7b5aSx3i8E55J0sx7QRCeeHrQAnyL4iGZ/I5FZSYjiXm/gFrhE7Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772804557; c=relaxed/simple; bh=nzB4vn1IjWBHrbgZS/e94Dund4pW6w6VdfFOAfcUVCA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ia3jKmNXgHowEEg0kDnkfal4T9NCTR19OScWFTxiScitXC29wxUHAjI2EjgF/WVdcwkqZrUYgD6YQ0reyhiGSDzsCbqlYeBdaz1rDNY2u/F9dws5deyecxVrYomDlLOf7QjnCeTsFSnEssrXK+3jy9i1M44JOKzXZ9ec7k6bsrE= 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=YC9Oq7/h; arc=none smtp.client-ip=209.85.221.50 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="YC9Oq7/h" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-439b78b638eso6064409f8f.2 for ; Fri, 06 Mar 2026 05:42:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772804554; x=1773409354; 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=o6IrVxXy7CXsl37mE9WFjkK5uiaupuO7eK2CML6ou7w=; b=YC9Oq7/hSZsqpVQhhEJcMFvm2hsDb4UFGUcs1Sc5g3V+aK4VkC4bVkV2FISeLXr2Q+ PN73/ROnpud4snalhBychcaQkjQrX4Ew9jlEDHY/OMH7puONU9YpDqslWSCe6hmbK8fh 6uNkdWO2Kak/lMqA/cMwTzdPuJSmwrzJHdb9AkgnfAbVZ4RKA5vk30HQQN0v8ViGnwfs 5rNl4d38UtlKqOun5HqF0Hjp+Jr5WDsmAH7OjCbIzOuzru16dnZcWakUS65bkmwe/qDd VFAe6Zb7mb75WItvqhvj3Q9bGQFxiQemG3XjGCRp5y1sfO222xXNZIsGwzmz9+278Irz 7Kyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772804554; x=1773409354; 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=o6IrVxXy7CXsl37mE9WFjkK5uiaupuO7eK2CML6ou7w=; b=h/LgFlq6BiDIBlDbzxa/UWz5USIUj6fjd0HWqi0Mx3/NWq05+jYYlouwj6Qbe1AN4L 00c5tcZ6fBZGFpqSaLL65LiPle+F0yS9vYg2EWH6vXU3D6ixZ6hAaqohMUEOkzRGytDK IPWNSQGVaegn5XfM/NDVHrVV4+sSpDGgc7EmZ513/ykkAw3GnDWFI6ccLYD0Mp0iopGx ixjkgP3QOoj9hbYt6daTnkCYyjW8xjqsWTha/6xVxVJXbySJKrJP07fz9rLW7sAHXCnc rsXV3+JObDSJ37k2QDfR4a6L9qbAxvOz5D3XK+euOg7I3KBDiuZr2ojMtcvKuJ6hqAtl Dg+w== X-Forwarded-Encrypted: i=1; AJvYcCWHPm9v18ztuAMNKbxtKj99ZGSDGA30Yy+zUXT2IG8pSXcwXIQDyVsgQIyqxXAskT9Ln7AZNFE0XvaEg4g=@vger.kernel.org X-Gm-Message-State: AOJu0YxdhVKJGwDjecyDZObZ80hgSeWMY9C/Ih2JZhaESYeJnj8DOTpm tI3Q853PMNg6dkJc2tmocehnmyN1l8KyfWfd/biBrHs56yAgCjO8ceSL X-Gm-Gg: ATEYQzxoM49hT3787kT1bUe7XA7kEapSiBdLoaweR/Q7UZUr8apf9IhmaJmFC4jwrfs /WWbO7aaWkCSNQiUvEDyhr6O3f0ab09lXTtb4le/pNA637J5RWTYMoXSMvb68zqxYP2zBP5+/uB vNM5iIo72IdGCB3tpsM8WQuy29n+QXVvwDLRZjQg2WmUFcYyHzjKseUR8m3xAXAjLZwLcxjDMNH HMp7ugEjW9Ha2m0rKnd1b/X/C46lO3tHjMG6sfXoTv0G52ASqO6z04am3hGZA917lQxwkOsbtVJ aWwt+QiD9uMLZtTjQIvSOYrk2Z1AbasaIN3YxmeWTNDecrp2iZzZeERG8ReC2ZBcuIuQ40r/skX Cytx8Jry9wwsmJ66qSvh+ZRUJ41BtlohVn+b0rHas0vHjxYwdVu8dfhUAQXxjSL9OU3fpLiPWIx mPMe/WouhI4uVSjJAzwGwxC2ps8NNr2FnllvsR3Z76hY99uEs= X-Received: by 2002:a05:6000:430d:b0:439:b82d:3b97 with SMTP id ffacd0b85a97d-439da662378mr3547221f8f.17.1772804553685; Fri, 06 Mar 2026 05:42:33 -0800 (PST) Received: from localhost.localdomain ([2a00:23c4:a758:8a01:d0f3:534:36a3:523a]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439dadb85b8sm4223790f8f.17.2026.03.06.05.42.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 05:42:33 -0800 (PST) From: Biju X-Google-Original-From: Biju To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , Philipp Zabel Cc: Biju Das , linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Prabhakar Mahadev Lad , Biju Das Subject: [PATCH 2/3] clk: renesas: r9a07g04{3,4}/r9a08g045-cpg: Add critical reset entries Date: Fri, 6 Mar 2026 13:42:24 +0000 Message-ID: <20260306134228.871815-3-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260306134228.871815-1-biju.das.jz@bp.renesas.com> References: <20260306134228.871815-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 The RZ/G2L SoC family requires DMA resets to be deasserted for routing some peripheral interrupts to the CPU. Asserting these resets after boot would silently break interrupt delivery with no driver to restore them. Mark the DMA resets as critical by adding them to the crit_resets table in the SoC-specific rzg2l_cpg_info for r9a07g043, r9a07g044, and r9a08g045, preventing __rzg2l_cpg_assert() from driving them active and ensuring they are deasserted on probe and resume. Signed-off-by: Biju Das --- drivers/clk/renesas/r9a07g043-cpg.c | 8 ++++++++ drivers/clk/renesas/r9a07g044-cpg.c | 13 +++++++++++++ drivers/clk/renesas/r9a08g045-cpg.c | 9 +++++++++ 3 files changed, 30 insertions(+) diff --git a/drivers/clk/renesas/r9a07g043-cpg.c b/drivers/clk/renesas/r9a0= 7g043-cpg.c index 33e9a1223c72..01d741ed8dc5 100644 --- a/drivers/clk/renesas/r9a07g043-cpg.c +++ b/drivers/clk/renesas/r9a07g043-cpg.c @@ -379,6 +379,11 @@ static const unsigned int r9a07g043_crit_mod_clks[] __= initconst =3D { MOD_CLK_BASE + R9A07G043_DMAC_ACLK, }; =20 +static const unsigned int r9a07g043_critical_resets[] =3D { + R9A07G043_DMAC_ARESETN, + R9A07G043_DMAC_RST_ASYNC, +}; + #ifdef CONFIG_ARM64 static const unsigned int r9a07g043_no_pm_mod_clks[] =3D { MOD_CLK_BASE + R9A07G043_CRU_SYSCLK, @@ -420,5 +425,8 @@ const struct rzg2l_cpg_info r9a07g043_cpg_info =3D { .num_resets =3D R9A07G043_IAX45_RESETN + 1, /* Last reset ID + 1 */ #endif =20 + /* Critical Resets */ + .crit_resets =3D r9a07g043_critical_resets, + .num_crit_resets =3D ARRAY_SIZE(r9a07g043_critical_resets), .has_clk_mon_regs =3D true, }; diff --git a/drivers/clk/renesas/r9a07g044-cpg.c b/drivers/clk/renesas/r9a0= 7g044-cpg.c index 0dd264877b9a..7f1405cab9c3 100644 --- a/drivers/clk/renesas/r9a07g044-cpg.c +++ b/drivers/clk/renesas/r9a07g044-cpg.c @@ -489,6 +489,11 @@ static const unsigned int r9a07g044_crit_mod_clks[] __= initconst =3D { MOD_CLK_BASE + R9A07G044_DMAC_ACLK, }; =20 +static const unsigned int r9a07g044_critical_resets[] =3D { + R9A07G044_DMAC_ARESETN, + R9A07G044_DMAC_RST_ASYNC, +}; + static const unsigned int r9a07g044_no_pm_mod_clks[] =3D { MOD_CLK_BASE + R9A07G044_CRU_SYSCLK, MOD_CLK_BASE + R9A07G044_CRU_VCLK, @@ -519,6 +524,10 @@ const struct rzg2l_cpg_info r9a07g044_cpg_info =3D { .resets =3D r9a07g044_resets, .num_resets =3D R9A07G044_TSU_PRESETN + 1, /* Last reset ID + 1 */ =20 + /* Critical Resets */ + .crit_resets =3D r9a07g044_critical_resets, + .num_crit_resets =3D ARRAY_SIZE(r9a07g044_critical_resets), + .has_clk_mon_regs =3D true, }; #endif @@ -548,6 +557,10 @@ const struct rzg2l_cpg_info r9a07g054_cpg_info =3D { .resets =3D r9a07g044_resets, .num_resets =3D R9A07G054_STPAI_ARESETN + 1, /* Last reset ID + 1 */ =20 + /* Critical Resets */ + .crit_resets =3D r9a07g044_critical_resets, + .num_crit_resets =3D ARRAY_SIZE(r9a07g044_critical_resets), + .has_clk_mon_regs =3D true, }; #endif diff --git a/drivers/clk/renesas/r9a08g045-cpg.c b/drivers/clk/renesas/r9a0= 8g045-cpg.c index 79e7b19c7882..87ee43f9fe18 100644 --- a/drivers/clk/renesas/r9a08g045-cpg.c +++ b/drivers/clk/renesas/r9a08g045-cpg.c @@ -361,6 +361,11 @@ static const unsigned int r9a08g045_crit_mod_clks[] __= initconst =3D { MOD_CLK_BASE + R9A08G045_VBAT_BCLK, }; =20 +static const unsigned int r9a08g045_critical_resets[] =3D { + R9A08G045_DMAC_ARESETN, + R9A08G045_DMAC_RST_ASYNC, +}; + static const unsigned int r9a08g045_no_pm_mod_clks[] =3D { MOD_CLK_BASE + R9A08G045_PCI_CLKL1PM, }; @@ -389,5 +394,9 @@ const struct rzg2l_cpg_info r9a08g045_cpg_info =3D { .resets =3D r9a08g045_resets, .num_resets =3D R9A08G045_VBAT_BRESETN + 1, /* Last reset ID + 1 */ =20 + /* Critical Resets */ + .crit_resets =3D r9a08g045_critical_resets, + .num_crit_resets =3D ARRAY_SIZE(r9a08g045_critical_resets), + .has_clk_mon_regs =3D true, }; --=20 2.43.0