| From: |
| Joshua Crofts <joshua.crofts1-AT-gmail.com> |
| To: |
| Javier Carrasco <javier.carrasco.cruz-AT-gmail.com>, Jonathan Cameron <jic23-AT-kernel.org>, David Lechner <dlechner-AT-baylibre.com>, Nuno Sá <nuno.sa-AT-analog.com>, Andy Shevchenko <andy-AT-kernel.org>, Rob Herring <robh-AT-kernel.org>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Rishi Gupta <gupt21-AT-gmail.com> |
| Subject: |
| [PATCH v3 0/2] iio: light: veml3328: add support for new sensor |
| Date: |
| Sat, 30 May 2026 19:06:45 +0200 |
| Message-ID: |
| <20260530-veml3328-v3-0-dd562eaee8d9@gmail.com> |
| Cc: |
| linux-iio-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, Joshua Crofts <joshua.crofts1-AT-gmail.com>, Krzysztof Kozlowski <krzysztof.kozlowski-AT-oss.qualcomm.com> |
| Archive-link: |
| Article |
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@gmail.com>
---
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-1d4b663e2...
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@gmail.com>
---
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@gmail.com>