[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210315134037.7f8529e7@md1za8fc.ad001.siemens.net>
Date: Mon, 15 Mar 2021 13:40:50 +0100
From: Henning Schild <henning.schild@...mens.com>
To: Pavel Machek <pavel@....cz>
Cc: Andy Shevchenko <andy.shevchenko@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux LED Subsystem <linux-leds@...r.kernel.org>,
Platform Driver <platform-driver-x86@...r.kernel.org>,
<linux-watchdog@...r.kernel.org>,
Srikanth Krishnakar <skrishnakar@...il.com>,
Jan Kiszka <jan.kiszka@...mens.com>,
Gerd Haeussler <gerd.haeussler.ext@...mens.com>,
Guenter Roeck <linux@...ck-us.net>,
Wim Van Sebroeck <wim@...ux-watchdog.org>,
Mark Gross <mgross@...ux.intel.com>,
Hans de Goede <hdegoede@...hat.com>
Subject: Re: [PATCH v2 2/4] leds: simatic-ipc-leds: add new driver for
Siemens Industial PCs
Am Mon, 15 Mar 2021 12:19:15 +0100
schrieb Pavel Machek <pavel@....cz>:
> > > + struct led_classdev cdev;
> > > +};
> > > +
> > > +static struct simatic_ipc_led simatic_ipc_leds_io[] = {
> > > + {1 << 15, "simatic-ipc:green:" LED_FUNCTION_STATUS "-1" },
> > > + {1 << 7, "simatic-ipc:yellow:" LED_FUNCTION_STATUS "-1"
> > > },
> > > + {1 << 14, "simatic-ipc:red:" LED_FUNCTION_STATUS "-2" },
> > > + {1 << 6, "simatic-ipc:yellow:" LED_FUNCTION_STATUS "-2"
> > > },
> > > + {1 << 13, "simatic-ipc:red:" LED_FUNCTION_STATUS "-3" },
> > > + {1 << 5, "simatic-ipc:yellow:" LED_FUNCTION_STATUS "-3"
> > > },
> >
> > Can you use BIT() macro here? And can it be sorted by the bit
> > order?
>
> There's nothing wrong with << and this order is fine.
>
> But I still don't like the naming. simantic-ipc: prefix is
> useless. Having 6 status leds is not good, either.
You asked about a picture before, so here is one example
https://support.industry.siemens.com/cs/document/67235073/simatic-ipc427d?dti=0&pnid=16756&lc=en-WW
page 19 shows how the box looks like
page 135 it what the implementation is based on
Externally human visible are 3 "lights", which can be off, red, green,
yellow. Internally every single "light" has two leds and yellow is a
mix when red and green are on.
Unfortunately hw does not allow all 4 states for all 3 lights. Some
boxes implement "yellow" mixing in hw.
That is why the same name is used with two colors.
maybe those LEDs qualify for multi-color?
"status" was the best name i found in the dt-bindings header
i guess i can be creative with the names and take ie "status", "fault",
and "indicator"
i will also drop that prefix "simatic-ipc" that was inspired by
"tpacpi", or should it be "platform:<color>:<name>"?
regards,
Henning
> > > + struct simatic_ipc_led *led =
> > > + container_of(led_cd, struct simatic_ipc_led,
> > > cdev);
> >
> > One line?
>
> 80 columns. It is fine as it is.
>
> Best regards,
>
> Pavel
Powered by blists - more mailing lists