Backlight for v7.4

- Improvements & Fixes
   - Qualcomm WLED: Fix a NULL pointer dereference in `wled_remove()` by setting platform
     driver data in `wled_probe()`
   - Qualcomm WLED: Fix the WLED3 brightness register stride to prevent consecutive string
     writes from overlapping
   - Qualcomm WLED: Read back the hardware-programmed brightness at probe, expose it via
     `get_brightness()`, and prevent unbalanced OVP IRQ enabling
   - TI LM3630A: Cancel delayed work synchronously after freeing the IRQ and before
     destroying the workqueue in `lm3630a_remove()`
 
 - Cleanups & Refactoring
   - Ilitek ILI9320 / Kinetic KTD253: Fix spelling typos in comments
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmrfbigACgkQUa+KL4f8
 d2FHIBAAmyjo0hEalV58soe3iEmMzJAc7O+HVa2ZX3tU1Ona2qvd3Tfdict6fN9t
 f7VbC9+Cekq6oqh4CKVNpdUo2D47zt34JCdfvwUt0Nbntr5FXdbpclyF7r5jMeAu
 ETIWtRTvHT0n4OZKo+k7H8NDrLWOBllOheEHP+UWdEv+VRSC9NbeOryamxA/lcrL
 /Y9wewxIIGdi91RnwunwPDX7KawJofN1uzwIVwbnoDKx5urz3a4P6HXm+hPM3gVV
 EmirV8B5OBIgwdeEYevc5lg0PrnnGoqJFcDfKDJTVjVqovQzXPEsK8IXSi9ED0Ob
 EU37hVJD51aq3Q4AYHj9OH/DmG2cVc4N01i4BCUYZUhoDT4Jm9W4iU8e3iX16A4h
 X3g9tpiYjKprvbPzLaspVulSUp9eAk4LLmXQ3OnoYG9PwdZe/9eKtE9epYgUEF0I
 m/fZJjwlbBGL65dyEQGWWdEI2wztMWf2MdHUMZPiaQZdqTERjovIX6wriRB8WmFz
 juc8Lux9t8CuuBTT1MruXeTweaSZPH9e7EzmTYNXgcPlX+53ky4XMJzCKgfaP/yw
 QL0iY8w5km+OU39uPxz7knA9bHYqs25cyTX7BV7XnOykXrAgrdlwPidy1WTswpPx
 8U9vXui03JdeyhMV5pR562gYaaZzCYqgaB+HyupcQxhVEFIUXvU=
 =t3tl
 -----END PGP SIGNATURE-----

Merge tag 'backlight-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight

Pull backlight updates from Lee Jones:
 "Improvements & Fixes:
   - Qualcomm WLED: Fix a NULL pointer dereference in `wled_remove()` by
     setting platform driver data in `wled_probe()`
   - Qualcomm WLED: Fix the WLED3 brightness register stride to prevent
     consecutive string writes from overlapping
   - Qualcomm WLED: Read back the hardware-programmed brightness at
     probe, expose it via
    `get_brightness()`, and prevent unbalanced OVP IRQ enabling
   - TI LM3630A: Cancel delayed work synchronously after freeing the IRQ
     and before destroying the workqueue in `lm3630a_remove()`

  Cleanups & Refactoring:
   - Ilitek ILI9320 / Kinetic KTD253: Fix spelling typos in comments"

* tag 'backlight-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
  backlight: qcom-wled: Read back the programmed brightness at probe
  backlight: qcom-wled: Fix unbalanced OVP IRQ enable at probe
  backlight: qcom-wled: Fix WLED3 brightness register stride
  backlight: qcom-wled: Fix NULL pointer dereference in wled_remove()
  backlight: lm3630a: Cancel delayed work before destroying workqueue
  backlight: ili9320/ktd253: Fix typos in comments
This commit is contained in:
Linus Torvalds 2026-10-26 09:10:43 -10:00
commit d135ab453a
3 changed files with 3 additions and 2 deletions

View File

@ -30,7 +30,7 @@ static inline int ili9320_write_spi(struct ili9320 *ili,
unsigned char *addr = spi->buffer_addr;
unsigned char *data = spi->buffer_data;
/* spi message consits of:
/* spi message consists of:
* first byte: ID and operation
*/

View File

@ -53,7 +53,7 @@ static int ktd253_backlight_stepdown(struct ktd253_backlight *ktd253)
*
* Architectures do not always support ndelay() and we will get a few us
* instead. If we get to a critical time limit an interrupt has likely
* occured in the low part of the loop and we need to restart from the
* occurred in the low part of the loop and we need to restart from the
* top so we have the backlight in a known state.
*/
u64 ns;

View File

@ -591,6 +591,7 @@ static void lm3630a_remove(struct i2c_client *client)
if (pchip->irq) {
free_irq(pchip->irq, pchip);
cancel_delayed_work_sync(&pchip->work);
destroy_workqueue(pchip->irqthread);
}
}