iio: imu: bmi323: Use iio read_acpi_mount_matrix() helper
authorDenis Benato <benato.denis96@gmail.com>
Thu, 23 May 2024 17:47:36 +0000 (19:47 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Tue, 4 Jun 2024 18:53:07 +0000 (19:53 +0100)
bmi150-accel and bmi323-imu are declared in an almost identical way in the ACPI and in some devices such as the Asus RC71L the "ROTM" property can be found: parse and use the ACPI-defined mount-matrix.

Co-developed-by: Luke D. Jones <luke@ljones.dev>
Co-developed-by: Jonathan LoBue <jlobue10@gmail.com>
Signed-off-by: Denis Benato <benato.denis96@gmail.com>
Link: https://lore.kernel.org/r/20240523174736.16692-2-benato.denis96@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/imu/bmi323/bmi323_core.c

index 5d42ab9b176a389be85102b6dc94a271ffcf1ec5..b391e5e701b1c8c811aa9554cde55409419d979b 100644 (file)
@@ -2083,9 +2083,11 @@ int bmi323_core_probe(struct device *dev)
        if (ret)
                return -EINVAL;
 
-       ret = iio_read_mount_matrix(dev, &data->orientation);
-       if (ret)
-               return ret;
+       if (!iio_read_acpi_mount_matrix(dev, &data->orientation, "ROTM")) {
+               ret = iio_read_mount_matrix(dev, &data->orientation);
+               if (ret)
+                       return ret;
+       }
 
        indio_dev->name = "bmi323-imu";
        indio_dev->info = &bmi323_info;