Re: [PATCH v17 RESEND 3/3] docs: leds: Add MT6370 RGB LED pattern document
From: Lee Jones
Date: Sun Mar 05 2023 - 05:18:38 EST
On Thu, 23 Feb 2023, ChiaEn Wu wrote:
> From: ChiYuan Huang <cy_huang@xxxxxxxxxxx>
>
> Document the MT6370 RGB LED pattern trigger.
>
> This simply describe how the pattern works, each timing period, and the
> pattern diagram for MT6370 RGB LED.
>
> Signed-off-by: ChiYuan Huang <cy_huang@xxxxxxxxxxx>
> Signed-off-by: ChiaEn Wu <chiaen_wu@xxxxxxxxxxx>
> ---
> Documentation/leds/leds-mt6370-rgb.rst | 64 ++++++++++++++++++++++++++++++++++
> 1 file changed, 64 insertions(+)
> create mode 100644 Documentation/leds/leds-mt6370-rgb.rst
>
> diff --git a/Documentation/leds/leds-mt6370-rgb.rst b/Documentation/leds/leds-mt6370-rgb.rst
> new file mode 100644
> index 00000000..d1b2e4f
> --- /dev/null
> +++ b/Documentation/leds/leds-mt6370-rgb.rst
> @@ -0,0 +1,64 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +=========================================
> +Kernel driver for Mediatek MT6370 RGB LED
Are you describing the device or the kernel driver?
> +=========================================
> +
> +Description
> +-----------
> +
> +The MT6370 integrates a four-channel RGB LED driver, designed to provide a
> +variety of lighting effect for mobile device applications. The RGB LED driver
"devices"
> +includes a smart LED string controller and it can drive 3 channels of LEDs with
> +a sink current up to 24mA and a CHG_VIN power good indicator LED with sink
> +current up to 6mA. It provides three operation modes for RGB LEDs:
> +PWM Dimming mode, breath pattern mode, and constant current mode. The device
> +can increase or decrease the brightness of the RGB LED via I2C interface.
"an I2C interface"
> +The breath pattern for a channel can be programmed using the "pattern" trigger,
> +using the hw_pattern attribute.
> +
> +/sys/class/leds/<led>/hw_pattern
> +--------------------------------
> +
> +Specify a hardware breath pattern for a MT6370 RGB LED.
> +
> +The breath pattern is a series of timing pairs, with the hold-time expressed in
> +milliseconds. And the brightness is controlled by
> +'/sys/class/leds/<led>/brightness'. The pattern doesn't include the brightness
> +setting. Hardware pattern only controls the timing for each pattern stage
> +depending on the current brightness setting.
> +
> +Pattern diagram::
> +
> + "0 Tr1 0 Tr2 0 Tf1 0 Tf2 0 Ton 0 Toff" --> '0' for dummy brightness code
> +
> + ^
> + | ============
> + | / \ /
> +Icurr | / \ /
> + | / \ /
> + | / \ / .....repeat
> + | / \ /
> + | --- --- ---
> + |--- --- ---
> + +----------------------------------============------------> Time
> + < Tr1><Tr2>< Ton ><Tf1><Tf2 >< Toff >< Tr1><Tr2>
> +
> +Timing description::
> +
> +Tr1: First rising time for duty 0 to 30%.
> +Tr2: Second rising time for duty 31% to 100%.
> +Ton: On time for duty 100%.
> +Tf1: First falling time for duty 100% to 31%.
> +Tf2: Second falling time for duty 30% to 0%.
> +Toff: Off time for duty 0%.
> +
> +Tr1/Tr2/Tf1/Tf2/Ton: 125ms to 3125ms, 200ms per step.
> +Toff: 250ms to 6250ms, 400ms per step.
> +
> +Pattern example::
> +
> + "0 125 0 125 0 125 0 125 0 625 0 1050"
> +
> +This Will configure Tr1/Tr2/Tf1/Tf2 to 125m, Ton to 625ms, and Toff to 1050ms.
> --
> 2.7.4
>
--
Lee Jones [李琼斯]