Re: [RFC PATCH v1 0/4] iio: add Sensirion SLF3x liquid flow sensor support

From: Jonathan Cameron

Date: Tue May 26 2026 - 12:18:24 EST


On Sun, 24 May 2026 22:49:35 +0200
Wadim Mueller <wafgo01@xxxxxxxxx> wrote:

> From: Wadim Mueller <wadim.mueller@xxxxxxxx>
>
> Hi all,
>
> this RFC adds support for the Sensirion SLF3x family of liquid-flow
> sensors (SLF3S-0600F and SLF3S-4000B). Before I send it as a normal
> patch I'd like to ask three things:
>
> 1. Subsystem. Liquid-flow sensors don't seem to have a home in
> mainline yet. iio/ feels like the natural place for me, but
> please correct me if hwmon (or somewhere else) is prefered.

I'm fine with this type of sensor in IIO, but open to hear from others!

>
> 2. Channel type. IIO has no flow channel type so far. The series
> adds IIO_VOLUMEFLOW with _scale in litres per second per LSB,
> so drivers reporting smaller units only need a fractional scale.
> IIO_MASSFLOW (for gas-flow sensors) was left out on purpose --
> happy to add it in the same series if that's more usefull.

Would be good to have a little more detail on difference etc to have
that discussion. Superficially I'm assuming this is a compressible vs
non compressible thing?

>
> 3. Subdirectory. I put the driver in a new drivers/iio/flow/
> since there is no flow subsytem in iio yet. If colocating with
> drivers/iio/pressure/ (next to sdp500) is preferred I'll respin.

This is easy to change later if we make a wrong decision. For now I think
iio/flow is fine.

Thanks

Jonathan


>
> Patches:
>
> 1/4 iio: types: add IIO_VOLUMEFLOW channel type
> 2/4 dt-bindings: iio: flow: add sensirion,slf3s binding
> 3/4 iio: flow: add Sensirion SLF3x driver
> 4/4 MAINTAINERS: add entry
>
> Tested with a SLF3S-0600F on a TI AM64x platform.
>
> Thanks,
> Wadim
>
> Wadim Mueller (4):
> iio: types: add IIO_VOLUMEFLOW channel type
> dt-bindings: iio: flow: add Sensirion SLF3x liquid flow sensor
> iio: flow: add Sensirion SLF3x liquid flow sensor driver
> MAINTAINERS: add entry for Sensirion SLF3x flow sensor driver
>
> Documentation/ABI/testing/sysfs-bus-iio | 17 ++
> .../bindings/iio/flow/sensirion,slf3s.yaml | 49 ++++
> MAINTAINERS | 7 +
> drivers/iio/Kconfig | 1 +
> drivers/iio/Makefile | 1 +
> drivers/iio/flow/Kconfig | 22 ++
> drivers/iio/flow/Makefile | 7 +
> drivers/iio/flow/slf3x.c | 264 ++++++++++++++++++
> drivers/iio/industrialio-core.c | 1 +
> include/uapi/linux/iio/types.h | 1 +
> tools/iio/iio_event_monitor.c | 2 +
> 11 files changed, 372 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/flow/sensirion,slf3s.yaml
> create mode 100644 drivers/iio/flow/Kconfig
> create mode 100644 drivers/iio/flow/Makefile
> create mode 100644 drivers/iio/flow/slf3x.c
>
>
> base-commit: 3cd8b194bf3428dfa53120fee47e827a7c495815