summaryrefslogtreecommitdiff
path: root/scripts/git.orderFile
diff options
context:
space:
mode:
authorCosmo Chou <chou.cosmo@gmail.com>2026-07-15 16:07:47 +0800
committerLee Jones <lee@kernel.org>2026-07-23 14:51:00 +0100
commit8d6b6c05b8e33d11e3fb3203309385e1a9cceecd (patch)
tree5dd680f180f0996abf617039cfc114a02f4c7a49 /scripts/git.orderFile
parent98c5c7b0d4269ecabfc86b8b49ffcfa47979e99d (diff)
downloadlinux-8d6b6c05b8e33d11e3fb3203309385e1a9cceecd.tar.gz
linux-8d6b6c05b8e33d11e3fb3203309385e1a9cceecd.zip
leds: pca9532: Fix phantom device registration on missing hardware
The initial PWM and PSC register writes in pca9532_configure() do not check the return values of i2c_smbus_write_byte_data(). If the I2C device is physically absent from the bus, the write fails with -ENXIO. However, the driver ignores this error and allows probe() to complete successfully. This results in the registration of phantom LED class devices and gpiochips backed by non-existent hardware. Subsequent GPIO reads from these phantom chips return bogus values (due to -ENXIO being truncated to an unsigned char in pca9532_gpio_get_value()), silently corrupting hardware state tracking in userspace. Propagate the I2C write failures back to probe() so the driver core can gracefully abort binding and release devres-managed resources. Fixes: e14fa82439d3 ("leds: Add pca9532 led driver") Signed-off-by: Cosmo Chou <chou.cosmo@gmail.com> Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com> Link: https://patch.msgid.link/20260715080747.1638097-1-chou.cosmo@gmail.com Signed-off-by: Lee Jones <lee@kernel.org>
Diffstat (limited to 'scripts/git.orderFile')
0 files changed, 0 insertions, 0 deletions