From: Wadim Mueller <wafgo01@gmail.com>
To: "Jonathan Cameron" <jic23@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Maxwell Doose" <maxwell@maxwelld.cc>
Cc: linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Marcelo Schmitt <marcelo.schmitt1@gmail.com>,
Rodrigo Alencar <455.rodrigo.alencar@gmail.com>
Subject: [PATCH v5 0/4] iio: flow: Sensirion SLF3S liquid flow sensor
Date: Tue, 14 Jul 2026 10:53:54 +0200 [thread overview]
Message-ID: <20260714085358.20842-1-wafgo01@gmail.com> (raw)
Hi all,
this series adds a driver for the Sensirion SLF3S family of I2C liquid
flow sensors (SLF3S-0600F / -1300F / -4000B) and a new IIO_VOLUMEFLOW
channel type.
The series is now based on iio.git testing, which already contains
Rodrigo Alencar's IIO_VAL_DECIMAL64_* core formatting work, so the
external dependency listed in v4 is gone. Patch 3/4 adds the
IIO_VAL_DECIMAL64_FEMTO format type on top of it.
The compatible/fallback layout of the dt-binding is intentionally
unchanged from v4 while the discussion on the v4 thread about the
preferred fallback scheme is still open:
https://lore.kernel.org/linux-iio/20260621145117.70b2d50e@jic23-huawei/
Changes since v4
----------------
* rebased onto iio.git testing; trivial conflict with the new
IIO_COVERAGE entries in the channel-type lists resolved (1/4)
* driver: include err.h for PTR_ERR() and math.h for struct
s32_fract, per Andy
* driver: fold the per-variant scale_num/scale_den pair into a
struct s32_fract, per Andy
* driver: add enum slf3s_variant_id and use it for the variant
table and the I2C/OF match tables instead of bare indices, per
Andy
* driver: slf3s_send_cmd(): drop the "at_least 2" parameter
annotation, decouple the ret assignment from its declaration and
check errors first, per Andy
* driver: use sizeof() instead of ARRAY_SIZE() for the measurement
byte buffer, per Andy
* driver: parenthesise the (FEMTO / MILLI) factor so it folds into
a single constant multiplication, per Andy
* driver: derive the temperature scale from MILLIDEGREE_PER_DEGREE
instead of a bare 1000, per Andy
* driver: checked the struct slf3s_data layout (re Andy's pahole
question): the non-pointer members total 260 bytes, so one 4-byte
hole remains for any member order; left as is
* driver: drop the inline comment on the mutex that duplicated the
kernel-doc, per Jonathan
* driver: fix the duplicated argument in the DT/sensor variant
mismatch dev_info(), per Jonathan
* driver: reformat the i2c_device_id/of_device_id tables to one
member per line, per Jonathan
* MAINTAINERS: updated Maxwells address in the R: entry to
maxwell@maxwelld.cc, as he requested on the v4 thread
The signaling-flags word (air-in-line / high-flow / smoothing status) in
each measurement frame is intentionally not read; exposing it can be a
later follow-up.
Thanks,
Wadim
Wadim Mueller (4):
iio: types: add IIO_VOLUMEFLOW channel type
dt-bindings: iio: flow: add Sensirion SLF3S liquid flow sensor
iio: core: add IIO_VAL_DECIMAL64_FEMTO format type
iio: flow: add Sensirion SLF3S liquid flow sensor driver
Documentation/ABI/testing/sysfs-bus-iio | 11 +
Documentation/ABI/testing/sysfs-bus-iio-flow | 21 +
.../bindings/iio/flow/sensirion,slf3s.yaml | 58 ++
MAINTAINERS | 8 +
drivers/iio/Kconfig | 1 +
drivers/iio/Makefile | 1 +
drivers/iio/flow/Kconfig | 22 +
drivers/iio/flow/Makefile | 7 +
drivers/iio/flow/slf3s.c | 541 ++++++++++++++++++
drivers/iio/industrialio-core.c | 3 +
include/linux/iio/types.h | 1 +
include/uapi/linux/iio/types.h | 1 +
tools/iio/iio_event_monitor.c | 2 +
13 files changed, 677 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-flow
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/slf3s.c
base-commit: a50909aa46dec46de3c73235fc15a7d6f763d996
--
2.43.0
next reply other threads:[~2026-07-14 8:54 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-14 8:53 Wadim Mueller [this message]
2026-07-14 8:53 ` [PATCH v5 1/4] iio: types: add IIO_VOLUMEFLOW channel type Wadim Mueller
2026-07-14 8:53 ` [PATCH v5 2/4] dt-bindings: iio: flow: add Sensirion SLF3S liquid flow sensor Wadim Mueller
2026-07-14 8:53 ` [PATCH v5 3/4] iio: core: add IIO_VAL_DECIMAL64_FEMTO format type Wadim Mueller
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=20260714085358.20842-1-wafgo01@gmail.com \
--to=wafgo01@gmail.com \
--cc=455.rodrigo.alencar@gmail.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.schmitt1@gmail.com \
--cc=maxwell@maxwelld.cc \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
/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