On Fri, Mar 27, 2020 at 06:40:23PM +0530, Rohit Sarkar wrote: > The debugfs interface provides direct access to read and write device > registers if debugfs is enabled. FWIW, Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > Signed-off-by: Rohit Sarkar <rohitsarkar5398@xxxxxxxxx> > --- > Changelog v1->v2 > * grab a lock to protect driver state > * add a comma at the end of structure member initialisation > > drivers/iio/imu/inv_mpu6050/inv_mpu_core.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > > diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c > index 7cb9ff3d3e94..381a3fb09858 100644 > --- a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c > +++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c > @@ -1248,12 +1248,31 @@ static const struct attribute_group inv_attribute_group = { > .attrs = inv_attributes > }; > > +static int inv_mpu6050_reg_access(struct iio_dev *indio_dev, > + unsigned int reg, > + unsigned int writeval, > + unsigned int *readval) > +{ > + struct inv_mpu6050_state *st = iio_priv(indio_dev); > + int ret = 0; > + > + mutex_lock(&st->lock); > + if (readval) > + ret = regmap_read(st->map, reg, readval); > + else > + ret = regmap_write(st->map, reg, writeval); > + mutex_unlock(&st->lock); > + > + return ret; > +} > + > static const struct iio_info mpu_info = { > .read_raw = &inv_mpu6050_read_raw, > .write_raw = &inv_mpu6050_write_raw, > .write_raw_get_fmt = &inv_write_raw_get_fmt, > .attrs = &inv_attribute_group, > .validate_trigger = inv_mpu6050_validate_trigger, > + .debugfs_reg_access = &inv_mpu6050_reg_access, > }; > > /** > -- > 2.23.0.385.gbc12974a89 > -- With Best Regards, Andy Shevchenko