RE: Define LEDs with mixed colors

From: hamza.farooq@xxxxxxxxxxx
Date: Wed Sep 01 2021 - 07:24:20 EST




> -----Original Message-----
> From: Pavel Machek <pavel@xxxxxx>
> Sent: Wednesday, September 1, 2021 1:09 PM
> To: Farooq, Muhammad Hamza (DI FA CTR IPC PRC2)
> <hamza.farooq@xxxxxxxxxxx>
> Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>; Linux Kernel Mailing
> List <linux-kernel@xxxxxxxxxxxxxxx>; Linux LED Subsystem <linux-
> leds@xxxxxxxxxxxxxxx>; Platform Driver <platform-driver-
> x86@xxxxxxxxxxxxxxx>; Schild, Henning (T RDA IOT SES-DE)
> <henning.schild@xxxxxxxxxxx>; Kiszka, Jan (T RDA IOT)
> <jan.kiszka@xxxxxxxxxxx>; Haeussler, Gerd (ext) (DI FA CTR IPC PRC2)
> <gerd.haeussler.ext@xxxxxxxxxxx>
> Subject: Re: Define LEDs with mixed colors
>
> Hi!
>
> > I am toying with the idea of writing a multicolor LED GPIO driver. What
> would be the right way to define mixed color LEDs (for leds-gpio), in device
> tree or ACPI?
> > Consider the following:
> >
> > leds {
> > compatible = "gpio-leds";
> > led0 {
> > gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW>;
> > color = <LED_COLOR_ID_RED>;
> > };
> >
> > led1 {
> > gpios = <&mcu_pio 1 GPIO_ACTIVE_HIGH>;
> > color = <LED_COLOR_ID_GREEN>;
> > };
> > led2 {
> > gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW
> > &mcu_pio 1 GPIO_ACTIVE_LOW>;
> > color = <LED_COLOR_ID_AMBER>;
> > };
> > };
> >
> > This probably won't work as "gpios" seem to be single object in gpio-leds
> driver code, but what can I do to achieve something similar?
> > It is important to define this LED in DT/ACPI in order for the user app to see
> it in the /sys/class/led folder, without having to write platform-specific
> driver.
> >
>
> So you have one package with red and green LED, each connected to one
> GPIO?
Right. It is possible to create orange color, and I want to use DT/ACPI to present this info to the userland.

>
> Can you take a look at Documentation/leds/leds-class-multicolor.rst?
Couldn't find a hint there therefore this email thread. I might eventually write a multicolor led-gpio driver so want to know how to handle mixed LED.

>
> Best regards,
> Pavel
> --
> http://www.livejournal.com/~pavelmachek