0cb8eb30d4
Some LEDs may have their brightness level changed autonomously (outside of kernel control) by hardware / firmware. This commit adds support for an optional brightness_hw_changed attribute to signal such changes to userspace (if a driver can detect them): What: /sys/class/leds/<led>/brightness_hw_changed Date: January 2017 KernelVersion: 4.11 Description: Last hardware set brightness level for this LED. Some LEDs may be changed autonomously by hardware/firmware. Only LEDs where this happens and the driver can detect this, will have this file. This file supports poll() to detect when the hardware changes the brightness. Reading this file will return the last brightness level set by the hardware, this may be different from the current brightness. Drivers which want to support this, simply add LED_BRIGHT_HW_CHANGED to their flags field and call led_classdev_notify_brightness_hw_changed() with the hardware set brightness when they detect a hardware / firmware triggered brightness change. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
64 lines
2.2 KiB
Plaintext
64 lines
2.2 KiB
Plaintext
What: /sys/class/leds/<led>/brightness
|
|
Date: March 2006
|
|
KernelVersion: 2.6.17
|
|
Contact: Richard Purdie <rpurdie@rpsys.net>
|
|
Description:
|
|
Set the brightness of the LED. Most LEDs don't
|
|
have hardware brightness support, so will just be turned on for
|
|
non-zero brightness settings. The value is between 0 and
|
|
/sys/class/leds/<led>/max_brightness.
|
|
|
|
Writing 0 to this file clears active trigger.
|
|
|
|
Writing non-zero to this file while trigger is active changes the
|
|
top brightness trigger is going to use.
|
|
|
|
What: /sys/class/leds/<led>/max_brightness
|
|
Date: March 2006
|
|
KernelVersion: 2.6.17
|
|
Contact: Richard Purdie <rpurdie@rpsys.net>
|
|
Description:
|
|
Maximum brightness level for this LED, default is 255 (LED_FULL).
|
|
|
|
If the LED does not support different brightness levels, this
|
|
should be 1.
|
|
|
|
What: /sys/class/leds/<led>/brightness_hw_changed
|
|
Date: January 2017
|
|
KernelVersion: 4.11
|
|
Description:
|
|
Last hardware set brightness level for this LED. Some LEDs
|
|
may be changed autonomously by hardware/firmware. Only LEDs
|
|
where this happens and the driver can detect this, will have
|
|
this file.
|
|
|
|
This file supports poll() to detect when the hardware changes
|
|
the brightness.
|
|
|
|
Reading this file will return the last brightness level set
|
|
by the hardware, this may be different from the current
|
|
brightness. Reading this file when no hw brightness change
|
|
event has happened will return an ENODATA error.
|
|
|
|
What: /sys/class/leds/<led>/trigger
|
|
Date: March 2006
|
|
KernelVersion: 2.6.17
|
|
Contact: Richard Purdie <rpurdie@rpsys.net>
|
|
Description:
|
|
Set the trigger for this LED. A trigger is a kernel based source
|
|
of LED events.
|
|
You can change triggers in a similar manner to the way an IO
|
|
scheduler is chosen. Trigger specific parameters can appear in
|
|
/sys/class/leds/<led> once a given trigger is selected. For
|
|
their documentation see sysfs-class-led-trigger-*.
|
|
|
|
What: /sys/class/leds/<led>/inverted
|
|
Date: January 2011
|
|
KernelVersion: 2.6.38
|
|
Contact: Richard Purdie <rpurdie@rpsys.net>
|
|
Description:
|
|
Invert the LED on/off state. This parameter is specific to
|
|
gpio and backlight triggers. In case of the backlight trigger,
|
|
it is useful when driving a LED which is intended to indicate
|
|
a device in a standby like state.
|