<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/iio/light, branch v7.2-rc1</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v7.2-rc1</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v7.2-rc1'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2026-06-14T05:56:59+00:00</updated>
<entry>
<title>Merge tag 'iio-fixes-for-7.1b' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-next</title>
<updated>2026-06-14T05:56:59+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2026-06-14T05:56:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b232fc005aec5fa5346d970f8986b8f0046f328b'/>
<id>urn:sha1:b232fc005aec5fa5346d970f8986b8f0046f328b</id>
<content type='text'>
IIO: 2nd set of fixes for the 7.1 cycle.

Usual mixed bag of ancient issues and the recently introduced.

Various drivers
- Ensure use of simple_write_to_buffer() in debugfs callbacks doesn't
  result in reading off   the end of intended data by checking the
  position is always 0.
buffer/hw-consumer
- Ensure scan_mask is freed on buffer release.
acpi-als
- Check ACPI_COMPANION() against NULL to close corner case where a
  driver is overridden.
adi,ad4062
- Add GPIOLIB dependency to avoid undefined ref to gpiochip_get_data()
adi.ad7768-1
- Add GPIOLIB dependency to avoid several undefined functions.
adi,ad2s1210
- Ensure possible recovery path if a read fails in the interrupt handler.
bosch,bmg160
- Increase sleep on startup to ensure device is ready.
bosch,bmp280
- Ensure buffer pushed to kfifo is zeroed to avoid leaking uninitialized
  stack data to userspace.
dyna-image,al3010
- Fix refactor that stopped reading one of the two measurement registers.
dyna-image,al3320a
- Fix refactor that stopped reading one of the two measurement registers.
qcom,spmi-iadc
- Ensure disable_irq_wake() is called on remove path.
sensiron,scd30
- Fix a sign extension bug.
st,vl5310x
- Ensure possible recovery path if a read fails in the interrupt handler.
ti,adc1298
- Bounds check for pga_settings index. Hardening against device returning
  unexpected values.
ti,tmp006
- Ensure trigger correctly released on remove path.
vishay,veml6030
- Fix incorrect channel type in events.
vishay,veml6074
- Bounds check for veml6075_it_ms. Hardening against device returning
  unexpected values.

* tag 'iio-fixes-for-7.1b' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (23 commits)
  iio: adc: ad_sigma_delta: fix clear_pending_event for registerless devices
  iio: adc: ad_sigma_delta: fix CS held asserted and state leaks
  iio: light: opt3001: fix missing state reset on timeout
  iio: chemical: scd30: Cleanup initializations and fix sign-extension bug
  iio: core: fix uninitialized data in debugfs
  iio: backend: fix uninitialized data in debugfs
  iio: dac: ad3552r-hs: fix uninitialized data ni ad3552r_hs_write_data_source()
  iio: adc: qcom-spmi-iadc: balance enable_irq_wake() on driver unbind
  iio: light: al3320a: read both ALS ADC registers again
  iio: light: al3010: read both ALS ADC registers again
  iio: temperature: tmp006: use devm_iio_trigger_register
  iio: buffer: hw-consumer: free scan_mask on buffer release
  iio: adc: ad7768-1: Select GPIOLIB
  iio: light: veml6030: fix channel type when pushing events
  iio: light: acpi-als: Check ACPI_COMPANION() against NULL
  iio: resolver: ad2s1210: notify trigger and clear state on fault read error
  iio: proximity: vl53l0x: notify trigger and clear IRQ on error paths
  iio: gyro: bmg160: wait full startup time after mode change at probe
  iio: gyro: bmg160: bail out when bandwidth/filter is not in table
  iio: pressure: bmp280: zero-init bmp580 trigger handler buffer
  ...
