From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from saturn.retrosnub.co.uk ([178.18.118.26]:40865 "EHLO saturn.retrosnub.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751228AbaBHLZH (ORCPT ); Sat, 8 Feb 2014 06:25:07 -0500 Message-ID: <52F6142C.3060701@kernel.org> Date: Sat, 08 Feb 2014 11:25:32 +0000 From: Jonathan Cameron MIME-Version: 1.0 To: Lars-Peter Clausen , Marcus Folkesson CC: Sachin Kamat , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] iio: adis16400: Set timestamp as the last element in chan_spec References: <1390562644-25124-1-git-send-email-marcus.folkesson@gmail.com> <1390562644-25124-2-git-send-email-marcus.folkesson@gmail.com> <52E26E9A.9040002@metafoo.de> In-Reply-To: <52E26E9A.9040002@metafoo.de> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Sender: linux-iio-owner@vger.kernel.org List-Id: linux-iio@vger.kernel.org On 24/01/14 13:46, Lars-Peter Clausen wrote: > On 01/24/2014 12:24 PM, Marcus Folkesson wrote: >> This is necessary since timestamp is calculated as the last element >> in iio_compute_scan_bytes(). >> >> Signed-off-by: Marcus Folkesson > > Looks good, thanks. > > Acked-by: Lars-Peter Clausen Applied with some fuzz to fixes-togreg. Also marked for stable. Thanks Jonathan > > That said, I think we should try to modify the core code so that the scan > index for the timestamp is auto assigned to be always the last one. I'd be happy with such a change. Note we need to be careful not to block other positions of timestamps coming from hardware timestamp generators, but for software time stamps it would make sense just to automate always having them at the end. > >> --- >> drivers/iio/imu/adis16400.h | 1 + >> drivers/iio/imu/adis16400_core.c | 10 +++++----- >> 2 files changed, 6 insertions(+), 5 deletions(-) >> >> diff --git a/drivers/iio/imu/adis16400.h b/drivers/iio/imu/adis16400.h >> index 2f8f9d6..0916bf6 100644 >> --- a/drivers/iio/imu/adis16400.h >> +++ b/drivers/iio/imu/adis16400.h >> @@ -189,6 +189,7 @@ enum { >> ADIS16300_SCAN_INCLI_X, >> ADIS16300_SCAN_INCLI_Y, >> ADIS16400_SCAN_ADC, >> + ADIS16400_SCAN_TIMESTAMP, >> }; >> >> #ifdef CONFIG_IIO_BUFFER >> diff --git a/drivers/iio/imu/adis16400_core.c b/drivers/iio/imu/adis16400_core.c >> index 3fb7757..7f98657 100644 >> --- a/drivers/iio/imu/adis16400_core.c >> +++ b/drivers/iio/imu/adis16400_core.c >> @@ -632,7 +632,7 @@ static const struct iio_chan_spec adis16400_channels[] = { >> ADIS16400_MAGN_CHAN(Z, ADIS16400_ZMAGN_OUT, 14), >> ADIS16400_TEMP_CHAN(ADIS16400_TEMP_OUT, 12), >> ADIS16400_AUX_ADC_CHAN(ADIS16400_AUX_ADC, 12), >> - IIO_CHAN_SOFT_TIMESTAMP(12) >> + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), >> }; >> >> static const struct iio_chan_spec adis16448_channels[] = { >> @@ -654,7 +654,7 @@ static const struct iio_chan_spec adis16448_channels[] = { >> .scan_type = IIO_ST('s', 16, 16, 0), >> }, >> ADIS16400_TEMP_CHAN(ADIS16448_TEMP_OUT, 12), >> - IIO_CHAN_SOFT_TIMESTAMP(11) >> + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), >> }; >> >> static const struct iio_chan_spec adis16350_channels[] = { >> @@ -672,7 +672,7 @@ static const struct iio_chan_spec adis16350_channels[] = { >> ADIS16400_MOD_TEMP_CHAN(X, ADIS16350_XTEMP_OUT, 12), >> ADIS16400_MOD_TEMP_CHAN(Y, ADIS16350_YTEMP_OUT, 12), >> ADIS16400_MOD_TEMP_CHAN(Z, ADIS16350_ZTEMP_OUT, 12), >> - IIO_CHAN_SOFT_TIMESTAMP(11) >> + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), >> }; >> >> static const struct iio_chan_spec adis16300_channels[] = { >> @@ -685,7 +685,7 @@ static const struct iio_chan_spec adis16300_channels[] = { >> ADIS16400_AUX_ADC_CHAN(ADIS16300_AUX_ADC, 12), >> ADIS16400_INCLI_CHAN(X, ADIS16300_PITCH_OUT, 13), >> ADIS16400_INCLI_CHAN(Y, ADIS16300_ROLL_OUT, 13), >> - IIO_CHAN_SOFT_TIMESTAMP(14) >> + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), >> }; >> >> static const struct iio_chan_spec adis16334_channels[] = { >> @@ -696,7 +696,7 @@ static const struct iio_chan_spec adis16334_channels[] = { >> ADIS16400_ACCEL_CHAN(Y, ADIS16400_YACCL_OUT, 14), >> ADIS16400_ACCEL_CHAN(Z, ADIS16400_ZACCL_OUT, 14), >> ADIS16400_TEMP_CHAN(ADIS16350_XTEMP_OUT, 12), >> - IIO_CHAN_SOFT_TIMESTAMP(8) >> + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), >> }; >> >> static struct attribute *adis16400_attributes[] = { >> >