7e776e21 | 07-Jun-2024 |
Anjelique Melendez <quic_amelende@quicinc.com> |
leds: rgb: leds-qcom-lpg: Add PPG check for setting/clearing PBS triggers
Currently, all LED LPG devices will call lpg_{set,clear}_pbs_trigger() when setting brightness regardless of if they support
leds: rgb: leds-qcom-lpg: Add PPG check for setting/clearing PBS triggers
Currently, all LED LPG devices will call lpg_{set,clear}_pbs_trigger() when setting brightness regardless of if they support PPG and have PBS triggers. Check if device supports PPG before setting/clearing PBS triggers.
Fixes: 6ab1f766a80a ("leds: rgb: leds-qcom-lpg: Add support for PPG through single SDAM") Fixes: 5e9ff626861a ("leds: rgb: leds-qcom-lpg: Include support for PPG with dedicated LUT SDAM") Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com> Reviewed-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20240607005250.4047135-1-quic_amelende@quicinc.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
e1b08c6f | 31-May-2024 |
Hans de Goede <hdegoede@redhat.com> |
leds: rgb: leds-ktd202x: Initialize mutex earlier
The mutex must be initialized before the LED class device is registered otherwise there is a race where it may get used before it is initialized:
leds: rgb: leds-ktd202x: Initialize mutex earlier
The mutex must be initialized before the LED class device is registered otherwise there is a race where it may get used before it is initialized:
DEBUG_LOCKS_WARN_ON(lock->magic != lock) WARNING: CPU: 2 PID: 2045 at kernel/locking/mutex.c:587 __mutex_lock ... RIP: 0010:__mutex_lock+0x7db/0xc10 ... set_brightness_delayed_set_brightness.part.0+0x17/0x60 set_brightness_delayed+0xf1/0x100 process_one_work+0x222/0x5a0
Move the mutex_init() call earlier to avoid this race condition and switch to devm_mutex_init() to avoid the need to add error-exit cleanup to probe() if probe() fails later on.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Andy Shevchenko <andy@kernel.org> Link: https://lore.kernel.org/r/20240531114124.45346-4-hdegoede@redhat.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
75bd07ae | 31-May-2024 |
Kate Hsuan <hpa@redhat.com> |
leds: rgb: leds-ktd202x: I2C ID tables for KTD2026 and 2027
Add an i2c_device_id id_table to match manually instantiated (non device-tree / ACPI instantiated) KTD202x controllers as found on some x8
leds: rgb: leds-ktd202x: I2C ID tables for KTD2026 and 2027
Add an i2c_device_id id_table to match manually instantiated (non device-tree / ACPI instantiated) KTD202x controllers as found on some x86 boards.
This table shows the maximum support LED channel for KTD2026 (three LEDs) and KTD-2027 (4 LEDs).
Link: https://www.kinet-ic.com/uploads/KTD2026-7-04h.pdf Signed-off-by: Kate Hsuan <hpa@redhat.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Andy Shevchenko <andy@kernel.org> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20240531114124.45346-3-hdegoede@redhat.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
f2994f53 | 28-Apr-2024 |
Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
leds: mt6370: Remove unused field 'reg_cfgs' from 'struct mt6370_priv'
In 'struct mt6370_priv', the 'reg_cfgs' field is unused. Moreover 'struct reg_cfg' isn't defined anywhere, so remove it.
Found
leds: mt6370: Remove unused field 'reg_cfgs' from 'struct mt6370_priv'
In 'struct mt6370_priv', the 'reg_cfgs' field is unused. Moreover 'struct reg_cfg' isn't defined anywhere, so remove it.
Found with cppcheck, unusedStructMember.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/e389be5e1012dc05fc2641123883ca3b0747525a.1714328839.git.christophe.jaillet@wanadoo.fr Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
45066c4b | 05-Mar-2024 |
Abdel Alkuor <alkuor@gmail.com> |
leds: ncp5623: Add MS suffix to time defines
To make the time macro defines clearer, add MS as a suffix.
Signed-off-by: Abdel Alkuor <alkuor@gmail.com> Link: https://lore.kernel.org/r/2024030513382
leds: ncp5623: Add MS suffix to time defines
To make the time macro defines clearer, add MS as a suffix.
Signed-off-by: Abdel Alkuor <alkuor@gmail.com> Link: https://lore.kernel.org/r/20240305133824.1551809-1-alkuor@gmail.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
bfa0f02d | 12-Feb-2024 |
Arnd Bergmann <arnd@arndb.de> |
leds: qcom-lpg: Add QCOM_PBS dependency
The lpg driver fails to link now when the pbs driver is in a loadable module:
x86_64-linux-ld: drivers/leds/rgb/leds-qcom-lpg.o: in function `lpg_brightness_
leds: qcom-lpg: Add QCOM_PBS dependency
The lpg driver fails to link now when the pbs driver is in a loadable module:
x86_64-linux-ld: drivers/leds/rgb/leds-qcom-lpg.o: in function `lpg_brightness_set': leds-qcom-lpg.c:(.text+0xe7f): undefined reference to `qcom_pbs_trigger_event' x86_64-linux-ld: drivers/leds/rgb/leds-qcom-lpg.o: in function `lpg_probe': leds-qcom-lpg.c:(.text+0x16a5): undefined reference to `get_pbs_client_device'
Add a dependency to avoid the broken configuration. Apparently there is still a use for lpg with pbs disabled entirely for certain chips, so allow both but not LEDS_QCOM_LPG=y with QCOM_PBS=m.
Fixes: 214110175679 ("leds: rgb: leds-qcom-lpg: Add support for PPG through single SDAM") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Jean Delvare <jdelvare@suse.de> Link: https://lore.kernel.org/r/20240212111526.829122-1-arnd@kernel.org Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
ec9aa897 | 06-Feb-2024 |
Aren Moynihan <aren@peacevolution.org> |
leds: rgb: leds-group-multicolor: Allow LEDs to stay on in suspend
If none of the managed LEDs enable LED_CORE_SUSPENDRESUME, then we shouldn't need to set it here. This makes it possible to use mul
leds: rgb: leds-group-multicolor: Allow LEDs to stay on in suspend
If none of the managed LEDs enable LED_CORE_SUSPENDRESUME, then we shouldn't need to set it here. This makes it possible to use multicolor groups with GPIO LEDs that enable retain-state-suspended in the device tree.
Signed-off-by: Aren Moynihan <aren@peacevolution.org> Acked-by: Pavel Machek <pavel@ucw.cz> Link: https://lore.kernel.org/r/20240206185400.596979-1-aren@peacevolution.org [Lee: Changed the comment to respect proper grammar] Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
c47d1454 | 21-Dec-2023 |
Anjelique Melendez <quic_amelende@quicinc.com> |
leds: rgb: Update PM8350C lpg_data to support two-nvmem PPG Scheme
Update the pm8350c lpg_data struct so that pm8350c devices are treated as PWM devices that support two-nvmem PPG scheme.
Signed-of
leds: rgb: Update PM8350C lpg_data to support two-nvmem PPG Scheme
Update the pm8350c lpg_data struct so that pm8350c devices are treated as PWM devices that support two-nvmem PPG scheme.
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com> Link: https://lore.kernel.org/r/20231221185838.28440-8-quic_amelende@quicinc.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
5e9ff626 | 21-Dec-2023 |
Anjelique Melendez <quic_amelende@quicinc.com> |
leds: rgb: leds-qcom-lpg: Include support for PPG with dedicated LUT SDAM
On PMICs such as PM8350C, the pattern lookup table (LUT) is stored in a separate SDAM from the one where the lpg per-channel
leds: rgb: leds-qcom-lpg: Include support for PPG with dedicated LUT SDAM
On PMICs such as PM8350C, the pattern lookup table (LUT) is stored in a separate SDAM from the one where the lpg per-channel data is stored.
Add support for PPG with a dedicated LUT SDAM while maintaining backward compatibility for those targets that use only a single SDAM.
Co-developed-by: Guru Das Srinagesh <quic_gurus@quicinc.com> Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com> Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com> Link: https://lore.kernel.org/r/20231221185838.28440-7-quic_amelende@quicinc.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
05338ba5 | 21-Dec-2023 |
Anjelique Melendez <quic_amelende@quicinc.com> |
leds: rgb: leds-qcom-lpg: Update PMI632 lpg_data to support PPG
Update the pmi632 lpg_data struct so that pmi632 devices use PPG for LUT pattern.
Signed-off-by: Anjelique Melendez <quic_amelende@qu
leds: rgb: leds-qcom-lpg: Update PMI632 lpg_data to support PPG
Update the pmi632 lpg_data struct so that pmi632 devices use PPG for LUT pattern.
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com> Tested-by: Luca Weiss <luca.weiss@fairphone.com> Link: https://lore.kernel.org/r/20231221185838.28440-6-quic_amelende@quicinc.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
5e72f1fe | 02-Dec-2023 |
Jean Delvare <jdelvare@suse.de> |
leds: rgb: Drop obsolete dependency on COMPILE_TEST
Since commit 0166dc11be91 ("of: make CONFIG_OF user selectable"), it is possible to test-build any driver which depends on OF on any architecture
leds: rgb: Drop obsolete dependency on COMPILE_TEST
Since commit 0166dc11be91 ("of: make CONFIG_OF user selectable"), it is possible to test-build any driver which depends on OF on any architecture by explicitly selecting OF. Therefore depending on COMPILE_TEST as an alternative is no longer needed.
Signed-off-by: Jean Delvare <jdelvare@suse.de> Link: https://lore.kernel.org/r/20231202214353.7c02f23c@endymion.delvare Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
793bf551 | 26-Nov-2023 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
leds: qcom-lpg: Consistenly use dev_err_probe() in .probe()'s error path
One error path already used dev_err_probe(). Adapt the other error paths that emit an error message to also use this function
leds: qcom-lpg: Consistenly use dev_err_probe() in .probe()'s error path
One error path already used dev_err_probe(). Adapt the other error paths that emit an error message to also use this function for consistency and slightly simplified code.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20231126095230.683204-3-u.kleine-koenig@pengutronix.de Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|