[PATCH 25/38] iio: pressure-core: st: Allow for number of channels to vary

Jonathan Cameron jic23 at kernel.org
Mon Sep 16 11:32:14 EDT 2013



Lee Jones <lee.jones at linaro.org> wrote:
>On Sat, 14 Sep 2013, Jonathan Cameron wrote:
>
>> On 09/10/13 13:49, Lee Jones wrote:
>> > At the moment the number of channels specified is dictated by the
>first
>> > sensor supported by the driver. As we add support for more sensors
>this
>> > is likely to vary. Instead of using the ARRAY_SIZE() of the
>LPS331AP's
>> > channel specifier we'll use a new adaptable 'struct st_sensors'
>element
>> > instead.
>> > 
>> > Signed-off-by: Lee Jones <lee.jones at linaro.org>
>> Applied with Denis ack (again it should have been here)
>
>Ah, you're going to take the patches one-by-one?
>
>After amending the drivers as per your review I was going to send a
>final time with all Acks applied. Then, once all maintainer Acks were
>obtained I was going to send you a pull-request.
>
>Perhaps I should have communicated the intent sooner.
>
>Future submissions will have all Acks applied in this case.

Quite a few of this series stood alone just fine so I grabbed them :)
>
>> > ---
>> >  drivers/iio/pressure/st_pressure_core.c | 3 ++-
>> >  include/linux/iio/common/st_sensors.h   | 1 +
>> >  2 files changed, 3 insertions(+), 1 deletion(-)
>> > 
>> > diff --git a/drivers/iio/pressure/st_pressure_core.c
>b/drivers/iio/pressure/st_pressure_core.c
>> > index 60c2ee4..3abada2 100644
>> > --- a/drivers/iio/pressure/st_pressure_core.c
>> > +++ b/drivers/iio/pressure/st_pressure_core.c
>> > @@ -107,6 +107,7 @@ static const struct st_sensors
>st_press_sensors[] = {
>> >  			[0] = LPS331AP_PRESS_DEV_NAME,
>> >  		},
>> >  		.ch = (struct iio_chan_spec *)st_press_lps331ap_channels,
>> > +		.num_ch = ARRAY_SIZE(st_press_lps331ap_channels),
>> >  		.odr = {
>> >  			.addr = ST_PRESS_LPS331AP_ODR_ADDR,
>> >  			.mask = ST_PRESS_LPS331AP_ODR_MASK,
>> > @@ -245,7 +246,7 @@ int st_press_common_probe(struct iio_dev
>*indio_dev,
>> >  	pdata->num_data_channels = ST_PRESS_NUMBER_DATA_CHANNELS;
>> >  	pdata->multiread_bit = pdata->sensor->multi_read_bit;
>> >  	indio_dev->channels = pdata->sensor->ch;
>> > -	indio_dev->num_channels = ARRAY_SIZE(st_press_lps331ap_channels);
>> > +	indio_dev->num_channels = pdata->sensor->num_ch;
>> >  
>> >  	if (pdata->sensor->fs.addr != 0)
>> >  		pdata->current_fullscale = (struct st_sensor_fullscale_avl *)
>> > diff --git a/include/linux/iio/common/st_sensors.h
>b/include/linux/iio/common/st_sensors.h
>> > index e51f654..e732fda 100644
>> > --- a/include/linux/iio/common/st_sensors.h
>> > +++ b/include/linux/iio/common/st_sensors.h
>> > @@ -184,6 +184,7 @@ struct st_sensors {
>> >  	u8 wai;
>> >  	char sensors_supported[ST_SENSORS_MAX_4WAI][ST_SENSORS_MAX_NAME];
>> >  	struct iio_chan_spec *ch;
>> > +	int num_ch;
>> >  	struct st_sensor_odr odr;
>> >  	struct st_sensor_power pw;
>> >  	struct st_sensor_axis enable_axis;
>> > 

-- 
Sent from my Android phone with K-9 Mail. Please excuse my brevity.



More information about the linux-arm-kernel mailing list