[PATCH v3 0/3] iio: sps30: add support for serial interface
From: Tomasz Duszynski
Date: Mon May 03 2021 - 02:05:00 EST
One can communicate with sensor either over i2c or serial interface.
This series add support for the latter. And in order to do that existing
codebase needs to be separated into core and interface specific
components.
v3:
- add i2c device matching based on id table
- constify structure
- rephrase comment regarding reading serial number
- check serial number length
v2:
- simplify Kconfig by hiding core component selection
- export symbols as GPL compatible
- drop excessive ops wrappers
- rework ops to use __be32
- rework polling for measurements, sensor produces measurements within
1s so instead of polling just wait 1s
- simplify frame ready condition (serial)
- don't mix char with unsigned version
- calculate checksum during frame validation (serial)
- uncomment return status in frame validation (serial)
- pass part name to probe instead of KBUILD_MODNAME
Tomasz Duszynski (3):
iio: sps30: separate core and interface specific code
iio: sps30: add support for serial interface
dt-bindings: iio: chemical: sps30: update binding with serial example
.../iio/chemical/sensirion,sps30.yaml | 7 +-
MAINTAINERS | 2 +
drivers/iio/chemical/Kconfig | 27 +-
drivers/iio/chemical/Makefile | 2 +
drivers/iio/chemical/sps30.c | 269 ++---------
drivers/iio/chemical/sps30.h | 35 ++
drivers/iio/chemical/sps30_i2c.c | 258 +++++++++++
drivers/iio/chemical/sps30_serial.c | 431 ++++++++++++++++++
8 files changed, 804 insertions(+), 227 deletions(-)
create mode 100644 drivers/iio/chemical/sps30.h
create mode 100644 drivers/iio/chemical/sps30_i2c.c
create mode 100644 drivers/iio/chemical/sps30_serial.c
--
2.31.1