From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751525AbaBHLZK (ORCPT ); Sat, 8 Feb 2014 06:25:10 -0500 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 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 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 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@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[] = { >> >