Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9256d5a3 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull LED updates from Jacek Anaszewski:
 "LED core improvements:
   - Fix misleading comment after workqueue removal from drivers
   - Avoid error message when a USB LED device is unplugged
   - Add helpers for calling brightness_set(_blocking)

  LED triggers:
   - Simplify led_trigger_store by using sysfs_streq()

  LED class drivers improvements:
   - Improve wording and formatting in a comment: lp3944
   - Fix return value check in create_gpio_led(): leds-gpio
   - Use GPIOF_OUT_INIT_LOW instead of hardcoded zero: leds-gpio
   - Use devm_led_classdev_register(): leds-lm3533, leds-lm3533,
     leds-lp8788, leds-wm831x-status, leds-s3c24xx, leds-s3c24xx,
     leds-max8997.

  New LED class driver:
   - Add driver for the ISSI IS31FL32xx family of LED controllers.

  Device Tree documentation:
   - of: Add vendor prefixes for Integrated Silicon Solutions Inc.
     (issi) and Si-En Technology (si-en).
   - DT: Add common bindings for Si-En Technology SN3216/18 and
     IS31FL32xx family of LED controllers, since they seem to be the
     same hardware, just rebranded"

* tag 'leds_for_4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
  leds: triggers: simplify led_trigger_store
  leds: max8997: Use devm_led_classdev_register
  leds: da903x: Use devm_led_classdev_register
  leds: s3c24xx: Use devm_led_classdev_register
  leds: wm831x-status: Use devm_led_classdev_register
  leds: lp8788: Use devm_led_classdev_register
  leds: 88pm860x: Use devm_led_classdev_register
  leds: Add SN3218 and SN3216 support to the IS31FL32XX driver
  of: Add vendor prefix for Si-En Technology
  leds: Add driver for the ISSI IS31FL32xx family of LED controllers
  DT: leds: Add binding for the ISSI IS31FL32xx family of LED controllers
  DT: Add vendor prefix for Integrated Silicon Solutions Inc.
  leds: lm3533: Use devm_led_classdev_register
  leds: gpio: Use GPIOF_OUT_INIT_LOW instead of hardcoded zero
  leds: core: add helpers for calling brightness_set(_blocking)
  leds: leds-gpio: Fix return value check in create_gpio_led()
  leds: lp3944: improve wording and formatting in a comment
  leds: core: avoid error message when a USB LED device is unplugged
  leds: core: fix misleading comment after workqueue removal from drivers
parents 13f6f62f 7296c33e
Loading
Loading
Loading
Loading
+52 −0
Original line number Diff line number Diff line
Binding for ISSI IS31FL32xx and Si-En SN32xx LED Drivers

The IS31FL32xx/SN32xx family of LED drivers are I2C devices with multiple
constant-current channels, each with independent 256-level PWM control.
Each LED is represented as a sub-node of the device.

Required properties:
- compatible: one of
	issi,is31fl3236
	issi,is31fl3235
	issi,is31fl3218
	issi,is31fl3216
	si-en,sn3218
	si-en,sn3216
- reg: I2C slave address
- address-cells : must be 1
- size-cells : must be 0

LED sub-node properties:
- reg : LED channel number (1..N)
- label :  (optional)
  see Documentation/devicetree/bindings/leds/common.txt
- linux,default-trigger :  (optional)
  see Documentation/devicetree/bindings/leds/common.txt


Example:

is31fl3236: led-controller@3c {
	compatible = "issi,is31fl3236";
	reg = <0x3c>;
	#address-cells = <1>;
	#size-cells = <0>;

	led@1 {
		reg = <1>;
		label = "EB:blue:usr0";
	};
	led@2 {
		reg = <2>;
		label = "EB:blue:usr1";
	};
	...
	led@36 {
		reg = <36>;
		label = "EB:blue:usr35";
	};
};

For more product information please see the links below:
http://www.issi.com/US/product-analog-fxled-driver.shtml
http://www.si-en.com/product.asp?parentid=890
+2 −0
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ intercontrol Inter Control Group
invensense	InvenSense Inc.
isee	ISEE 2007 S.L.
isil	Intersil
issi	Integrated Silicon Solutions Inc.
jedec	JEDEC Solid State Technology Association
karo	Ka-Ro electronics GmbH
keymile	Keymile GmbH
@@ -204,6 +205,7 @@ seagate Seagate Technology PLC
semtech	Semtech Corporation
sgx	SGX Sensortech
sharp	Sharp Corporation
si-en	Si-En Technology Ltd.
sigma	Sigma Designs, Inc.
sil	Silicon Image
silabs	Silicon Laboratories
+8 −0
Original line number Diff line number Diff line
@@ -568,6 +568,14 @@ config LEDS_SEAD3
	  This driver can also be built as a module. If so the module
	  will be called leds-sead3.

config LEDS_IS31FL32XX
	tristate "LED support for ISSI IS31FL32XX I2C LED controller family"
	depends on LEDS_CLASS && I2C && OF
	help
	  Say Y here to include support for ISSI IS31FL32XX and Si-En SN32xx
	  LED controllers. They are I2C devices with multiple constant-current
	  channels, each with independent 256-level PWM control.

comment "LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)"

config LEDS_BLINKM
+1 −0
Original line number Diff line number Diff line
@@ -66,6 +66,7 @@ obj-$(CONFIG_LEDS_MENF21BMC) += leds-menf21bmc.o
obj-$(CONFIG_LEDS_KTD2692)		+= leds-ktd2692.o
obj-$(CONFIG_LEDS_POWERNV)		+= leds-powernv.o
obj-$(CONFIG_LEDS_SEAD3)		+= leds-sead3.o
obj-$(CONFIG_LEDS_IS31FL32XX)		+= leds-is31fl32xx.o

# LED SPI Drivers
obj-$(CONFIG_LEDS_DAC124S085)		+= leds-dac124s085.o
+2 −0
Original line number Diff line number Diff line
@@ -245,6 +245,8 @@ void led_classdev_unregister(struct led_classdev *led_cdev)
	up_write(&led_cdev->trigger_lock);
#endif

	led_cdev->flags |= LED_UNREGISTERING;

	/* Stop blinking */
	led_stop_software_blink(led_cdev);

Loading