[PATCH v1] i2c: designware: Don't warn about missing get_clk_rate_khz

Heikki Krogerus posted 1 patch 9 months ago
drivers/i2c/busses/i2c-designware-common.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
[PATCH v1] i2c: designware: Don't warn about missing get_clk_rate_khz
Posted by Heikki Krogerus 9 months ago
Converting the WARN_ON() to a dev_dbg() message in
i2c_dw_clk_rate().

That removes the need to supply a dummy implementation for
the callback (or alternatively a dummy clk device) when the
fallback path is preferred where the existing values already
in the clock registers are used - when a firmware has
programmed the clock registers.

The fallback path was introduced in commit 4fec76e0985c
("i2c: designware: Fix wrong setting for {ss,fs,hs}_{h,l}cnt
registers").

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
---
 drivers/i2c/busses/i2c-designware-common.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-designware-common.c b/drivers/i2c/busses/i2c-designware-common.c
index 8eb7bd640f8d..5b1e8f74c4ac 100644
--- a/drivers/i2c/busses/i2c-designware-common.c
+++ b/drivers/i2c/busses/i2c-designware-common.c
@@ -572,8 +572,10 @@ u32 i2c_dw_clk_rate(struct dw_i2c_dev *dev)
 	 * Clock is not necessary if we got LCNT/HCNT values directly from
 	 * the platform code.
 	 */
-	if (WARN_ON_ONCE(!dev->get_clk_rate_khz))
+	if (!dev->get_clk_rate_khz) {
+		dev_dbg_once(dev->dev, "Callback get_clk_rate_khz() is not defined\n");
 		return 0;
+	}
 	return dev->get_clk_rate_khz(dev);
 }
 
-- 
2.47.2
Re: [PATCH v1] i2c: designware: Don't warn about missing get_clk_rate_khz
Posted by Andi Shyti 8 months, 4 weeks ago
Hi Heikki,

On Tue, May 13, 2025 at 03:40:15PM +0300, Heikki Krogerus wrote:
> Converting the WARN_ON() to a dev_dbg() message in
> i2c_dw_clk_rate().
> 
> That removes the need to supply a dummy implementation for
> the callback (or alternatively a dummy clk device) when the
> fallback path is preferred where the existing values already
> in the clock registers are used - when a firmware has
> programmed the clock registers.
> 
> The fallback path was introduced in commit 4fec76e0985c
> ("i2c: designware: Fix wrong setting for {ss,fs,hs}_{h,l}cnt
> registers").
> 
> Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

merged to i2c/i2c-host.

Thanks,
Andi
Re: [PATCH v1] i2c: designware: Don't warn about missing get_clk_rate_khz
Posted by Jarkko Nikula 9 months ago
On 5/13/25 3:40 PM, Heikki Krogerus wrote:
> Converting the WARN_ON() to a dev_dbg() message in
> i2c_dw_clk_rate().
> 
> That removes the need to supply a dummy implementation for
> the callback (or alternatively a dummy clk device) when the
> fallback path is preferred where the existing values already
> in the clock registers are used - when a firmware has
> programmed the clock registers.
> 
> The fallback path was introduced in commit 4fec76e0985c
> ("i2c: designware: Fix wrong setting for {ss,fs,hs}_{h,l}cnt
> registers").
> 
> Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> ---
>   drivers/i2c/busses/i2c-designware-common.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>