Re: [PATCH] i2c: i801: add lis3lv02d's I2C address for Vostro 5568

From: Pali Rohár
Date: Wed Oct 19 2022 - 16:52:48 EST


On Wednesday 19 October 2022 22:34:03 Nam Cao wrote:
> On Tue, Oct 18, 2022 at 08:00:51PM +0200, Pali Rohár wrote:
> > On Tuesday 18 October 2022 19:39:51 Jean Delvare wrote:
> > > On Thu, 06 Oct 2022 16:54:40 +0200, Nam Cao wrote:
> > > > Dell Vostro 5568 laptop has lis3lv02d, but its i2c address is not known
> > > > to the kernel. Add this address.
> > > >
> > > > Output of "cat /sys/devices/platform/lis3lv02d/position" on Dell Vostro
> > > > 5568 laptop:
> > > > - Horizontal: (-18,0,1044)
> > > > - Front elevated: (522,-18,1080)
> > > > - Left elevated: (-18,-360,1080)
> > > > - Upside down: (36,108,-1134)
> > > >
> > > > Signed-off-by: Nam Cao <namcaov@xxxxxxxxx>
> > > > ---
> > > > drivers/i2c/busses/i2c-i801.c | 1 +
> > > > 1 file changed, 1 insertion(+)
> > > >
> > > > diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
> > > > index a176296f4fff..e46561e095c6 100644
> > > > --- a/drivers/i2c/busses/i2c-i801.c
> > > > +++ b/drivers/i2c/busses/i2c-i801.c
> > > > @@ -1243,6 +1243,7 @@ static const struct {
> > > > */
> > > > { "Latitude 5480", 0x29 },
> > > > { "Vostro V131", 0x1d },
> > > > + { "Vostro 5568", 0x29 },
> > > > };
> > > >
> > > > static void register_dell_lis3lv02d_i2c_device(struct i801_priv *priv)
> > >
> > > Fine with me.
> > >
> > > Reviewed-by: Jean Delvare <jdelvare@xxxxxxx>
> > >
> > > Pali, OK with you?
> >
> > Yes, nice to see that other people discovered another hidden hardware
> > devices in their own laptops :-)
> >
> > Reviewed-by: Pali Rohár <pali@xxxxxxxxxx>
> >
> >
> > Nam Cao, could you check your ACPI DSDT table if there is not specified
> > this smbus/i2c address 0x29? Autodiscovery would be better than
> > hardcoding. At least for E6440 I was told that BIOS does not provide it.
>
> My reply got rejected by mailing list because the attachment was too big.
> So I re-send this without the attachment, so that everyone can see.
>
> I searched the DSDT table for "29", but none of them looks like an i2c
> address.
>
> But this is the first time I hear about ACPI DSDT table, so I may did
> something incorrectly. I did:
> - cp /sys/firmware/acpi/tables/DSDT table
> - iasl -d table
> - Search through table.dsl
>
> Best regards,
> Nam

You did it correctly. I'm not surprised that you have not found
anything. When I did experiments in the past, I was not able too...
That is why there is that harcoded table...

It just means that Dell did not fixed it or they perfectly hidden it.