public inbox for linux-iio@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Refactor ADIS Burst Mode
@ 2020-09-17 15:52 Nuno Sá
  2020-09-17 15:52 ` [PATCH 1/4] iio: adis: Move burst mode into adis_data Nuno Sá
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Nuno Sá @ 2020-09-17 15:52 UTC (permalink / raw)
  To: linux-iio
  Cc: Alexandru Ardelean, Peter Meerwald-Stadler, Jonathan Cameron,
	Michael Hennerich, Lars-Peter Clausen

This series refactors the ADIS burst mode. The 2 main ideas of the
refactor are:

1. As discussed in previous patches, there's no point in
enabling/disabling burst mode at runtime. Hence, we can drop the `en`
variable.
2. Replace the `extra_len` by `burst_len` where users have now to
explicitly define the size of the burst buffer. The point is to remove
the following line from the lib:

```
/* All but the timestamp channel */
burst_length = (indio_dev->num_channels - 1) * sizeof(u16);
```

The library should not assume that a timestamp channel is defined.
Moreover, most parts also include some diagnostic data, crc, etc.. in
the burst buffer that needed to be included in an `extra_len` variable
which is not that nice. On top of this, some devices already start to
have some 32bit size channels ...

While doing this (and mainly when looking at the adis16400) drivers it
felt that the burst variables belong to the per chip `adis_data`
structure. As seen in the adis16400 driver, some drivers might support
multiple devices with different burst sizes.

For now, it does not feel necessary to wrap these variables in a
`adis_burst` structure but I don't see any problem in doing so if
required...

Nuno Sá (4):
  iio: adis: Move burst mode into adis_data
  iio: adis16400: Drop adis_burst usage
  iio: adis16475: Drop adis_burst usage
  iio: adis. Drop adis_burst struct

 drivers/iio/imu/adis16400.c   | 32 +++++++++++++-------------------
 drivers/iio/imu/adis16475.c   | 18 +++---------------
 drivers/iio/imu/adis_buffer.c | 12 +++++-------
 include/linux/iio/imu/adis.h  | 26 +++++++++-----------------
 4 files changed, 30 insertions(+), 58 deletions(-)

-- 
2.28.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-09-19 13:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-17 15:52 [PATCH 0/4] Refactor ADIS Burst Mode Nuno Sá
2020-09-17 15:52 ` [PATCH 1/4] iio: adis: Move burst mode into adis_data Nuno Sá
2020-09-17 15:52 ` [PATCH 2/4] iio: adis16400: Drop adis_burst usage Nuno Sá
2020-09-17 15:52 ` [PATCH 3/4] iio: adis16475: " Nuno Sá
2020-09-17 15:52 ` [PATCH 4/4] iio: adis. Drop adis_burst struct Nuno Sá
2020-09-19 13:21 ` [PATCH 0/4] Refactor ADIS Burst Mode Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox