lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4wbq7yepeqg6lhu34giqlz7fwamtuv4o5r5slm6ggj5ut7omvd@archqknzat3u>
Date: Mon, 14 Apr 2025 01:06:17 +0200
From: Andi Shyti <andi.shyti@...nel.org>
To: mohammed.0.elbadry@...il.com
Cc: Tali Perry <tali.perry1@...il.com>, 
	Avi Fishman <avifishman70@...il.com>, Tomer Maimon <tmaimon77@...il.com>, 
	Patrick Venture <venture@...gle.com>, Nancy Yuen <yuenn@...gle.com>, 
	Benjamin Fair <benjaminfair@...gle.com>, openbmc@...ts.ozlabs.org, linux-i2c@...r.kernel.org, 
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4] i2c: npcm: Add clock toggle recovery

Hi Mohammed,

On Fri, Mar 28, 2025 at 07:32:50PM +0000, mohammed.0.elbadry@...il.com wrote:
> From: Tali Perry <tali.perry1@...il.com>
> 
> During init of the bus, the module checks that the bus is idle.
> If one of the lines are stuck try to recover them first before failing.
> Sometimes SDA and SCL are low if improper reset occurs (e.g., reboot).
> 
> Signed-off-by: Tali Perry <tali.perry1@...il.com>
> Signed-off-by: Mohammed Elbadry <mohammed.0.elbadry@...il.com>
> ---

we are missing the changelog here. You are at v4 and I need to
see the changes between the versions. For now it's OK, please,
next time don't forget to add the changelog.

One more thing, no need to send patches as --in-reply-to your
previous patch.

>  drivers/i2c/busses/i2c-npcm7xx.c | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/i2c/busses/i2c-npcm7xx.c b/drivers/i2c/busses/i2c-npcm7xx.c
> index 2fe68615942e..caf9aa1e6319 100644
> --- a/drivers/i2c/busses/i2c-npcm7xx.c
> +++ b/drivers/i2c/busses/i2c-npcm7xx.c
> @@ -1967,10 +1967,14 @@ static int npcm_i2c_init_module(struct npcm_i2c *bus, enum i2c_mode mode,
>  
>  	/* Check HW is OK: SDA and SCL should be high at this point. */
>  	if ((npcm_i2c_get_SDA(&bus->adap) == 0) || (npcm_i2c_get_SCL(&bus->adap) == 0)) {
> -		dev_err(bus->dev, "I2C%d init fail: lines are low\n", bus->num);
> -		dev_err(bus->dev, "SDA=%d SCL=%d\n", npcm_i2c_get_SDA(&bus->adap),
> -			npcm_i2c_get_SCL(&bus->adap));
> -		return -ENXIO;
> +		dev_warn(bus->dev, " I2C%d SDA=%d SCL=%d, attempting to recover\n", bus->num,

the space at the beginning of the line should be removed. I will
take care of it if you won't be asked to send a new version.

> +				 npcm_i2c_get_SDA(&bus->adap), npcm_i2c_get_SCL(&bus->adap));
> +		if (npcm_i2c_recovery_tgclk(&bus->adap)) {
> +			dev_err(bus->dev, "I2C%d init fail: SDA=%d SCL=%d\n",
> +				bus->num, npcm_i2c_get_SDA(&bus->adap),
> +				npcm_i2c_get_SCL(&bus->adap));
> +			return -ENXIO;

why don't we return the error coming from
npcm_i2c_recovery_tgclk() instead of forcing it to ENXIO?

Thanks,
Andi

> +		}
>  	}
>  
>  	npcm_i2c_int_enable(bus, true);
> -- 
> 2.49.0.472.ge94155a9ec-goog
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