From: David Lechner <dlechner@baylibre.com>
To: Lothar Rubusch <l.rubusch@gmail.com>,
Jonathan Cameron <jic23@kernel.org>
Cc: nuno.sa@analog.com, andy@kernel.org, corbet@lwn.net,
lucas.p.stankus@gmail.com, lars@metafoo.de,
Michael.Hennerich@analog.com, bagasdotme@gmail.com,
linux-iio@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 3/8] iio: accel: adxl313: add buffered FIFO watermark with interrupt handling
Date: Tue, 1 Jul 2025 08:53:23 -0500 [thread overview]
Message-ID: <ca2c719b-6798-4bb0-ab73-98d1fc5adcb1@baylibre.com> (raw)
In-Reply-To: <CAFXKEHYS2rRYtPShU-yyEetQQoo+EbCscjUUGcWdWJQA2UwiYA@mail.gmail.com>
On 7/1/25 2:23 AM, Lothar Rubusch wrote:
> On Sat, Jun 28, 2025 at 7:16 PM Jonathan Cameron <jic23@kernel.org> wrote:
>>
>> On Sun, 22 Jun 2025 12:29:32 +0000
>> Lothar Rubusch <l.rubusch@gmail.com> wrote:
>>
>>> Cover the following tasks:
>>> - Add scan_mask and scan_index to the IIO channel configuration. The
>>> scan_index sets up buffer usage. According to the datasheet, the ADXL313
>>> uses a 13-bit wide data field in full-resolution mode. Set the
>>> signedness, number of storage bits, and endianness accordingly.
>>>
>>> - Parse the devicetree for an optional interrupt line and configure the
>>> interrupt mapping based on its presence. If no interrupt line is
>>> specified, keep the FIFO in bypass mode as currently implemented.
>>>
>>> - Set up the interrupt handler. Add register access to detect and
>>> evaluate interrupts. Implement functions to clear status registers and
>>> reset the FIFO.
>>>
>>> - Implement FIFO watermark configuration and handling. Allow the
>>> watermark level to be set, evaluate the corresponding interrupt, read
>>> the FIFO contents, and push the data to the IIO channel.
>>>
>>> Signed-off-by: Lothar Rubusch <l.rubusch@gmail.com>
>> Hi Lothar,
>>
>
> Hi Jonathan, there's still one thing about this patch [PATCH v6 3/8],
> I wanted to address:
>
> struct mutex lock; /* lock to protect transf_buf */
> + u8 watermark;
> __le16 transf_buf __aligned(IIO_DMA_MINALIGN);
> + __le16 fifo_buf[ADXL313_NUM_AXIS * ADXL313_FIFO_SIZE + 1];
> };
>
> Is this correct usage of the IIO_DMA_MINALIGN? My intention here is to
> have transf_buf and fifo_buf[...] aligned with the IIO_DMA_MINALIGN.
>
> Sorry, I should have asked this earlier. I saw the sensor operating,
> but I'm unsure if perhaps DMA usage is setup correctly. Perhaps you
> could drop me a line of feedback here?
>
> Best,
> L
Assuming that transf_bus and fifo_buf aren't used at the same time,
which seems unlikely, this looks correct.
As an example of what could be problematic would be if the driver
wrote to transf_buf while fifo_buf was being used for a SPI DMA
read. Then, when the DMA operation was done, it could write over
transf_buf with the old value from when the DMA operation started
because it was in the same memory cache line as fifo_buf.
next prev parent reply other threads:[~2025-07-01 13:53 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-22 12:29 [PATCH v6 0/8] iio: accel: adxl313: add power-save on activity/inactivity Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 1/8] iio: accel: adxl313: make use of regmap cache Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 2/8] iio: accel: adxl313: add function to enable measurement Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 3/8] iio: accel: adxl313: add buffered FIFO watermark with interrupt handling Lothar Rubusch
2025-06-28 17:16 ` Jonathan Cameron
2025-07-01 7:23 ` Lothar Rubusch
2025-07-01 13:53 ` David Lechner [this message]
2025-06-22 12:29 ` [PATCH v6 4/8] iio: accel: adxl313: add activity sensing Lothar Rubusch
2025-06-28 17:27 ` Jonathan Cameron
2025-06-30 22:32 ` Lothar Rubusch
2025-07-01 17:34 ` Jonathan Cameron
2025-06-22 12:29 ` [PATCH v6 5/8] iio: accel: adxl313: add inactivity sensing Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 6/8] iio: accel: adxl313: implement power-save on inactivity Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 7/8] iio: accel: adxl313: add AC coupled activity/inactivity events Lothar Rubusch
2025-06-22 12:29 ` [PATCH v6 8/8] docs: iio: add ADXL313 accelerometer Lothar Rubusch
2025-06-22 14:34 ` [PATCH v6 0/8] iio: accel: adxl313: add power-save on activity/inactivity Jonathan Cameron
2025-06-28 17:29 ` Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ca2c719b-6798-4bb0-ab73-98d1fc5adcb1@baylibre.com \
--to=dlechner@baylibre.com \
--cc=Michael.Hennerich@analog.com \
--cc=andy@kernel.org \
--cc=bagasdotme@gmail.com \
--cc=corbet@lwn.net \
--cc=jic23@kernel.org \
--cc=l.rubusch@gmail.com \
--cc=lars@metafoo.de \
--cc=linux-doc@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lucas.p.stankus@gmail.com \
--cc=nuno.sa@analog.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®