linux/drivers/leds
Linus Torvalds 5b93dc1c0c LEDs for v7.4
- New Support & Features
   - Core: Add `led_trigger_notify_hw_control_changed()` to allow drivers to notify the
     core of autonomous hardware control transitions
   - Core: Add the `hw_offloaded()` trigger callback and `trigger_may_offload_to_hw` sysfs
     attribute to expose hardware-offloaded triggers
   - Netdev Trigger: Implement the `hw_offloaded()` callback to report hardware control
     state to the LED core
   - Analog Devices LTC3208: Add support for the LTC3208 7-channel multi-display I2C LED
     driver
   - ChromeOS EC: Implement the `hw_offloaded()` callback for the `chromeos-auto` trigger
   - CZ.NIC Turris Omnia: Implement the `hw_offloaded()` callback and declare `omnia-mcu`
     as a hardware control trigger
   - STMicroelectronics ST1202: Add hardware-accelerated blink support via `blink_set()`
 
 - Improvements & Fixes
   - Class: Always hold the `led_access` mutex in `brightness_show()` to avoid exposing
     transient registration states
   - Class: Deactivate active hardware control triggers when writing to the `brightness`
     sysfs attribute
   - Core: Enforce strict validation in `led_trigger_is_hw_controlled()` and warn on legacy
     fallback paths
   - Flash Class: Initialize the fault variable in `flash_fault_show()` to prevent
     undefined behavior when callbacks perform bitwise ORs
   - Kinetic KTD2692: Pass the driver context directly to `regulator_disable_action()` to
     prevent a NULL pointer dereference during error unwinding
   - Maxim MAX77705: Use `fwnode_for_each_child_node_scoped()` in `max77705_add_led()` to
     prevent child node reference leaks on error paths
   - NXP PCA9532: Check the return value of `i2c_smbus_read_byte_data()` in
     `pca9532_getled()` to avoid integer underflow on read errors
   - 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
   - STMicroelectronics ST1202: Clear unused PWM pattern slots in `pattern_set()` and
     `blink_set()` to prevent unintended output when sharing the global sequencer
   - STMicroelectronics ST1202: Program and cap the channel current according to
     `max_brightness` across brightness, blink, and hardware pattern modes, and scale
     pattern brightness to the 12-bit PWM range
   - STMicroelectronics ST1202: Retain a reference to each child LED firmware node for the
     lifetime of the device
   - STMicroelectronics ST1202: Use only the blocking `brightness_set_blocking()` callback
     to avoid sleeping in atomic context during I2C transfers
   - TI LM3692x: Check the final register write in `lm3692x_leds_enable()` to prevent
     regulator/GPIO leaks and an inconsistent enabled state
   - TI LP8860: Fix a `device_node` reference leak in `lp8860_probe()` using
     `__free(device_node)`
 
 - Cleanups & Refactoring
   - Core: Move `led_trigger_is_hw_controlled()` and `led_trigger_group` from `led-class.c`
     into `led-triggers.c`
   - Core: Replace conditional `set_bit()`/`clear_bit()` patterns with `assign_bit()` and
     `__assign_bit()`
   - Flash Class: Simplify `flash_fault_show()` using `sysfs_emit_at()` and omit the
     trailing space
   - Maintainers: Add Griffin Kroah-Hartman as an LED subsystem reviewer
   - Intel SS4200: Fix a spelling typo in a comment
   - ISSI IS31FL32xx: Convert DT-specific parsing helpers to generic device and fwnode
     property APIs
   - NXP PCA955x: Drop redundant intermediate platform data and allocate the LED array
     using a flexible array member
   - Qualcomm LPG: Convert LED and channel parsing to fwnode APIs and avoid leaving
     `default_trigger` uninitialized
   - Skyworks AAT1290: Use `ARRAY_SIZE()` when allocating `mm_current_scale` to match the
     target pointer type for type-aware allocators
   - STMicroelectronics ST1202: Introduce a `st1202_iled_max()` helper to unify channel
     current ceiling calculations
   - STMicroelectronics ST1202: Standardize variable and macro naming, fix helper spelling,
     and use `u8` consistently instead of `uint8_t`
   - Syscon: Convert from OF-specific property helpers to the generic device property and
     fwnode APIs
 
 - Device Tree Binding Updates
   - Core: Allow PHY RX triggers (`phy[0-9]+rx`) in `linux,default-trigger`
   - Core: Standardize example indentation across multiple LED and backlight binding
     schemas
   - Analog Devices LTC3208: Document the LTC3208 multi-display LED driver
   - LaCie netxbig: Convert LED bindings to DT schema
   - Motorola CPCAP: Convert LED bindings to DT schemaLEDs for v7.4
 
 - New Support & Features
   - Core: Add `led_trigger_notify_hw_control_changed()` to allow drivers to notify the
     core of autonomous hardware control transitions
   - Core: Add the `hw_offloaded()` trigger callback and `trigger_may_offload_to_hw` sysfs
     attribute to expose hardware-offloaded triggers
   - Netdev Trigger: Implement the `hw_offloaded()` callback to report hardware control
     state to the LED core
   - Analog Devices LTC3208: Add support for the LTC3208 7-channel multi-display I2C LED
     driver
   - ChromeOS EC: Implement the `hw_offloaded()` callback for the `chromeos-auto` trigger
   - CZ.NIC Turris Omnia: Implement the `hw_offloaded()` callback and declare `omnia-mcu`
     as a hardware control trigger
   - STMicroelectronics ST1202: Add hardware-accelerated blink support via `blink_set()`
 
 - Improvements & Fixes
   - Class: Always hold the `led_access` mutex in `brightness_show()` to avoid exposing
     transient registration states
   - Class: Deactivate active hardware control triggers when writing to the `brightness`
     sysfs attribute
   - Core: Enforce strict validation in `led_trigger_is_hw_controlled()` and warn on legacy
     fallback paths
   - Flash Class: Initialize the fault variable in `flash_fault_show()` to prevent
     undefined behavior when callbacks perform bitwise ORs
   - Kinetic KTD2692: Pass the driver context directly to `regulator_disable_action()` to
     prevent a NULL pointer dereference during error unwinding
   - Maxim MAX77705: Use `fwnode_for_each_child_node_scoped()` in `max77705_add_led()` to
     prevent child node reference leaks on error paths
   - NXP PCA9532: Check the return value of `i2c_smbus_read_byte_data()` in
     `pca9532_getled()` to avoid integer underflow on read errors
   - 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
   - STMicroelectronics ST1202: Clear unused PWM pattern slots in `pattern_set()` and
     `blink_set()` to prevent unintended output when sharing the global sequencer
   - STMicroelectronics ST1202: Program and cap the channel current according to
     `max_brightness` across brightness, blink, and hardware pattern modes, and scale
     pattern brightness to the 12-bit PWM range
   - STMicroelectronics ST1202: Retain a reference to each child LED firmware node for the
     lifetime of the device
   - STMicroelectronics ST1202: Use only the blocking `brightness_set_blocking()` callback
     to avoid sleeping in atomic context during I2C transfers
   - TI LM3692x: Check the final register write in `lm3692x_leds_enable()` to prevent
     regulator/GPIO leaks and an inconsistent enabled state
   - TI LP8860: Fix a `device_node` reference leak in `lp8860_probe()` using
     `__free(device_node)`
 
 - Cleanups & Refactoring
   - Core: Move `led_trigger_is_hw_controlled()` and `led_trigger_group` from `led-class.c`
     into `led-triggers.c`
   - Core: Replace conditional `set_bit()`/`clear_bit()` patterns with `assign_bit()` and
     `__assign_bit()`
   - Flash Class: Simplify `flash_fault_show()` using `sysfs_emit_at()` and omit the
     trailing space
   - Maintainers: Add Griffin Kroah-Hartman as an LED subsystem reviewer
   - Intel SS4200: Fix a spelling typo in a comment
   - ISSI IS31FL32xx: Convert DT-specific parsing helpers to generic device and fwnode
     property APIs
   - NXP PCA955x: Drop redundant intermediate platform data and allocate the LED array
     using a flexible array member
   - Qualcomm LPG: Convert LED and channel parsing to fwnode APIs and avoid leaving
     `default_trigger` uninitialized
   - Skyworks AAT1290: Use `ARRAY_SIZE()` when allocating `mm_current_scale` to match the
     target pointer type for type-aware allocators
   - STMicroelectronics ST1202: Introduce a `st1202_iled_max()` helper to unify channel
     current ceiling calculations
   - STMicroelectronics ST1202: Standardize variable and macro naming, fix helper spelling,
     and use `u8` consistently instead of `uint8_t`
   - Syscon: Convert from OF-specific property helpers to the generic device property and
     fwnode APIs
 
 - Device Tree Binding Updates
   - Core: Allow PHY RX triggers (`phy[0-9]+rx`) in `linux,default-trigger`
   - Core: Standardize example indentation across multiple LED and backlight binding
     schemas
   - Analog Devices LTC3208: Document the LTC3208 multi-display LED driver
   - LaCie netxbig: Convert LED bindings to DT schema
   - Motorola CPCAP: Convert LED bindings to DT schema
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmrfbg4ACgkQUa+KL4f8
 d2EYqg/+IH3k8Jm0Et7WGte+Ej4cmQJ3/xJNNu+ezGeaZu1WcxT4xXLCGhE89GyC
 4hqlyHM7mSDFBwVoiEqznu/rMQ9gCxQZbDPZkBJFrnAIvWYd2veMAuzC5l3vnvUD
 DuOyN+i++KzoX5F5dNd802CElKmhhB03V+FbU4QUyHT6I6zjUtR/6WXYv6Wyvca4
 gQSYKcyHem7VQaVmk85kvvH9Z8wIvAlzaMHOz7vyfZNarb5K+RXgvCjZfncR/c6P
 FYGh4RRl0zJV/x+8FZ7Ehwck4YjOJf0hySmRQ9DeABV2CFDYFrSEck5UfMPDO+c0
 tpdHHQp66lrLjM1MZns1zP7SnucXt1G6y9b5DmMd/bneMlDa5enBLIFbS106hdIh
 NDu9rKQz/AW1V/fPV+db+AgjL7Sr7oKTNbRuclLj57Zj7TEbtgeUOXh/FKRxPKfu
 mzLPpjdggiuXbTCSNxyW+jKm9a7wthlk2dSsNOWgVea6d3Et/Y1oYOpbOX+s+CqF
 WShv55jkpyqpazorpzdNdv8mdsXRItf13UZy8izmwufve0JrnAlbqTt5TEzs7zgj
 cuDYreg90RNckLWNv/Tdgjxw1aIIWAC3Z3gVVJt0sbdPGS56r6aHu3Rt4Usurxx5
 GHcgIOZcmK5bPk/2gH/chvQj3MOsxrr38Q1Gazv55yVTOnp/39Q=
 =x9D5
 -----END PGP SIGNATURE-----

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

