Commit fbaff213 authored by Jonathan Cameron's avatar Jonathan Cameron Committed by Greg Kroah-Hartman
Browse files

staging:iio:gyro Add IIO_CHAN_INFO_RAW entries to all drivers.



Precursor to making value read / write attribute optional.
No processed values in gyroscopes.

Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
Acked-by: default avatarLars-Peter Clausen <lars@metafoo.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 09f4eb40
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ static int adis16060_read_raw(struct iio_dev *indio_dev,
	int ret;

	switch (mask) {
	case 0:
	case IIO_CHAN_INFO_RAW:
		/* Take the iio_dev status lock */
		mutex_lock(&indio_dev->mlock);
		ret = adis16060_spi_write(indio_dev, chan->address);
@@ -120,22 +120,26 @@ static const struct iio_chan_spec adis16060_channels[] = {
		.type = IIO_ANGL_VEL,
		.modified = 1,
		.channel2 = IIO_MOD_Z,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16060_GYRO,
	}, {
		.type = IIO_VOLTAGE,
		.indexed = 1,
		.channel = 0,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16060_AIN1,
	}, {
		.type = IIO_VOLTAGE,
		.indexed = 1,
		.channel = 1,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16060_AIN2,
	}, {
		.type = IIO_TEMP,
		.indexed = 1,
		.channel = 0,
		.info_mask = IIO_CHAN_INFO_OFFSET_SEPARATE_BIT |
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |
		IIO_CHAN_INFO_OFFSET_SEPARATE_BIT |
		IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
		.address = ADIS16060_TEMP_OUT,
	}
+5 −1
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ static int adis16080_read_raw(struct iio_dev *indio_dev,

	mutex_lock(&indio_dev->mlock);
	switch (mask) {
	case 0:
	case IIO_CHAN_INFO_RAW:
		ret = adis16080_spi_write(indio_dev,
					  chan->address |
					  ADIS16080_DIN_WRITE);
@@ -110,21 +110,25 @@ static const struct iio_chan_spec adis16080_channels[] = {
		.type = IIO_ANGL_VEL,
		.modified = 1,
		.channel2 = IIO_MOD_Z,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16080_DIN_GYRO,
	}, {
		.type = IIO_VOLTAGE,
		.indexed = 1,
		.channel = 0,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16080_DIN_AIN1,
	}, {
		.type = IIO_VOLTAGE,
		.indexed = 1,
		.channel = 1,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16080_DIN_AIN2,
	}, {
		.type = IIO_TEMP,
		.indexed = 1,
		.channel = 0,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16080_DIN_TEMP,
	}
};
+2 −0
Original line number Diff line number Diff line
@@ -100,11 +100,13 @@ static const struct iio_chan_spec adis16130_channels[] = {
		.type = IIO_ANGL_VEL,
		.modified = 1,
		.channel2 = IIO_MOD_Z,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16130_RATEDATA,
	}, {
		.type = IIO_TEMP,
		.indexed = 1,
		.channel = 0,
		.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,
		.address = ADIS16130_TEMPDATA,
	}
};
+10 −5
Original line number Diff line number Diff line
@@ -393,7 +393,8 @@ enum adis16260_channel {
			.type = IIO_ANGL_VEL,				\
			.modified = 1,					\
			.channel2 = mod,				\
			.info_mask = IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT | \
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |	\
			IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT |		\
			IIO_CHAN_INFO_CALIBSCALE_SEPARATE_BIT |		\
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,		\
			.address = gyro,				\
@@ -407,6 +408,7 @@ enum adis16260_channel {
			.type = IIO_ANGL,				\
			.modified = 1,					\
			.channel2 = mod,				\
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT,	\
			.address = angle,				\
			.scan_index = ADIS16260_SCAN_ANGL,		\
			.scan_type = {					\
@@ -418,7 +420,8 @@ enum adis16260_channel {
			.type = IIO_TEMP,				\
			.indexed = 1,					\
			.channel = 0,					\
			.info_mask = IIO_CHAN_INFO_OFFSET_SEPARATE_BIT | \
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |	\
			IIO_CHAN_INFO_OFFSET_SEPARATE_BIT |		\
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,		\
			.address = temp,				\
			.scan_index = ADIS16260_SCAN_TEMP,		\
@@ -432,7 +435,8 @@ enum adis16260_channel {
			.indexed = 1,					\
			.channel = 0,					\
			.extend_name = "supply",			\
			.info_mask = IIO_CHAN_INFO_SCALE_SEPARATE_BIT,	\
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |	\
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,		\
			.address = in_supply,				\
			.scan_index = ADIS16260_SCAN_SUPPLY,		\
			.scan_type = {					\
@@ -444,7 +448,8 @@ enum adis16260_channel {
			.type = IIO_VOLTAGE,				\
			.indexed = 1,					\
			.channel = 1,					\
			.info_mask = IIO_CHAN_INFO_SCALE_SEPARATE_BIT,	\
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |	\
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,		\
			.address = in_aux,				\
			.scan_index = ADIS16260_SCAN_AUX_ADC,		\
			.scan_type = {					\
@@ -481,7 +486,7 @@ static int adis16260_read_raw(struct iio_dev *indio_dev,
	s16 val16;

	switch (mask) {
	case 0:
	case IIO_CHAN_INFO_RAW:
		mutex_lock(&indio_dev->mlock);
		addr = adis16260_addresses[chan->address][0];
		ret = adis16260_spi_read_reg_16(indio_dev, addr, &val16);
+9 −5
Original line number Diff line number Diff line
@@ -265,7 +265,7 @@ static int adxrs450_read_raw(struct iio_dev *indio_dev,
	s16 t;

	switch (mask) {
	case 0:
	case IIO_CHAN_INFO_RAW:
		switch (chan->type) {
		case IIO_ANGL_VEL:
			ret = adxrs450_spi_sensor_data(indio_dev, &t);
@@ -329,14 +329,16 @@ static const struct iio_chan_spec adxrs450_channels[2][2] = {
			.type = IIO_ANGL_VEL,
			.modified = 1,
			.channel2 = IIO_MOD_Z,
			.info_mask = IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT |
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |
			IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT |
			IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW_SEPARATE_BIT |
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
		}, {
			.type = IIO_TEMP,
			.indexed = 1,
			.channel = 0,
			.info_mask = IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
		}
	},
	[ID_ADXRS453] = {
@@ -344,13 +346,15 @@ static const struct iio_chan_spec adxrs450_channels[2][2] = {
			.type = IIO_ANGL_VEL,
			.modified = 1,
			.channel2 = IIO_MOD_Z,
			.info_mask = IIO_CHAN_INFO_SCALE_SEPARATE_BIT |
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT |
			IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW_SEPARATE_BIT,
		}, {
			.type = IIO_TEMP,
			.indexed = 1,
			.channel = 0,
			.info_mask = IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
			.info_mask = IIO_CHAN_INFO_RAW_SEPARATE_BIT |
			IIO_CHAN_INFO_SCALE_SEPARATE_BIT,
		}
	},
};