Re: [RFC PATCH] leds: multicolor: Add sysfs interface definition

From: Jacek Anaszewski
Date: Wed Jan 30 2019 - 14:37:52 EST


Hi Dan,

Thank you for the RFC.

One vital thing is missing - documentation of brightness file must
be updated to define its semantics for LED multi color class.

Either we need brightness-model file returning only "onoff" option
available, or, for time being, fix the max_brightness for LED multi
color class to 1 (which will map to max intensity level for each color).

Best regards,
Jacek Anaszewski

On 1/30/19 7:30 PM, Dan Murphy wrote:
Add a documentation of LED Multicolor LED class specific
sysfs attributes.

Signed-off-by: Dan Murphy <dmurphy@xxxxxx>
---
.../ABI/testing/sysfs-class-led-multicolor | 38 +++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-class-led-multicolor

diff --git a/Documentation/ABI/testing/sysfs-class-led-multicolor b/Documentation/ABI/testing/sysfs-class-led-multicolor
new file mode 100644
index 000000000000..19f8da9b150e
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-led-multicolor
@@ -0,0 +1,38 @@
+What: /sys/class/leds/<led>/color/sync_enable
+Date: January 2019
+KernelVersion: 5.0
+Contact: Dan Murphy <dmurphy@xxxxxx>
+Description: read/write
+ Writing a 1 to this file will enable the sychronization of all
+ the defined color LEDs within the LED node. Writing a 0 to
+ this file will disable syncing.
+
+What: /sys/class/leds/<led>/color/sync
+Date: January 2019
+KernelVersion: 5.0
+Contact: Dan Murphy <dmurphy@xxxxxx>
+Description: write only
+ Writing a 1 to this file while sync_enable is set to 1 will
+ synchronize all defined LEDs within the LED node. All LEDs
+ defined will be configured based on the brightness that has
+ been requested.
+
+ If sync_enable is set to 0 then writing a 1 to sync has no
+ affect on the LEDs.
+
+What: /sys/class/leds/<led>/color/<led color>
+Date: January 2019
+KernelVersion: 5.0
+Contact: Dan Murphy <dmurphy@xxxxxx>
+Description: read/write
+ These files are dynamically created based on the colors defined
+ by the registrar of the class.
+ The led color(s) can be but not limited to red, green, blue,
+ white, amber and violet. If sync is enabled then writing the
+ brightness value of the LED is deferred until a 1 is
+ written to /sys/class/leds/<led>/color/sync. If syncing is
+ disabled then the LED brightness value will be written
+ immediately to the LED driver.
+
+ The value of the color is from 0 to
+ /sys/class/leds/<led>/max_brightness.