Re: [PATCH v2 2/9] i2c: riic: Use local `dev` pointer in `dev_err_probe()`

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Prabhakar,

On Wed, Dec 18, 2024 at 12:16:11AM +0000, Prabhakar wrote:
> From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> 
> Update the `riic_init_hw()` function to use the local `dev` pointer in
> calls to `dev_err_probe()`. Previously, `riic_init_hw()` used
> `riic->adapter.dev` in error reporting. Since this function is invoked
> during the probe phase, the I2C adapter is not yet initialized, leading to
> `(null) ...` being printed in error messages. This patch fixes the issue by
> consistently using the local `dev` pointer, which points to
> `riic->adapter.dev.parent`.
> 
> Additionally, replace `dev_err()` with `dev_err_probe()` throughout
> `riic_init_hw()` for consistency.
> 
> Fixes: d982d66514192 ("i2c: riic: remove clock and frequency restrictions")
> Fixes: 71dacb2565ed (i2c: riic: Simplify unsupported bus speed handling")

I'm not sure the Fixes are really necessary here, as it's not
really leading to a bug, but I can live with it. But, then, ...

> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> ---
> v1->v2
> - Collected RB tag from Geert
> ---
>  drivers/i2c/busses/i2c-riic.c | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/i2c/busses/i2c-riic.c b/drivers/i2c/busses/i2c-riic.c
> index bfaa2d728a76..01195ffd4c07 100644
> --- a/drivers/i2c/busses/i2c-riic.c
> +++ b/drivers/i2c/busses/i2c-riic.c
> @@ -320,7 +320,7 @@ static int riic_init_hw(struct riic_dev *riic)
>  				      : I2C_MAX_FAST_MODE_FREQ;
>  
>  	if (t->bus_freq_hz > max_freq)
> -		return dev_err_probe(&riic->adapter.dev, -EINVAL,
> +		return dev_err_probe(dev, -EINVAL,
>  				     "unsupported bus speed %uHz (%u max)\n",
>  				     t->bus_freq_hz, max_freq);
>  
> @@ -356,11 +356,9 @@ static int riic_init_hw(struct riic_dev *riic)
>  		rate /= 2;
>  	}
>  
> -	if (brl > (0x1F + 3)) {
> -		dev_err(&riic->adapter.dev, "invalid speed (%lu). Too slow.\n",
> -			(unsigned long)t->bus_freq_hz);
> -		return -EINVAL;
> -	}
> +	if (brl > (0x1F + 3))
> +		return dev_err_probe(dev, -EINVAL, "invalid speed (%lu). Too slow.\n",
> +				     (unsigned long)t->bus_freq_hz);

... I'm not happy with the splitting here: mixing a bug fix with
a cosmetic is wrong for two reasons:

 - they are conceptually different;
 - fixes take are applied to the -fixes branch and sent to the
   weekly pull request.

I will appreciate if this second chunk is squashed with patch 1
and the first part has a patch on its own.

Thanks,
Andi

>  
>  	brh = total_ticks - brl;
>  
> -- 
> 2.43.0
> 




[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux