Message ID | ee4a6be25cc7cf59d90de1b8a463d5908b282ebe.1563226641.git.lorenzo@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | st_lsm6dsx: move {odr,fs}_table in | expand |
On 15.07.19 23:42, Lorenzo Bianconi wrote: > Remove output register definitions and inline register values since > they are used only for iio channel definitions. This is a preliminary > patch to add support for LSM9DS1 sensor to st_lsm6dsx driver > > Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> > --- > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 26 +++++--------------- > 1 file changed, 6 insertions(+), 20 deletions(-) > > diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > index 9aa109428a52..0abd5b85b398 100644 > --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > @@ -61,14 +61,6 @@ > #define ST_LSM6DSX_REG_INT2_ON_INT1_ADDR 0x13 > #define ST_LSM6DSX_REG_INT2_ON_INT1_MASK BIT(5) > > -#define ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR 0x28 > -#define ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR 0x2a > -#define ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR 0x2c > - > -#define ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR 0x22 > -#define ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR 0x24 > -#define ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR 0x26 > - > static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { > { > .wai = 0x69, > @@ -701,22 +693,16 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { > }; > > static const struct iio_chan_spec st_lsm6dsx_acc_channels[] = { > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR, > - IIO_MOD_X, 0), > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR, > - IIO_MOD_Y, 1), > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR, > - IIO_MOD_Z, 2), > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0), > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1), > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2), > IIO_CHAN_SOFT_TIMESTAMP(3), > }; > > static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = { > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR, > - IIO_MOD_X, 0), > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR, > - IIO_MOD_Y, 1), > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR, > - IIO_MOD_Z, 2), > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0), > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1), > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x26, IIO_MOD_Z, 2), > IIO_CHAN_SOFT_TIMESTAMP(3), > }; > > The definitions don't hurt, even if only used once, or do they? thanks, martin
> On 15.07.19 23:42, Lorenzo Bianconi wrote: > > Remove output register definitions and inline register values since > > they are used only for iio channel definitions. This is a preliminary > > patch to add support for LSM9DS1 sensor to st_lsm6dsx driver > > > > Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> > > --- > > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 26 +++++--------------- > > 1 file changed, 6 insertions(+), 20 deletions(-) > > > > diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > > index 9aa109428a52..0abd5b85b398 100644 > > --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > > +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c > > @@ -61,14 +61,6 @@ > > #define ST_LSM6DSX_REG_INT2_ON_INT1_ADDR 0x13 > > #define ST_LSM6DSX_REG_INT2_ON_INT1_MASK BIT(5) > > > > -#define ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR 0x28 > > -#define ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR 0x2a > > -#define ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR 0x2c > > - > > -#define ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR 0x22 > > -#define ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR 0x24 > > -#define ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR 0x26 > > - > > static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { > > { > > .wai = 0x69, > > @@ -701,22 +693,16 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { > > }; > > > > static const struct iio_chan_spec st_lsm6dsx_acc_channels[] = { > > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR, > > - IIO_MOD_X, 0), > > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR, > > - IIO_MOD_Y, 1), > > - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR, > > - IIO_MOD_Z, 2), > > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0), > > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1), > > + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2), > > IIO_CHAN_SOFT_TIMESTAMP(3), > > }; > > > > static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = { > > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR, > > - IIO_MOD_X, 0), > > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR, > > - IIO_MOD_Y, 1), > > - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR, > > - IIO_MOD_Z, 2), > > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0), > > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1), > > + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x26, IIO_MOD_Z, 2), > > IIO_CHAN_SOFT_TIMESTAMP(3), > > }; > > > > > > The definitions don't hurt, even if only used once, or do they? > > thanks, we can avoid multiple definitions in this way Lorenzo > martin >
diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c index 9aa109428a52..0abd5b85b398 100644 --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c @@ -61,14 +61,6 @@ #define ST_LSM6DSX_REG_INT2_ON_INT1_ADDR 0x13 #define ST_LSM6DSX_REG_INT2_ON_INT1_MASK BIT(5) -#define ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR 0x28 -#define ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR 0x2a -#define ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR 0x2c - -#define ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR 0x22 -#define ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR 0x24 -#define ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR 0x26 - static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { { .wai = 0x69, @@ -701,22 +693,16 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = { }; static const struct iio_chan_spec st_lsm6dsx_acc_channels[] = { - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_X_L_ADDR, - IIO_MOD_X, 0), - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Y_L_ADDR, - IIO_MOD_Y, 1), - ST_LSM6DSX_CHANNEL(IIO_ACCEL, ST_LSM6DSX_REG_ACC_OUT_Z_L_ADDR, - IIO_MOD_Z, 2), + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0), + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1), + ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2), IIO_CHAN_SOFT_TIMESTAMP(3), }; static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = { - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_X_L_ADDR, - IIO_MOD_X, 0), - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Y_L_ADDR, - IIO_MOD_Y, 1), - ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, ST_LSM6DSX_REG_GYRO_OUT_Z_L_ADDR, - IIO_MOD_Z, 2), + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0), + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1), + ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x26, IIO_MOD_Z, 2), IIO_CHAN_SOFT_TIMESTAMP(3), };
Remove output register definitions and inline register values since they are used only for iio channel definitions. This is a preliminary patch to add support for LSM9DS1 sensor to st_lsm6dsx driver Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> --- drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 26 +++++--------------- 1 file changed, 6 insertions(+), 20 deletions(-)