<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux.git/drivers/iio/chemical, branch master</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=master</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/'/>
<updated>2026-07-03T05:38:17+00:00</updated>
<entry>
<title>Replace &lt;linux/mod_devicetable.h&gt; by more specific &lt;linux/device-id/*.h&gt; (c files)</title>
<updated>2026-07-03T05:38:17+00:00</updated>
<author>
<name>Uwe Kleine-König (The Capable Hub)</name>
<email>u.kleine-koenig@baylibre.com</email>
</author>
<published>2026-06-30T09:24:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=995832b2cebe6969d1b42635db698803ee31294d'/>
<id>urn:sha1:995832b2cebe6969d1b42635db698803ee31294d</id>
<content type='text'>
Replace the #include of &lt;linux/mod_devicetable.h&gt; by the more specific
&lt;linux/device-id/*.h&gt; where applicable. For most cases the include
can be dropped completely, only a few drivers need one or two headers
added.

Acked-by: Danilo Krummrich &lt;dakr@kernel.org&gt;
Acked-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Acked-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Link: https://patch.msgid.link/1a3f2007c5c5dcf555c09a4035ce3ae8ef1b6c49.1782808461.git.u.kleine-koenig@baylibre.com
Signed-off-by: Uwe Kleine-König (The Capable Hub) &lt;u.kleine-koenig@baylibre.com&gt;
</content>
</entry>
<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.rulkc.org/pub/scm/linux/kernel/git/stable/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: chemical: scd30: Replace manual locking with RAII locking</title>
<updated>2026-06-03T13:54:08+00:00</updated>
<author>
<name>Maxwell Doose</name>
<email>m32285159@gmail.com</email>
</author>
<published>2026-05-31T23:38:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=eb60a24b35bfb9e85a272e561379833e49a12a79'/>
<id>urn:sha1:eb60a24b35bfb9e85a272e561379833e49a12a79</id>
<content type='text'>
scd30_core.c currently uses manual mutex_lock() and mutex_unlock()
calls. Replace them with the newer guard(mutex)() for cleaner RAII
patterns and to improve maintainability.

Add new helper function scd30_trigger_handler_helper() containing
the critical section for scd30_trigger_handler().

In addition, small refactor to replace "?:" operator with regular
if/else returns.

Signed-off-by: Maxwell Doose &lt;m32285159@gmail.com&gt;
Reviewed-by: Joshua Crofts &lt;joshua.crofts1@gmail.com&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.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c82228f76aaa3f77eca3ac22670aa69dd0e59d40'/>
<id>urn:sha1:c82228f76aaa3f77eca3ac22670aa69dd0e59d40</id>
<content type='text'>
Linux 7.1-rc6
</content>
</entry>
<entry>
<title>iio: chemical: sps30: Replace manual locking with RAII locking</title>
<updated>2026-05-31T10:01:48+00:00</updated>
<author>
<name>Maxwell Doose</name>
<email>m32285159@gmail.com</email>
</author>
<published>2026-05-23T18:15:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=d2b3d461a09e0db6a6a8237db4081a32f71a04b9'/>
<id>urn:sha1:d2b3d461a09e0db6a6a8237db4081a32f71a04b9</id>
<content type='text'>
Replace manual mutex_lock() and mutex_unlock() calls with the much newer
guard(mutex)() macro to enable RAII patterns, modernize the driver, and
to increase readability.

Move mutex locking into sps30_do_meas() and tune it up to use guard()(),
as every caller takes the lock anyways.

Signed-off-by: Maxwell Doose &lt;m32285159@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: Initialize i2c_device_id arrays using member names</title>
<updated>2026-05-31T10:01:46+00:00</updated>
<author>
<name>Uwe Kleine-König (The Capable Hub)</name>
<email>u.kleine-koenig@baylibre.com</email>
</author>
<published>2026-05-19T08:13:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f68afce8e8a74f52a879f56f607dfedf552b5ab5'/>
<id>urn:sha1:f68afce8e8a74f52a879f56f607dfedf552b5ab5</id>
<content type='text'>
While being less compact, using named initializers allows to more easily
see which members of the structs are assigned which value without having
to lookup the declaration of the struct. And it's also more robust
against changes to the struct definition.

The mentioned robustness is relevant for a planned change to struct
i2c_device_id that replaces .driver_data by an anonymous union.

This patch doesn't modify the compiled arrays, only their representation
in source form benefits. The former was confirmed with x86 and arm64
builds.

Signed-off-by: Uwe Kleine-König (The Capable Hub) &lt;u.kleine-koenig@baylibre.com&gt;
Reviewed-by: Siratul Islam &lt;email@sirat.me&gt;
Reviewed-by: Matti Vaittinen &lt;mazziesaccount@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: chemical: bme680: use BME680_NUM_CHANNELS for scan buffer</title>
<updated>2026-05-31T09:59:42+00:00</updated>
<author>
<name>Nikhil Gautam</name>
<email>nikhilgtr@gmail.com</email>
</author>
<published>2026-04-20T08:24:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=20c598e82cd0b37334dc3e95fbd460f594460c3c'/>
<id>urn:sha1:20c598e82cd0b37334dc3e95fbd460f594460c3c</id>
<content type='text'>
Use BME680_NUM_CHANNELS instead of the hardcoded channel count
in the scan buffer.

This avoids use of a magic number and improves code readability
and maintainability.

Suggested-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
Signed-off-by: Nikhil Gautam &lt;nikhilgtr@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: chemical: scd30: reject (response=NULL, size&gt;0) in scd30_i2c_command()</title>
<updated>2026-05-31T09:59:37+00:00</updated>
<author>
<name>Stepan Ionichev</name>
<email>sozdayvek@gmail.com</email>
</author>
<published>2026-05-07T15:28:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8e9c394520844fb11404b4f9f16749f90e1d8627'/>
<id>urn:sha1:8e9c394520844fb11404b4f9f16749f90e1d8627</id>
<content type='text'>
scd30_i2c_command() takes an opaque "response" buffer plus its size.
At the start of the function the code already checks if response is
NULL (via the rsp local), but the response-decoding loop after the
i2c transfer always dereferences rsp without re-checking. With the
current callers in scd30_core.c this is harmless, since write
commands pass response=NULL together with size=0 (so the loop body
is never entered).

The (response=NULL, size&gt;0) combination has no useful meaning: there
is nowhere to put the bytes that come back from the chip. Treat it
as an invalid argument and bail out at the top of the function with
-EINVAL, instead of silently doing the i2c transfer and dereferencing
a NULL pointer in the decode loop.

smatch flagged the inconsistency:

  drivers/iio/chemical/scd30_i2c.c:104 scd30_i2c_command() error: we
    previously assumed rsp could be null (see line 77)

No functional change for the existing callers, which only ever use
(response=NULL, size=0) for writes and (response!=NULL, size&gt;0) for
reads.

Signed-off-by: Stepan Ionichev &lt;sozdayvek@gmail.com&gt;
Acked-by: Maxwell Doose &lt;m32285159@gmail.com&gt;
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@intel.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: chemical: scd30: make command lookup table const</title>
<updated>2026-05-31T09:59:37+00:00</updated>
<author>
<name>Giorgi Tchankvetadze</name>
<email>giorgitchankvetadze1997@gmail.com</email>
</author>
<published>2026-05-08T13:39:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ae008f65398c2071b0b5510998d86f51d285a77d'/>
<id>urn:sha1:ae008f65398c2071b0b5510998d86f51d285a77d</id>
<content type='text'>
scd30_i2c_cmd_lookup_tbl contains fixed opcodes and is
only read by scd30_i2c_command(). Make it const to document that it's immutable
and allow it to be placed in read-only memory.

Signed-off-by: Giorgi Tchankvetadze &lt;giorgitchankvetadze1997@gmail.com&gt;
Reviewed-by: Stepan Ionichev &lt;sozdayvek@gmail.com&gt;
Acked-by: Maxwell Doose &lt;m32285159@gmail.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
<entry>
<title>iio: Move MODULE_DEVICE_TABLE next to the table itself</title>
<updated>2026-05-31T09:59:34+00:00</updated>
<author>
<name>Krzysztof Kozlowski</name>
<email>krzysztof.kozlowski@oss.qualcomm.com</email>
</author>
<published>2026-05-05T10:29:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c49965ae6b0c1a6362737fbce1e06617882f51fc'/>
<id>urn:sha1:c49965ae6b0c1a6362737fbce1e06617882f51fc</id>
<content type='text'>
By convention MODULE_DEVICE_TABLE() immediately follows the ID table it
exports, because this is easier to read and verify.  It also makes more
sense since #ifdef for ACPI or OF could hide both of them.

Most of the drivers already have this correctly placed, so adjust
the missing ones.  No functional impact.

Signed-off-by: Krzysztof Kozlowski &lt;krzysztof.kozlowski@oss.qualcomm.com&gt;
Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
</content>
</entry>
</feed>
