Re: [PATCH v5 1/3] i2c: tegra: Fix reset error handling with ACPI
From: Andy Shevchenko
Date: Wed Jul 02 2025 - 11:15:00 EST
On Wed, Jul 02, 2025 at 06:04:44PM +0300, Andy Shevchenko wrote:
> On Wed, Jul 02, 2025 at 07:04:47PM +0530, Akhil R wrote:
...
> > +static int tegra_i2c_reset(struct tegra_i2c_dev *i2c_dev)
> > +{
> > + acpi_handle handle = ACPI_HANDLE(i2c_dev->dev);
> > + int err;
> > +
> > + if (handle) {
> > + err = acpi_evaluate_object(handle, "_RST", NULL, NULL);
> > + if (ACPI_FAILURE(err))
> > + return -EIO;
> > +
> > + return 0;
> > + }
> > +
> > + return reset_control_reset(i2c_dev->rst);
>
> It's better to be written other way around:
>
> acpi_handle handle;
> int err;
>
> handle = ACPI_HANDLE(i2c_dev->dev);
> if (!handle)
> return reset_control_reset(i2c_dev->rst);
>
> err = acpi_evaluate_object(handle, "_RST", NULL, NULL);
> if (ACPI_FAILURE(err))
> return -EIO;
>
> return 0;
>
> > +}
>
> Other than that, LGTM,
>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Actually I have to withdraw the tag. The above function is repetition of
the device_reset() / device_reset_optional(). Please use that instead.
Also in the next version provide a cover letter. I use my own script [1]
that makes me sure I won't skip it.
[1]: https://github.com/andy-shev/home-bin-tools/blob/master/ge2maintainer.sh
--
With Best Regards,
Andy Shevchenko