<font face="Default Sans Serif,Verdana,Arial,Helvetica,sans-serif" size="2"><font face="Verdana, Arial, Helvetica, sans-serif">On October 26, 2021, Alexander A. Filippov wrote:</font><br><br><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">>We have green-red paired LEDs on our hardware. In SysFS they present</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>as a pair of standalone LED. </font><br><font face="Verdana, Arial, Helvetica, sans-serif">>And we switch the different color in different cases using separate</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>LED groups in the phosphor-led-manager that turns corresponding</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>physical LEDs.</font><br><font face="Verdana, Arial, Helvetica, sans-serif">></font><br><font face="Verdana, Arial, Helvetica, sans-serif">>One of those LED groups turning on the such LED to the yellow</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>blinking by setting the blink mode on the both physical LED. But</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>sometimes these physical LEDs turn with a little time lag. This leads</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>to the blinking of the four states: green (short) -> yellow (long)-></font><br><font face="Verdana, Arial, Helvetica, sans-serif">>red (short) -> off(long).</font><br><font face="Verdana, Arial, Helvetica, sans-serif">></font><br><font face="Verdana, Arial, Helvetica, sans-serif">>I believe this occurs when there is a some traffic through D-Bus</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>(e.g. during the host starting) and LED manager can't set the</font><br><font face="Verdana, Arial, Helvetica, sans-serif">>physical LEDs mode synchronously.</font><br><font face="Verdana, Arial, Helvetica, sans-serif">></font><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><br></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;">I thought we were using the kernel blink, which is implemented </div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;">with kernel timers.  Yes we do:</div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><br></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><a href="https://github.com/openbmc/phosphor-led-sysfs/blob/ff26c8ecb828d3afbb213081283342c354dcbc79/physical.cpp#L33" target="_blank" rel="noopener noreferrer">https://github.com/openbmc/phosphor-led-sysfs/blob/ff26c8ecb828d3afbb213081283342c354dcbc79/physical.cpp#L33</a></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><br>>And I see nothing better than trying to combine the<br>>phosphor-ledcontroller instances into one process and probably to<br>>implement the method for setting the properties with one D-Bus call.<br>><br>>Does anybody have suggestions about any better solution?<div><br></div><div>I'd suggest going a level higher by defining the LED to the kernel </div><div>as single instance of the multi-color led class.  While the class is </div><div>described for full RGB controls, I believe a red green led controlled </div><div>by 2 gpios in one bank is well within both the LED and GPIO </div><div>kernel specifications (I don't know if you have chosen gpios</div><div>in the same bank or even if you are using gpios to control it).</div><div><br></div><div><br></div><div><div><font face="Verdana, Arial, Helvetica, sans-serif"><a href="https://github.com/openbmc/linux/blob/dev-5.10/Documentation/leds/leds-class-multicolor.rst" target="_blank" rel="noopener noreferrer">https://github.com/openbmc/linux/blob/dev-5.10/Documentation/leds/leds-class-multicolor.rst</a></font><br></div><div><br></div></div><div><br></div></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;">You may have to enhance the led manager to add the additional</div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;">attributes of this class.</div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><br></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;">milton</div></div></font><BR>
<BR>