Re: [PATCH] i2c: nvidia-gpu: Handle timeout correctly in gpu_i2c_check_status()
From: Kai-Heng Feng
Date: Mon Mar 23 2020 - 01:38:21 EST
> On Mar 12, 2020, at 00:58, Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> wrote:
>
> Nvidia card may come with a "phantom" UCSI device, and its driver gets
> stuck in probe routine, prevents any system PM operations like suspend.
>
> Let's handle the unaccounted case that the target time equals to jiffies
> in gpu_i2c_check_status(), so the UCSI driver can let the probe fail as
> it should.
>
> Fixes: c71bcdcb42a7 ("i2c: add i2c bus driver for NVIDIA GPU")
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>
A gentle ping...
> ---
> drivers/i2c/busses/i2c-nvidia-gpu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/i2c-nvidia-gpu.c b/drivers/i2c/busses/i2c-nvidia-gpu.c
> index 62e18b4db0ed..1988e93c7925 100644
> --- a/drivers/i2c/busses/i2c-nvidia-gpu.c
> +++ b/drivers/i2c/busses/i2c-nvidia-gpu.c
> @@ -88,7 +88,7 @@ static int gpu_i2c_check_status(struct gpu_i2c_dev *i2cd)
> usleep_range(500, 600);
> } while (time_is_after_jiffies(target));
>
> - if (time_is_before_jiffies(target)) {
> + if (time_is_before_eq_jiffies(target)) {
> dev_err(i2cd->dev, "i2c timeout error %x\n", val);
> return -ETIMEDOUT;
> }
> --
> 2.17.1
>