[PATCH v5 0/5] hwmon: Add support for Amphenol ChipCap 2
From: Javier Carrasco
Date: Mon Jan 15 2024 - 15:02:36 EST
This series adds support and documentation for the Amphenol ChipCap 2
humidity and temperature sensor in its digital version.
This I2C device provides 14-bit humidity and temperature measurements as
well as low (minimum) and high (maximum) humidity alarms. A ready signal
is also available to reduce delays while fetching data.
The proposed driver implements the logic to perform measurements with
and without the ready signal, EEPROM configuration and alarm signaling.
The features this driver does not support (I2C address and command
window length modification) have been documented in the "Known Issues"
section.
The complete supported functionality has been tested with a CC2D33S
sensor connected to a Raspberry Pi Zero 2 w.
Different device tree node definitions (with and without ready and/or
alarm signals) have been positively tested.
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx>
---
Changes in v5:
- dt-bindings: add "amphenol,cc2d23" to "compatible" in the example.
- Link to v4: https://lore.kernel.org/r/20231020-topic-chipcap2-v4-0-7940cfa7613a@xxxxxxxxx
Changes in v4:
- chipcap2.c: require exclusive regulator to trigger command mode.
- chipcap2.c: keep the device off until a measurement is required.
Because the device makes an automatic measurement after the power-up
sequence, no differentiation between sleep and non-sleep modes is
required anymore.
- chipcap2.c: retrieve alarm settings from the device instead of storing
them locally.
- dt-bindings: add vdd-supply to required properties.
- dt-bindings: default to 'amphenol,cc2d23' compatible (same
functionality for all compatibles).
- Link to v3: https://lore.kernel.org/r/20231020-topic-chipcap2-v3-0-5b3bb50a5f0b@xxxxxxxxx
Changes in v3:
- ABI: sysfs-class-hwmon: documented humidity min/max alarms.
- General: reorder patches (bindings first to remove checkpatch
warnings).
- General: remove part number wildcards and use real part numbers.
- chipcap2.c: improve error path in probe function.
- chipcap2.c: fix error handling if regulator could not be registered.
- chipcap2.c: use absolute values for hysteresis (for both ABI
compatibility and simplicity).
- chipcap2.c: minor code-style fixes and variable renaming.
- Link to v2: https://lore.kernel.org/r/20231020-topic-chipcap2-v2-0-f5c325966fdb@xxxxxxxxx
Changes in v2:
- vendor-prefixes: full company name in the vendor description (Krzystof
Kozlowski)
- chipcap2.c: proper i2c_device_id table, coding style fixes, cleaner
error path in the probe function (Krzystof Kozlowski)
- dt-bindings: per-item description and lowercase names (Krzystof
Kozlowski)
- MAINTAINERS: fix manufacturer name (Krzystof Kozlowski)
- Link to v1: https://lore.kernel.org/r/20231020-topic-chipcap2-v1-0-087e21d4b1ed@xxxxxxxxx
---
Javier Carrasco (5):
dt-bindings: vendor-prefixes: add Amphenol
hwmon: (core) Add support for humidity min/max alarm
ABI: sysfs-class-hwmon: add descriptions for humidity min/max alarms
dt-bindings: hwmon: Add Amphenol ChipCap 2
hwmon: Add support for Amphenol ChipCap 2
Documentation/ABI/testing/sysfs-class-hwmon | 18 +
.../bindings/hwmon/amphenol,chipcap2.yaml | 77 ++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
Documentation/hwmon/chipcap2.rst | 73 ++
Documentation/hwmon/index.rst | 1 +
MAINTAINERS | 8 +
drivers/hwmon/Kconfig | 10 +
drivers/hwmon/Makefile | 1 +
drivers/hwmon/chipcap2.c | 835 +++++++++++++++++++++
drivers/hwmon/hwmon.c | 2 +
include/linux/hwmon.h | 4 +
11 files changed, 1031 insertions(+)
---
base-commit: 0dd3ee31125508cd67f7e7172247f05b7fd1753a
change-id: 20231020-topic-chipcap2-e2d8985430c2
Best regards,
--
Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx>