forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/drivers/iio/gyro/mpu3050-core.c
....@@ -1,3 +1,4 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * MPU3050 gyroscope driver
34 *
....@@ -551,7 +552,7 @@
551552 toread = bytes_per_datum;
552553 offset = 1;
553554 /* Put in some dummy value */
554
- fifo_values[0] = 0xAAAA;
555
+ fifo_values[0] = cpu_to_be16(0xAAAA);
555556 }
556557
557558 ret = regmap_bulk_read(mpu3050->map,
....@@ -672,8 +673,6 @@
672673
673674 static const struct iio_buffer_setup_ops mpu3050_buffer_setup_ops = {
674675 .preenable = mpu3050_buffer_preenable,
675
- .postenable = iio_triggered_buffer_postenable,
676
- .predisable = iio_triggered_buffer_predisable,
677676 .postdisable = mpu3050_buffer_postdisable,
678677 };
679678
....@@ -873,10 +872,11 @@
873872 ret = regmap_update_bits(mpu3050->map, MPU3050_PWR_MGM,
874873 MPU3050_PWR_MGM_SLEEP, 0);
875874 if (ret) {
875
+ regulator_bulk_disable(ARRAY_SIZE(mpu3050->regs), mpu3050->regs);
876876 dev_err(mpu3050->dev, "error setting power mode\n");
877877 return ret;
878878 }
879
- msleep(10);
879
+ usleep_range(10000, 20000);
880880
881881 return 0;
882882 }
....@@ -1161,8 +1161,7 @@
11611161 mpu3050->divisor = 99;
11621162
11631163 /* Read the mounting matrix, if present */
1164
- ret = of_iio_read_mount_matrix(dev, "mount-matrix",
1165
- &mpu3050->orientation);
1164
+ ret = iio_read_mount_matrix(dev, "mount-matrix", &mpu3050->orientation);
11661165 if (ret)
11671166 return ret;
11681167
....@@ -1209,7 +1208,6 @@
12091208 if (ret)
12101209 goto err_power_down;
12111210
1212
- indio_dev->dev.parent = dev;
12131211 indio_dev->channels = mpu3050_channels;
12141212 indio_dev->num_channels = ARRAY_SIZE(mpu3050_channels);
12151213 indio_dev->info = &mpu3050_info;