[PATCH v3 0/2] iio: light: veml3328: add support for new sensor
From: Joshua Crofts
Date: Sat May 30 2026 - 13:12:05 EST
This patch series adds support for the Vishay VEML3328 RGBCIR light
sensor. The sensor communicates via I2C (SMBus compatible) and provides
5 types of 16-bit measurements: red, green, blue, clear and infrared.
Reasons for adding a new driver:
- Existing Vishay drivers in the kernel do not cover sensors that
handle RGBC and IR simultaneously.
- The register map and configuration differ from other Vishay light
sensors currently supported by IIO.
Testing:
- Tested on a Raspberry Pi 4 using a VEML3328 breakout board.
Datasheet:
https://www.vishay.com/docs/84968/veml3328.pdf
Signed-off-by: Joshua Crofts <joshua.crofts1@xxxxxxxxx>
---
Changes in v2:
- Add additional IIO_LIGHT channel for ambient light sensing
- Remove separate dt binding file and added veml3328 entry to veml6030
yaml
- Move driver to PM_RUNTIME_ACQUIRE_AUTOSUSPEND() macro
- Add missing headers
- Remov redundant mutex as regmap handles it itself
- Use regmap_set/clear_bits() instead of regmap_update_bits()
- Removed redundant dev pointer
- Edit commit messages
- Various code style cleanups
- Link to v1: https://patch.msgid.link/20260516-veml3328-v1-0-1d4b663e2fe3@xxxxxxxxx
Changes in v3:
- Add 2D array of precomputed scale values based on integration time
- Fix chan_spec masks
- Simplify read/write/avail callbacks
Signed-off-by: Joshua Crofts <joshua.crofts1@xxxxxxxxx>
---
Joshua Crofts (2):
dt-bindings: iio: light: veml6030: add veml3328
iio: light: veml3328: add support for new device
.../bindings/iio/light/vishay,veml6030.yaml | 5 +-
MAINTAINERS | 5 +
drivers/iio/light/Kconfig | 11 +
drivers/iio/light/Makefile | 1 +
drivers/iio/light/veml3328.c | 413 +++++++++++++++++++++
5 files changed, 434 insertions(+), 1 deletion(-)
---
base-commit: 7b84b1e9dd850a5c9b55e27daa4ecdc2dd5b3431
change-id: 20260530-veml3328-d2ccb26d02c7
Best regards,
--
Joshua Crofts <joshua.crofts1@xxxxxxxxx>