This patch adds a description of the duplicate ACPI identifier issue between devices using bmc150 and bmi323. Co-developed-by: Jonathan LoBue <jlobue10@xxxxxxxxx> Signed-off-by: Jonathan LoBue <jlobue10@xxxxxxxxx> Co-developed-by: Luke D. Jones <luke@xxxxxxxxxx> Signed-off-by: Luke D. Jones <luke@xxxxxxxxxx> Co-developed-by: Denis Benato <benato.denis96@xxxxxxxxx> Signed-off-by: Denis Benato <benato.denis96@xxxxxxxxx> Co-developed-by: Antheas Kapenekakis <lkml@xxxxxxxxxxx> Signed-off-by: Antheas Kapenekakis <lkml@xxxxxxxxxxx> --- Comment describing the duplicate ACPI identifier issue has been added before the "BOSC0200" entry here. drivers/iio/accel/bmc150-accel-i2c.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/iio/accel/bmc150-accel-i2c.c b/drivers/iio/accel/bmc150-accel-i2c.c index ee1ba134ad42..c831642a0e3d 100644 --- a/drivers/iio/accel/bmc150-accel-i2c.c +++ b/drivers/iio/accel/bmc150-accel-i2c.c @@ -13,6 +13,18 @@ #include "bmc150-accel.h" +/* + * The "BOSC0200" ACPI identifier used here in the bmc150 driver is not + * unique to devices using bmc150. The same "BOSC0200" identifier is found + * in the ACPI tables of the ASUS ROG ALLY and Ayaneo AIR Plus which both + * use a Bosch BMI323 chip. This creates a conflict with duplicate ACPI + * identifiers which multiple drivers want to use. Fortunately, when the + * bmc150 driver starts to load on the ASUS ROG ALLY, the chip id check + * portion fails (correctly) and a dmesg output similar to this: + * "bmc150_accel_i2c i2c-BOSC0200:00: Invalid chip 0" can be seen. + * This allows the bmi323 driver to take over for ASUS ROG ALLY. + */ + #ifdef CONFIG_ACPI static const struct acpi_device_id bmc150_acpi_dual_accel_ids[] = { {"BOSC0200"}, -- 2.43.0