From: Muhammad Abu Bakar <m.abubakar365@yahoo.com>
To: Jonathan Cameron <jic23@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Muhammad Abu Bakar <m.abubakar365@yahoo.com>
Subject: [PATCH v2 0/2] iio: pressure: add Sensirion SDP31 driver
Date: Sun, 20 Sep 2026 21:47:22 +0500 [thread overview]
Message-ID: <20260920164724.32019-1-m.abubakar365@yahoo.com> (raw)
In-Reply-To: <20260920164724.32019-1-m.abubakar365.ref@yahoo.com>
This series adds support for the Sensirion SDP31 differential pressure
sensor, an I2C device that also reports temperature.
The SDP31 uses a completely different I2C command protocol from the
already supported SDP500 (command-triggered measurements with a per-word
CRC-8), so extending the sdp500 driver does not make sense. No compatible
parts from other vendors were found.
Patch 1 adds the device tree binding.
Patch 2 adds the IIO driver, which exposes differential pressure and
temperature channels and validates each measurement using the sensor's
CRC-8 checksum.
The driver was developed and tested on an SDP31 wired to the I2C bus of
a Raspberry Pi 4.
Changes since v1:
- Explain in this cover letter why a new driver is added instead of
extending the sdp500 driver.
- dt-bindings: make vdd-supply required, and enable the regulator in the
driver using devm_regulator_get_enable().
- Move the MAINTAINERS entry into the dt-bindings patch; the driver patch
only adds its own file.
- Populate the CRC-8 table with DO_ONCE() to avoid a race between
concurrent probes.
- Use devm_mutex_init() and take the lock inside sdp31_measure() using
guard(mutex).
- Build the command with __be16/cpu_to_be16() and parse the reply with
get_unaligned_be16().
- Use a named initializer in the i2c_device_id table.
- Minor cleanups: local struct device *dev, single-line dev_err_probe(),
and a comment on the mutex.
v1: https://lore.kernel.org/linux-iio/20260919223650.13396-1-m.abubakar365@yahoo.com/
Muhammad Abu Bakar (2):
dt-bindings: iio: pressure: add Sensirion SDP31
iio: pressure: add Sensirion SDP31 driver
.../iio/pressure/sensirion,sdp31.yaml | 41 ++++
MAINTAINERS | 6 +
drivers/iio/pressure/Kconfig | 11 +
drivers/iio/pressure/Makefile | 1 +
drivers/iio/pressure/sdp31.c | 209 ++++++++++++++++++
5 files changed, 268 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/pressure/sensirion,sdp31.yaml
create mode 100644 drivers/iio/pressure/sdp31.c
--
2.43.0
next parent reply other threads:[~2026-09-20 16:48 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260920164724.32019-1-m.abubakar365.ref@yahoo.com>
2026-09-20 16:47 ` Muhammad Abu Bakar [this message]
2026-09-20 16:47 ` [PATCH v2 1/2] dt-bindings: iio: pressure: add Sensirion SDP31 Muhammad Abu Bakar
2026-09-24 13:04 ` Krzysztof Kozlowski
2026-09-20 16:47 ` [PATCH v2 2/2] iio: pressure: add Sensirion SDP31 driver Muhammad Abu Bakar
2026-09-25 2:13 ` Jonathan Cameron
2026-09-24 13:03 ` [PATCH v2 0/2] " Krzysztof Kozlowski
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=20260920164724.32019-1-m.abubakar365@yahoo.com \
--to=m.abubakar365@yahoo.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=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
all inboxes | Powered by JetHome®