</content>
</entry>
<entry>
<title>iio: light: tsl2591: remove unneeded tsl2591_compatible_als_persist_cycle()</title>
<updated>2026-06-03T11:10:56+00:00</updated>
<author>
<name>Lucas Rabaquim</name>
<email>lucas.rabaquim@usp.br</email>
</author>
<published>2026-06-02T18:11:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b1d1bfa26c661ad18a37456a3153b8f15826e0ad'/>
<id>urn:sha1:b1d1bfa26c661ad18a37456a3153b8f15826e0ad</id>
<content type='text'>
The function was only used to verify if als_persist is a
TSL2591_PRST_ALS_INT_CYCLE_* value. However, before its call in
tsl2591_write_event_value(), the line
als_persist = tsl2591_persist_lit_to_cycle(period) is executed,
meaning that by the time tsl2591_compatible_als_persist_cycle()
is reached, als_persist is a TSL2591_PRST_ALS_INT_CYCLE_* value,
making the verification pointless.

Suggested-by: Sashiko &lt;sashiko-bot@kernel.org&gt;
Link: https://sashiko.dev/#/patchset/20260528185912.24774-1-matheus.feitosa%40usp.br
Signed-off-by: Lucas Rabaquim &lt;lucas.rabaquim@usp.br&gt;
Co-developed-by: Matheus Silveira &lt;matheus.feitosa@usp.br&gt;
Signed-off-by: Matheus Silveira &lt;matheus.feitosa@usp.br&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'v7.1-rc6' into work</title>
<updated>2026-06-02T14:24:19+00:00</updated>
<author>
<name>Jonathan Cameron</name>
<email>jic23@kernel.org</email>
</author>
<published>2026-06-02T14:24:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c82228f76aaa3f77eca3ac22670aa69dd0e59d40'/>
<id>urn:sha1:c82228f76aaa3f77eca3ac22670aa69dd0e59d40</id>
<content type='text'>
Linux 7.1-rc6
</content>
</entry>
<entry>
<title>iio: light: veml3328: add support for new device</title>
<updated>2026-06-02T13:03:20+00:00</updated>
<author>
<name>Joshua Crofts</name>
<email>joshua.crofts1@gmail.com</email>
</author>
<published>2026-05-31T16:56:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e45a44f2196e0d6aa22fd80beff1c18dee9e9348'/>
<id>urn:sha1:e45a44f2196e0d6aa22fd80beff1c18dee9e9348</id>
<content type='text'>
Add support for the Vishay VEML3328 RGB/IR light sensor communicating
via I2C (SMBus compatible).

Also add a new entry for said driver into Kconfig and Makefile.

Assisted-by: Gemini:3.1-Pro
Signed-off-by: Joshua Crofts &lt;joshua.crofts1@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>light: tsl2591: simplify tsl2591_persist functions via lookup table</title>
<updated>2026-05-31T10:01:51+00:00</updated>
<author>
<name>Matheus Silveira</name>
<email>matheus.feitosa@usp.br</email>
</author>
<published>2026-05-28T18:55:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=40d7dc96cf14e2e37fb9501e7d25fde10b858596'/>
<id>urn:sha1:40d7dc96cf14e2e37fb9501e7d25fde10b858596</id>
<content type='text'>
Replace switch statements with an indexed lookup table for
persist cycle conversions.

Both functions contain redundant switch statements. This
reduces code duplication and makes future updates to
TSL2591_PRST_ALS_INT_CYCLE_* definitions easier to maintain
by keeping the mapping in a single place.

Signed-off-by: Matheus Silveira &lt;matheus.feitosa@usp.br&gt;
Co-developed-by: Lucas Rabaquim &lt;lucas.rabaquim@usp.br&gt;
Signed-off-by: Lucas Rabaquim &lt;lucas.rabaquim@usp.br&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: light: add support for APDS9999 sensor</title>
<updated>2026-05-31T10:01:49+00:00</updated>
<author>
<name>Jose A. Perez de Azpillaga</name>
<email>azpijr@gmail.com</email>
</author>
<published>2026-05-26T07:55:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5f9363e523000f05bfbd5440fecfa08ec5d08094'/>
<id>urn:sha1:5f9363e523000f05bfbd5440fecfa08ec5d08094</id>
<content type='text'>
Add IIO driver for Broadcom APDS9999 ambient light sensor.

