Hello On 26/11/2021 11:30, Hans de Goede wrote: > Hi, > > On 11/26/21 00:39, Laurent Pinchart wrote: >> Hi Hans, >> >> Thank you for the patch. >> >> On Thu, Nov 25, 2021 at 05:54:04PM +0100, Hans de Goede wrote: >>> From: Daniel Scally <djrscally@xxxxxxxxx> >>> >>> The TPS68470 PMIC has an I2C passthrough mode through which I2C traffic >>> can be forwarded to a device connected to the PMIC as though it were >>> connected directly to the system bus. Enable this mode when the chip >>> is initialised. >> Is there any drawback doing this unconditionally, if nothing is >> connected to the bus on the other side (including no pull-ups) ? > I actually never took a really close look at this patch, I just > sorta inherited it from Daniel. > > Now that I have taken a close look, I see that it is setting the > exact same bits as which get set when enabling the VSIO regulator. > > The idea here is that the I2C-passthrough only gets enabled when > the VSIO regulator is turned on, because some sensors end up > shorting the I2C pins to ground when the sensor is not powered. > > Since we set these bits when powering up the VSIO regulator > and since we do that before trying to talk to the sensor > I don't think that we need this (hack) anymore. > > I will give things a try without this change and if things > still work I will drop this patch from the set. > > Daniel, what do you think? Humm, we're only using the VSIO regulator with the VCM though right? Which might not be on when the ov8865 tries to probe. I haven't tried without this patch to be honest; I set it because that was what Windows does when powering on the PMIC. > Regards, > > Hans > > > > > > >>> Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> >>> Signed-off-by: Daniel Scally <djrscally@xxxxxxxxx> >>> --- >>> .../x86/intel/int3472/intel_skl_int3472_tps68470.c | 7 +++++++ >>> 1 file changed, 7 insertions(+) >>> >>> diff --git a/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.c b/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.c >>> index c05b4cf502fe..42e688f4cad4 100644 >>> --- a/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.c >>> +++ b/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.c >>> @@ -45,6 +45,13 @@ static int tps68470_chip_init(struct device *dev, struct regmap *regmap) >>> return ret; >>> } >>> >>> + /* Enable I2C daisy chain */ >>> + ret = regmap_write(regmap, TPS68470_REG_S_I2C_CTL, 0x03); >>> + if (ret) { >>> + dev_err(dev, "Failed to enable i2c daisy chain\n"); >>> + return ret; >>> + } >>> + >>> dev_info(dev, "TPS68470 REVID: 0x%02x\n", version); >>> >>> return 0;