Re: [PATCH v5 1/9] leds: multicolor: Add sysfs interface definition

From: Jacek Anaszewski
Date: Sun Sep 15 2019 - 09:58:08 EST


Hi Dan,

On 9/11/19 8:01 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 | 73 +++++++++++++++++++
> 1 file changed, 73 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..4ea54c2ad4c8
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-class-led-multicolor
> @@ -0,0 +1,73 @@
> +What: /sys/class/leds/<led>/brightness
> +Date: Sept 2019
> +KernelVersion: 5.5
> +Contact: Dan Murphy <dmurphy@xxxxxx>
> +Description: read/write
> + The multicolor class will redirect the device drivers call back
> + function for brightness control to the multicolor class
> + brightness control function.
> +
> + Writing to this file will update all LEDs within the group to a
> + calculated percentage of what each color LED in the group is set
> + to. The percentage is calculated via the equation below:
> +
> + led_brightness = requested_value * led_color_intensity/led_color_max_intensity
> +
> + For additional details please refer to
> + Documentation/leds/leds-class-multicolor.rst.
> +
> + The value of the color is from 0 to
> + /sys/class/leds/<led>/max_brightness.
> +
> +What: /sys/class/leds/<led>/colors/color_mix
> +Date: Sept 2019
> +KernelVersion: 5.5
> +Contact: Dan Murphy <dmurphy@xxxxxx>
> +Description: read/write
> + The values written to this file should contain the intensity
> + values of each multicolor LED within the colors directory. The
> + index of given color is reported by the color_id file present in
> + colors/<color> directory. The index determines the position in
> + the sequence of intensities on which the related intensity
> + should be passed to this file.
> +
> + For additional details please refer to
> + Documentation/leds/leds-class-multicolor.rst.

As already mentioned in the reply to Pavel - let's avoid the
introduction of another sysfs file with multiple values.

Color intensity files will only cache the value and actual
write will be performed upon writing brightness file.

> +
> +What: /sys/class/leds/<led>/colors/<led_color>/color_id
> +Date: Sept 2019
> +KernelVersion: 5.5
> +Contact: Dan Murphy <dmurphy@xxxxxx>
> +Description: read only
> + This file when read will return the index of the color in the
> + color_mix.
> +
> + For additional details please refer to
> + Documentation/leds/leds-class-multicolor.rst.
> +
> +What: /sys/class/leds/<led>/colors/<led_color>/intensity
> +Date: Sept 2019
> +KernelVersion: 5.5
> +Contact: Dan Murphy <dmurphy@xxxxxx>
> +Description: read/write
> + The led_color directory is dynamically created based on the
> + colors defined by the registrar of the class.
> + The led_color can be but not limited to red, green, blue,
> + white, amber, yellow and violet. There is one directory per color
> + presented. The brightness file is created under each
> + led_color directory and controls the individual LED color
> + setting.
> +
> + The value of the color is from 0 to
> + /sys/class/leds/<led>/colors/<led_color>/max_intensity.
> +
> +What: /sys/class/leds/<led>/colors/<led_color>/max_intensity
> +Date: Sept 2019
> +KernelVersion: 5.5
> +Contact: Dan Murphy <dmurphy@xxxxxx>
> +Description: read only
> + Maximum intensity level for the LED color, default is
> + 255 (LED_FULL).
> +
> + If the LED does not support different intensity levels, this
> + should be 1.
>

--
Best regards,
Jacek Anaszewski