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

staging:iio:buffer struct iio_buffer doesn't need an indio_dev pointer.



In all existing cases, the calls are coming from a location where
the indio_dev is already available.

Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent f7ff6945
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1166,9 +1166,9 @@ static int __devinit sca3000_probe(struct spi_device *spi)
	if (ret < 0)
		goto error_unregister_dev;
	if (indio_dev->buffer) {
		iio_scan_mask_set(indio_dev->buffer, 0);
		iio_scan_mask_set(indio_dev->buffer, 1);
		iio_scan_mask_set(indio_dev->buffer, 2);
		iio_scan_mask_set(indio_dev, indio_dev->buffer, 0);
		iio_scan_mask_set(indio_dev, indio_dev->buffer, 1);
		iio_scan_mask_set(indio_dev, indio_dev->buffer, 2);
	}

	if (spi->irq) {
+4 −7
Original line number Diff line number Diff line
@@ -157,8 +157,7 @@ static ssize_t sca3000_query_ring_int(struct device *dev,
{
	struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
	int ret, val;
	struct iio_buffer *ring = dev_get_drvdata(dev);
	struct iio_dev *indio_dev = ring->indio_dev;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct sca3000_state *st = iio_priv(indio_dev);

	mutex_lock(&st->lock);
@@ -179,8 +178,7 @@ static ssize_t sca3000_set_ring_int(struct device *dev,
				      const char *buf,
				      size_t len)
{
	struct iio_buffer *ring = dev_get_drvdata(dev);
	struct iio_dev *indio_dev = ring->indio_dev;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct sca3000_state *st = iio_priv(indio_dev);
	struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
	long val;
@@ -221,8 +219,7 @@ static ssize_t sca3000_show_buffer_scale(struct device *dev,
					 struct device_attribute *attr,
					 char *buf)
{
	struct iio_buffer *ring = dev_get_drvdata(dev);
	struct iio_dev *indio_dev = ring->indio_dev;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct sca3000_state *st = iio_priv(indio_dev);

	return sprintf(buf, "0.%06d\n", 4*st->info->scale);
@@ -267,7 +264,7 @@ static struct iio_buffer *sca3000_rb_allocate(struct iio_dev *indio_dev)
	buf = &ring->buf;
	buf->stufftoread = 0;
	buf->attrs = &sca3000_ring_attr;
	iio_buffer_init(buf, indio_dev);
	iio_buffer_init(buf);

	return buf;
}
+5 −7
Original line number Diff line number Diff line
@@ -65,7 +65,6 @@ struct iio_buffer_access_funcs {

/**
 * struct iio_buffer - general buffer structure
 * @indio_dev:		industrial I/O device structure
 * @length:		[DEVICE] number of datums in buffer
 * @bytes_per_datum:	[DEVICE] size of individual datum including timestamp
 * @scan_el_attrs:	[DRIVER] control of scan elements if that scan mode
@@ -79,7 +78,6 @@ struct iio_buffer_access_funcs {
 * @demux_bounce:	[INTERN] buffer for doing gather from incoming scan.
 **/
struct iio_buffer {
	struct iio_dev				*indio_dev;
	int					length;
	int					bytes_per_datum;
	struct attribute_group			*scan_el_attrs;
@@ -100,10 +98,8 @@ struct iio_buffer {
/**
 * iio_buffer_init() - Initialize the buffer structure
 * @buffer: buffer to be initialized
 * @indio_dev: the iio device the buffer is assocated with
 **/
void iio_buffer_init(struct iio_buffer *buffer,
			  struct iio_dev *indio_dev);
void iio_buffer_init(struct iio_buffer *buffer);

void iio_buffer_deinit(struct iio_buffer *buffer);

@@ -120,14 +116,16 @@ static inline void __iio_update_buffer(struct iio_buffer *buffer,
	buffer->length = length;
}

int iio_scan_mask_query(struct iio_buffer *buffer, int bit);
int iio_scan_mask_query(struct iio_dev *indio_dev,
			struct iio_buffer *buffer, int bit);

/**
 * iio_scan_mask_set() - set particular bit in the scan mask
 * @buffer: the buffer whose scan mask we are interested in
 * @bit: the bit to be set.
 **/
int iio_scan_mask_set(struct iio_buffer *buffer, int bit);
int iio_scan_mask_set(struct iio_dev *indio_dev,
		      struct iio_buffer *buffer, int bit);

/**
 * iio_push_to_buffer() - push to a registered buffer.
+10 −5
Original line number Diff line number Diff line
@@ -632,11 +632,16 @@ static int __devinit adis16260_probe(struct spi_device *spi)
	}
	if (indio_dev->buffer) {
		/* Set default scan mode */
		iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_SUPPLY);
		iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_GYRO);
		iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_AUX_ADC);
		iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_TEMP);
		iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_ANGL);
		iio_scan_mask_set(indio_dev, indio_dev->buffer,
				  ADIS16260_SCAN_SUPPLY);
		iio_scan_mask_set(indio_dev, indio_dev->buffer,
				  ADIS16260_SCAN_GYRO);
		iio_scan_mask_set(indio_dev, indio_dev->buffer,
				  ADIS16260_SCAN_AUX_ADC);
		iio_scan_mask_set(indio_dev, indio_dev->buffer,
				  ADIS16260_SCAN_TEMP);
		iio_scan_mask_set(indio_dev, indio_dev->buffer,
				  ADIS16260_SCAN_ANGL);
	}
	if (spi->irq) {
		ret = adis16260_probe_trigger(indio_dev);
+2 −2
Original line number Diff line number Diff line
@@ -736,8 +736,8 @@ static int __devinit ad5933_probe(struct i2c_client *client,
		goto error_unreg_ring;

	/* enable both REAL and IMAG channels by default */
	iio_scan_mask_set(indio_dev->buffer, 0);
	iio_scan_mask_set(indio_dev->buffer, 1);
	iio_scan_mask_set(indio_dev, indio_dev->buffer, 0);
	iio_scan_mask_set(indio_dev, indio_dev->buffer, 1);

	ret = ad5933_setup(st);
	if (ret)
Loading