The APDS9999 is a digital proximity and RGB sensor with ALS
capability. The driver implements the ALS/Lux functionality
using the green channel, which uses optical coating technology
to approximate the human eye spectral response.

Raw IIO_INTENSITY channels are exposed for red, green, blue,
and IR so userspace can compute its own weighted lux.
Proximity (PS) support is not yet implemented.

Signed-off-by: Jose A. Perez de Azpillaga &lt;azpijr@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: light: cros_ec_light_prox: simplify timestamp channel definition</title>
<updated>2026-05-31T10:01:49+00:00</updated>
<author>
<name>David Lechner</name>
<email>dlechner@baylibre.com</email>
</author>
<published>2026-05-25T01:38:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6a0861ce6f725891e8f31971512915a7374a541e'/>
<id>urn:sha1:6a0861ce6f725891e8f31971512915a7374a541e</id>
<content type='text'>
Use IIO_CHAN_SOFT_TIMESTAMP() to define the timestamp channel instead of
manually filling in the struct iio_chan_spec fields. This makes the code
less verbose and mistake-prone.

Also drop obvious comment while we're at it.

Signed-off-by: David Lechner &lt;dlechner@baylibre.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: tcs3472: move standalone return to default case</title>
<updated>2026-05-31T10:01:48+00:00</updated>
<author>
<name>Aldo Conte</name>
<email>aldocontelk@gmail.com</email>
</author>
<published>2026-05-22T12:34:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1ccae88c0a1023e0c9f757dc6b1fbca463b32b36'/>
<id>urn:sha1:1ccae88c0a1023e0c9f757dc6b1fbca463b32b36</id>
<content type='text'>
Move the trailing 'return -EINVAL' statements at the end of
tcs3472_read_raw() and tcs3472_write_raw() into explicit default:
cases inside the respective switch statements.

This removes the need for a separate return statement
after the switch.

No functional change.

Suggested-by: Andy Shevchenko &lt;andy@kernel.org&gt;
Reviewed-by: Andy Shevchenko &lt;andy@kernel.org&gt;
Reviewed-by: Joshua Crofts &lt;joshua.crofts1@gmail.com&gt;
Signed-off-by: Aldo Conte &lt;aldocontelk@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: tcs3472: use local struct device * for remaining cases</title>
<updated>2026-05-31T10:01:48+00:00</updated>
<author>
<name>Aldo Conte</name>
<email>aldocontelk@gmail.com</email>
</author>
<published>2026-05-22T12:34:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c9dc65030e5705d17c9605a17732d15b71898d0b'/>
<id>urn:sha1:c9dc65030e5705d17c9605a17732d15b71898d0b</id>
<content type='text'>
Use the local 'struct device *dev' variable introduced for the devm
calls also for the dev_info() calls in tcs3472_probe(), to keep the
probe function consistent.

No functional change.

Signed-off-by: Aldo Conte &lt;aldocontelk@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: tcs3472: use devm for resource management</title>
<updated>2026-05-31T10:01:48+00:00</updated>
<author>
<name>Aldo Conte</name>
<email>aldocontelk@gmail.com</email>
</author>
<published>2026-05-22T12:34:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=df94df71711516298719a4507a792f0bb9fd0837'/>
<id>urn:sha1:df94df71711516298719a4507a792f0bb9fd0837</id>
<content type='text'>
Convert the driver to use device-managed resource allocation:
- Add tcs3472_powerdown_action() and register it with
  devm_add_action_or_reset() to ensure the device is powered down on
  cleanup.
- Replace iio_triggered_buffer_setup() with
  devm_iio_triggered_buffer_setup().
- Replace request_threaded_irq() with devm_request_threaded_irq().
- Replace iio_device_register() with devm_iio_device_register().
- Replace mutex_init() with devm_mutex_init().
- Remove tcs3472_remove() as all cleanup is now handled by devm.

Use a local 'dev = &amp;client-&gt;dev' in tcs3472_probe() to keep the devm
calls compact.

Signed-off-by: Aldo Conte &lt;aldocontelk@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
</feed>