Pull LED updates from Lee Jones:
 "New Support & Features:
   - Core: Add `led_trigger_notify_hw_control_changed()` to allow
     drivers to notify the core of autonomous hardware control
     transitions
   - Core: Add the `hw_offloaded()` trigger callback and
     `trigger_may_offload_to_hw` sysfs attribute to expose
     hardware-offloaded triggers
   - Netdev Trigger: Implement the `hw_offloaded()` callback to report
     hardware control state to the LED core
   - Analog Devices LTC3208: Add support for the LTC3208 7-channel
     multi-display I2C LED driver
   - ChromeOS EC: Implement the `hw_offloaded()` callback for the
     `chromeos-auto` trigger
   - CZ.NIC Turris Omnia: Implement the `hw_offloaded()` callback and
     declare `omnia-mcu` as a hardware control trigger
   - STMicroelectronics ST1202: Add hardware-accelerated blink support
     via `blink_set()`

  Improvements & Fixes:
   - Class: Always hold the `led_access` mutex in `brightness_show()` to
     avoid exposing transient registration states
   - Class: Deactivate active hardware control triggers when writing to
     the `brightness` sysfs attribute
   - Core: Enforce strict validation in `led_trigger_is_hw_controlled()`
     and warn on legacy fallback paths
   - Flash Class: Initialize the fault variable in `flash_fault_show()`
     to prevent undefined behavior when callbacks perform bitwise ORs
   - Kinetic KTD2692: Pass the driver context directly to
     `regulator_disable_action()` to prevent a NULL pointer dereference
     during error unwinding
   - Maxim MAX77705: Use `fwnode_for_each_child_node_scoped()` in
     `max77705_add_led()` to prevent child node reference leaks on error
     paths
   - NXP PCA9532: Check the return value of `i2c_smbus_read_byte_data()`
     in `pca9532_getled()` to avoid integer underflow on read errors
   - 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
   - STMicroelectronics ST1202: Clear unused PWM pattern slots in
     `pattern_set()` and `blink_set()` to prevent unintended output when
     sharing the global sequencer
   - STMicroelectronics ST1202: Program and cap the channel current
     according to `max_brightness` across brightness, blink, and
     hardware pattern modes, and scale pattern brightness to the 12-bit
     PWM range
   - STMicroelectronics ST1202: Retain a reference to each child LED
     firmware node for the lifetime of the device
   - STMicroelectronics ST1202: Use only the blocking
     `brightness_set_blocking()` callback to avoid sleeping in atomic
     context during I2C transfers
   - TI LM3692x: Check the final register write in
     `lm3692x_leds_enable()` to prevent regulator/GPIO leaks and an
     inconsistent enabled state
   - TI LP8860: Fix a `device_node` reference leak in `lp8860_probe()`
     using `__free(device_node)`

  Cleanups & Refactoring:
   - Core: Move `led_trigger_is_hw_controlled()` and `led_trigger_group`
     from `led-class.c` into `led-triggers.c`
   - Core: Replace conditional `set_bit()`/`clear_bit()` patterns with
     `assign_bit()` and `__assign_bit()`
   - Flash Class: Simplify `flash_fault_show()` using `sysfs_emit_at()`
     and omit the trailing space
   - Maintainers: Add Griffin Kroah-Hartman as an LED subsystem reviewer
   - Intel SS4200: Fix a spelling typo in a comment
   - ISSI IS31FL32xx: Convert DT-specific parsing helpers to generic
     device and fwnode property APIs
   - NXP PCA955x: Drop redundant intermediate platform data and allocate
     the LED array using a flexible array member
   - Qualcomm LPG: Convert LED and channel parsing to fwnode APIs and
     avoid leaving `default_trigger` uninitialized
   - Skyworks AAT1290: Use `ARRAY_SIZE()` when allocating
     `mm_current_scale` to match the target pointer type for type-aware
     allocators
   - STMicroelectronics ST1202: Introduce a `st1202_iled_max()` helper
     to unify channel current ceiling calculations
   - STMicroelectronics ST1202: Standardize variable and macro naming,
     fix helper spelling, and use `u8` consistently instead of `uint8_t`
   - Syscon: Convert from OF-specific property helpers to the generic
     device property and fwnode APIs

  Device Tree Binding Updates:
   - Core: Allow PHY RX triggers (`phy[0-9]+rx`) in
     `linux,default-trigger`
   - Core: Standardize example indentation across multiple LED and
     backlight binding schemas
   - Analog Devices LTC3208: Document the LTC3208 multi-display LED
     driver
   - LaCie netxbig: Convert LED bindings to DT schema
   - Motorola CPCAP: Convert LED bindings to DT schemaLEDs for v7.4"

