Re: [PATCH v3] iio: light: apds9306: fix default sampling frequency definition

From: Subhajit Ghosh

Date: Sat Sep 12 2026 - 07:02:35 EST


On 6/9/26 1:29 pm, Jonathan Cameron wrote:
On Fri, 04 Sep 2026 11:19:48 +1000
Tsz Shan Chan <tsz.chan.dev@xxxxxxxxx> wrote:

APDS9306_SAMP_FREQ_10HZ is defined as 0.

According to the datasheet (Broadcom AV02-4755EN, page 11,
ALS_MEAS_RATE), bits[2:0] set the measurement rate:
- 000: 25ms (40Hz)
- 001: 20ms (20Hz)
- 010: 100ms (10Hz)

Change APDS9306_SAMP_FREQ_10HZ from 0 to 2 to write the correct value
for 10Hz.

Datasheet: https://docs.broadcom.com/doc/AV02-4755EN
Fixes: 620d1e6c7a3f ("iio: light: Add support for APDS9306 Light Sensor")
Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxx>
Signed-off-by: Tsz Shan Chan <tchan@xxxxxxxxxxxxxx>
Looks correct to me, but as driver is only a few years old, I'll leave
some time to see if Subhajit is still about to take a look.

Jonathan

Hi Tsz,
Really good find.
I am just trying to find out how this happened as this is not a logic or implementation error!
Let me rig up my test setup, read back from the reg and make sure it gives 0x22 without any init.

Looks all right to me according to the datasheet and init sequence.
Acked-by: Subhajit Ghosh <subhajit.ghosh@xxxxxxxxxxxxxx>

Thanks Andy and Jonathan.

Regards,
Subhajit Ghosh

---
Changes in v3:
- Move datasheet URL to datasheet tag in the commit message
- Link to v2: https://lore.kernel.org/r/20260903-apds9306-v2-1-e8673986ae56@xxxxxxxxxxxxxx

Changes in v2:
- Add datasheet link to commit message
- Remove blank line in the tag block
- Link to v1: https://lore.kernel.org/r/20260903-apds9306-v1-1-3f892aa4f156@xxxxxxxxxxxxxx
---
drivers/iio/light/apds9306.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/light/apds9306.c b/drivers/iio/light/apds9306.c
index f681b02e4922..7dd41136734f 100644
--- a/drivers/iio/light/apds9306.c
+++ b/drivers/iio/light/apds9306.c
@@ -61,7 +61,7 @@
#define APDS9306_NUM_REPEAT_RATES 7
#define APDS9306_INT_SRC_CLEAR 0
#define APDS9306_INT_SRC_ALS 1
-#define APDS9306_SAMP_FREQ_10HZ 0
+#define APDS9306_SAMP_FREQ_10HZ 2
/**
* struct part_id_gts_multiplier - Part no. and corresponding gts multiplier

---
base-commit: 940de590b839f71d6dc846160534bf202401b8b7
change-id: 20260903-apds9306-bedba7b74e59

Best regards,