Hi, On 3/26/24 9:27 PM, Andy Shevchenko wrote: > We don't use the PMIC I²C client device after getting its address. > Drop the reference to it. We do not expect device to disappear > as it should be taken care by the OpRegion drivers. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Thank you for your patch. I have merged this in my media-atomisp branch: https://git.kernel.org/pub/scm/linux/kernel/git/hansg/linux.git/log/?h=media-atomisp And this patch will be included in my next pull-request to Mauro (to media subsystem maintainer) Regards, Hans > --- > .../media/atomisp/pci/atomisp_gmin_platform.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c b/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c > index 139ad7ad1dcf..80aa2211cdc3 100644 > --- a/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c > +++ b/drivers/staging/media/atomisp/pci/atomisp_gmin_platform.c > @@ -497,16 +497,19 @@ static u8 gmin_get_pmic_id_and_addr(struct device *dev) > if (pmic_id) > return pmic_i2c_addr; > > - if (gmin_i2c_dev_exists(dev, PMIC_ACPI_TI, &power)) > + if (gmin_i2c_dev_exists(dev, PMIC_ACPI_TI, &power)) { > pmic_id = PMIC_TI; > - else if (gmin_i2c_dev_exists(dev, PMIC_ACPI_AXP, &power)) > + } else if (gmin_i2c_dev_exists(dev, PMIC_ACPI_AXP, &power)) { > pmic_id = PMIC_AXP; > - else if (gmin_i2c_dev_exists(dev, PMIC_ACPI_CRYSTALCOVE, &power)) > + } else if (gmin_i2c_dev_exists(dev, PMIC_ACPI_CRYSTALCOVE, &power)) { > pmic_id = PMIC_CRYSTALCOVE; > - else > + } else { > pmic_id = PMIC_REGULATOR; > + return 0; > + } > > - pmic_i2c_addr = power ? power->addr : 0; > + pmic_i2c_addr = power->addr; > + put_device(&power->dev); > return pmic_i2c_addr; > } >