* tag 'leds-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds: (49 commits)
  dt-bindings: leds: lacie,netxbig-leds: Convert to DT schema
  leds: pca955x: Drop platform data and allocate LEDs with the device
  dt-bindings: leds: Use consistent indentation in the example
  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()
  dt-bindings: leds: Allow PHY RX triggers
  MAINTAINERS: Add myself as a LED SUBSYSTEM reviewer
  leds: trigger: Add led_trigger_notify_hw_control_changed() interface
  leds: trigger: Enforce strict checks in led_trigger_is_hw_controlled()
  leds: trigger: netdev: Implement hw_offloaded() callback
  leds: turris-omnia: Implement hw_offloaded() trigger callback and declare hw_control_trigger
  leds: cros_ec: Implement hw_offloaded() trigger callback
  leds: trigger: Add hw_offloaded() callback and provide trigger_may_offload_to_hw attribute
  leds: trigger: Move led_trigger_group to the right place
  leds: class: Remove hardware control trigger when writing brightness
  leds: trigger: Move led_trigger_is_hw_controlled() to the right place
  leds: class: Always protect brightness_show() with led_access
  dt-bindings: leds: leds-cpcap: Convert to DT schema
  ...
2026-10-26 08:55:14 -10:00
..
blink leds: bcm63138: Use %pe to print pinctrl error instead of %ld 2026-07-23 13:26:56 +01:00
flash leds: aat1290: Allocate mm_current_scale with ARRAY_SIZE() 2026-09-23 10:56:23 +01:00
rgb leds: rgb: qcom-lpg: Use fwnode APIs for LED parsing 2026-09-23 16:51:58 +01:00
simatic leds: Rename simple directory to simatic 2025-03-21 09:21:56 +00:00
trigger leds: trigger: Add led_trigger_notify_hw_control_changed() interface 2026-09-24 13:17:32 +01:00
.kunitconfig leds: Provide skeleton KUnit testing for the LEDs framework 2025-05-14 09:25:02 +01:00
Kconfig leds: ltc3208: Add driver for LTC3208 Multidisplay LED Driver 2026-09-23 08:36:19 +01:00
led-class-flash.c leds: flash: Simplify flash_fault_show() 2026-09-22 14:27:49 +01:00
led-class-multicolor.c leds: Introduce the multi_max_intensity sysfs attribute 2026-06-17 11:28:52 +01:00
led-class.c leds: trigger: Add led_trigger_notify_hw_control_changed() interface 2026-09-24 13:17:32 +01:00
led-core.c leds: Use assign_bit() where applicable 2026-09-23 16:17:47 +01:00
led-test.c leds: led-test: Provide tests for the lookup and get infrastructure 2025-05-14 09:25:07 +01:00
led-triggers.c leds: trigger: Add led_trigger_notify_hw_control_changed() interface 2026-09-24 13:17:32 +01:00
leds-88pm860x.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-acer-a500.c leds: Add driver for Acer Iconia Tab A500 2020-09-26 21:56:42 +02:00
leds-adp5520.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-an30259a.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-apu.c leds: apu: Remove duplicate DMI lookup data 2024-04-12 09:47:15 +01:00
leds-ariel.c leds: Explicitly include correct DT includes 2023-07-28 10:02:32 +01:00
leds-as3668.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-aw200xx.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-aw2013.c leds: aw2013: Simplify with scoped for each OF child loop 2024-08-22 14:23:03 +01:00
leds-bcm6328.c leds: bcm6328: Replace divide condition with comparison for shift value 2024-10-31 16:22:23 +00:00
leds-bcm6358.c leds: bcm6358: Simplify with scoped for each OF child loop 2024-08-22 14:23:05 +01:00
leds-bd2606mvv.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-bd2802.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-blinkm.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-cht-wcove.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-clevo-mail.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-cobalt-qube.c
leds-cobalt-raq.c
leds-cpcap.c leds: Explicitly include correct DT includes 2023-07-28 10:02:32 +01:00
leds-cr0014114.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-cros_ec.c leds: cros_ec: Implement hw_offloaded() trigger callback 2026-09-24 13:17:32 +01:00
leds-da903x.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-da9052.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-dac124s085.c leds: dac124s085: Declare SPI command word as __le16 2026-06-17 11:28:59 +01:00
leds-el15203000.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-expresswire.c leds: expresswire: Fix chip state breakage 2026-02-04 09:20:27 +00:00
leds-gpio-register.c leds: leds-gpio-register: Reorganize kerneldoc parameter names 2024-10-10 14:42:33 +01:00
leds-gpio.c LEDs for v7.3 2026-08-27 11:05:51 -07:00
leds-hp6xx.c
leds-ip30.c leds: ip30: Convert to devm_platform_ioremap_resource() 2023-07-28 09:26:21 +01:00
leds-ipaq-micro.c
leds-is31fl32xx.c leds: is31fl32xx: Use fwnode/device property APIs 2026-09-17 15:09:40 +01:00
leds-is31fl319x.c LEDs for v7.3 2026-08-27 11:05:51 -07:00
leds-lm355x.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lm3530.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lm3532.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lm3533.c mfd: lm3533: Convert to use OF bindings 2026-09-10 15:00:41 +01:00
leds-lm3642.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lm3692x.c leds: lm3692x: Fix regulator/gpio leak and wrong enabled state on last write failure 2026-09-22 13:48:42 +01:00
leds-lm3697.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-lm36274.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-locomo.c ARM: pxa: split up mach/hardware.h 2022-04-19 16:27:05 +02:00
leds-lp50xx.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-lp55xx-common.c leds: lp55xx: Simplify with scoped for each OF child loop 2026-02-04 09:20:56 +00:00
leds-lp55xx-common.h leds: lp55xx: Use devm_clk_get_enabled() helpers 2024-08-22 14:48:24 +01:00
leds-lp3944.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp3952.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp5521.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp5523.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp5562.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp5569.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp8501.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lp8788.c
leds-lp8860.c leds: lp8860: Fix device_node leak in lp8860_probe() 2026-09-22 11:50:11 +01:00
leds-lp8864.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-lt3593.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-ltc3208.c leds: ltc3208: Add driver for LTC3208 Multidisplay LED Driver 2026-09-23 08:36:19 +01:00
leds-ltc3220.c leds: ltc3220: Add Support for LTC3220 18 channel LED Driver 2026-07-23 12:17:57 +01:00
leds-max5970.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-max8997.c leds: max8997: Don't error if there is no pdata 2022-10-22 11:55:03 +02:00
leds-max77650.c leds: max77650: Switch to device_for_each_child_node_scoped() 2024-10-09 15:18:29 +01:00
leds-max77705.c leds: max77705: Use fwnode_for_each_child_node_scoped() in max77705_add_led() 2026-09-03 16:31:59 +01:00
leds-mc13783.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-menf21bmc.c
leds-mlxcpld.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-mlxreg.c leds: mlxreg: Use devm_mutex_init() for mutex initialization 2024-04-11 17:35:18 +01:00
leds-mt6323.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-net48xx.c
leds-netxbig.c leds: netxbig: Fix GPIO descriptor leak in error paths 2025-11-13 13:51:12 +00:00
leds-nic78bx.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-ns2.c leds: ns2: Switch to device_for_each_child_node_scoped() 2024-10-09 15:18:37 +01:00
leds-ot200.c
leds-pca955x.c leds: pca955x: Drop platform data and allocate LEDs with the device 2026-10-15 16:52:15 +01:00
leds-pca963x.c leds: Use assign_bit() where applicable 2026-09-23 16:17:47 +01:00
leds-pca995x.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-pca9532.c leds: pca9532: Check i2c_smbus_read_byte_data() return value 2026-09-22 13:30:31 +01:00
leds-pm8058.c leds: Explicitly include correct DT includes 2023-07-28 10:02:32 +01:00
leds-powernv.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-pwm.c leds: pwm: Reorder include files to alphabetic order 2025-11-20 12:20:24 +00:00
leds-qnap-mcu.c leds: qnap-mcu: Add support for the red and green status LEDs 2025-09-02 08:54:46 +01:00
leds-rb532.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-regulator.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-sc27xx-bltc.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-spi-byte.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-ss4200.c leds: ss4200: Fix typo "retrive" in comment 2026-09-16 17:01:22 +01:00
leds-st1202.c leds: st1202: Give the channel current ceiling a single helper 2026-09-22 14:26:04 +01:00
leds-sun50i-a100.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
leds-sunfire.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-syscon.c leds: syscon: Use device property API 2026-09-17 15:01:42 +01:00
leds-tca6507.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-ti-lmu-common.c leds: Explicitly include correct DT includes 2023-07-28 10:02:32 +01:00
leds-tlc591xx.c leds: Use named initializers for arrays of i2c_device_data 2026-06-17 11:29:48 +01:00
leds-tps6105x.c leds: tps6105x: add driver for MFD chip LED mode 2019-12-21 20:10:02 +01:00
leds-turris-omnia.c leds: turris-omnia: Implement hw_offloaded() trigger callback and declare hw_control_trigger 2026-09-24 13:17:32 +01:00
leds-upboard.c leds: upboard: Fix module alias 2025-10-25 12:42:34 +01:00
leds-wm831x-status.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-wm8350.c leds: Switch back to struct platform_driver::remove() 2024-10-15 09:58:10 +01:00
leds-wrap.c
leds.h leds: trigger: Add led_trigger_notify_hw_control_changed() interface 2026-09-24 13:17:32 +01:00
Makefile leds: ltc3208: Add driver for LTC3208 Multidisplay LED Driver 2026-09-23 08:36:19 +01:00
TODO leds: TODO: Add documentation about possible subsystem improvements 2020-09-30 19:15:33 +02:00
uleds.c leds: uleds: Fix potential buffer overread 2026-06-17 11:30:08 +01:00