i2c: i801: Register optional lis3lv02d I2C device on Dell machines
authorPali Rohár <pali.rohar@gmail.com>
Thu, 6 Jun 2019 18:18:45 +0000 (20:18 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Fri, 7 Jun 2019 22:13:44 +0000 (00:13 +0200)
commit19b07cb4a187fe5d72519491fc2d11a3a7af1219
treedee165612b76996a0d1e6c4f43d35414514244b7
parentf0e4cd948b918d5277cd141eaf8d2ab79b0c78b2
i2c: i801: Register optional lis3lv02d I2C device on Dell machines

Dell platform team told us that some (DMI whitelisted) Dell Latitude
machines have ST microelectronics accelerometer at I2C address 0x29.

Presence of that ST microelectronics accelerometer is verified by existence
of SMO88xx ACPI device which represent that accelerometer. Unfortunately
ACPI device does not specify I2C address.

This patch registers lis3lv02d device for selected Dell Latitude machines
at I2C address 0x29 after detection. And for Dell Vostro V131 machine at
I2C address 0x1d which was manually detected.

Finally commit a7ae81952cda ("i2c: i801: Allow ACPI SystemIO OpRegion to
conflict with PCI BAR") allowed to use i2c-i801 driver on Dell machines so
lis3lv02d correctly initialize accelerometer.

Tested on Dell Latitude E6440.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-i801.c
drivers/platform/x86/dell-smo8800.c