[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<FR3P281MB175712512B0A88FAC9DFA009CEBF2@FR3P281MB1757.DEUP281.PROD.OUTLOOK.COM>
Date: Fri, 18 Apr 2025 11:26:39 +0000
From: Jean-Baptiste Maneyrol <Jean-Baptiste.Maneyrol@....com>
To: Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Andy Shevchenko
<andy@...nel.org>
CC: David Lechner <dlechner@...libre.com>,
Jonathan Cameron
<jic23@...nel.org>,
Nuno Sá <nuno.sa@...log.com>,
Matthias
Brugger <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>,
Lars-Peter Clausen
<lars@...afoo.de>,
Michael Hennerich <Michael.Hennerich@...log.com>,
Cosmin
Tanislav <cosmin.tanislav@...log.com>,
Tomasz Duszynski <tduszyns@...il.com>,
Andreas Klinger <ak@...klinger.de>,
Petre Rodan
<petre.rodan@...dimension.ro>,
"linux-iio@...r.kernel.org"
<linux-iio@...r.kernel.org>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-mediatek@...ts.infradead.org"
<linux-mediatek@...ts.infradead.org>
Subject: Re: [PATCH 7/8] iio: imu: inv_mpu6050: align buffer for timestamp
On Thu, 17 Apr 2025 19:46:00, Jonathan Cameron wrote:
> On Thu, 17 Apr 2025 20:00:05 +0300
> Andy Shevchenko <andy@...nel.org> wrote:
>
> > On Thu, Apr 17, 2025 at 11:52:39AM -0500, David Lechner wrote:
> > > Align the buffer used with iio_push_to_buffers_with_timestamp() to
> > > ensure the s64 timestamp is aligned to 8 bytes.
> >
> > Same question as per previous patch.
> >
> In this case I don't think we know the position of the timestamp
> so a structure would be misleading.
>
> The comment above the define certainly suggests it is variable..
I confirm timestamp position is changing depending on channels enabled. It
can be at address 8, 16 or 24.
If there is only 1 sensor enabled (6 bytes of data), timestamp is at address
8. 2 sensors (12 bytes of data), timestamp will be at address 16. 3 sensors
for MPU-9xxx (19 bytes of data), timestamp will be at address 24.
If the buffer is aligned on 8 bytes, it will always work without any problem.
>
> /*
> * Maximum of 6 + 6 + 2 + 7 (for MPU9x50) = 21 round up to 24 and plus 8.
> * May be less if fewer channels are enabled, as long as the timestamp
> * remains 8 byte aligned
> */
> #define INV_MPU6050_OUTPUT_DATA_SIZE 32
Thanks,
JB
Powered by blists - more mailing lists