The Sensortek STK36C61 is a 3-in-1 ambient light / proximity / RGB
colour sensor whose register interface is compatible with the stk3310
across the ALS and proximity data, threshold, gain and
integration-time registers this driver uses. The part name comes from
the Fairphone 6 manual, which lists the component as "3IN1 ALPS/RGB
sensor/STK36C61". There is no public datasheet; the layout was probed
on the device: chip ID 0x95, the stk3310 STATE/FLAG bit layout, data
and threshold registers, gain steps that scale the ALS reading
accordingly, and an RGBC data block directly after the ALS data.

Tested on a Fairphone 6 running a 7.1.2-based tree carrying these
patches, adapted only to that base's older style for the bulk-read
size argument and the i2c device-ID table initialisers. The stk3310.c
delta between that base and this one (chiefly the PS-interrupt
suspend/resume rework) does not alter behaviour on the paths this
series touches. A board DTS node using the new compatible follows
separately via linux-arm-msm.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Jorijn van der Graaf <[email protected]>

Jorijn van der Graaf (3):
  dt-bindings: iio: light: stk33xx: document the Sensortek STK36C61
  iio: light: stk3310: add per-chip match data
  iio: light: stk3310: support the Sensortek STK36C61

 .../bindings/iio/light/stk33xx.yaml           |   9 +-
 drivers/iio/light/stk3310.c                   | 151 +++++++++++++-----
 2 files changed, 115 insertions(+), 45 deletions(-)


base-commit: 350d1fb9204b13c5f95e511e98b8bcb47574d425
-- 
2.55.0


Reply via email to