Skip to contentSkip to conversation

device tree bindings for lp5523 leds on N950?

DISCUSSION Pavel Machek 3 participants 4 messages Aug 14, 2017 – Nov 3, 2017 LED

lore
Share & tools
lore
#0 lore raw

Hi!

I'm (still) trying to debug "N950 not booting" situation. I'm stuck with black screen, so I thought it would be cool to use RGB led for debugging...

Unfortunately, I don't see required dts bindings in the mainline.

Does anyone have that working?

Thanks,
Pavel

Signature · 9 lines
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170814/a5fdea4d/attachment.sig>
#1 lore raw

Hi Pavel,

Quoted 7 lines · Pavel Machek

I'm (still) trying to debug "N950 not booting" situation. I'm stuck with black screen, so I thought it would be cool to use RGB led for debugging...

Unfortunately, I don't see required dts bindings in the mainline.

Does anyone have that working?

I have some N950 DTS patches lying around, I think RGB led was one of them. I'm currently in Canda for a company event without my N950, but I should be able to send something tested before the weekend.

-- Sebastian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170815/22c6d482/attachment.sig>

#2 lore raw

Hi,

Quoted 7 lines · Sebastian Reichel

Hi Pavel,

Quoted 4 lines · Pavel Machek

I'm (still) trying to debug "N950 not booting" situation. I'm stuck with black screen, so I thought it would be cool to use RGB led for debugging...

Quoted 7 lines
Quoted 3 lines

Unfortunately, I don't see required dts bindings in the mainline.

Does anyone have that working?

I have some N950 DTS patches lying around, I think RGB led was one of them. I'm currently in Canda for a company event without my N950, but I should be able to send something tested before the weekend.

Below is a DTS snippet for N950, that has been tested by me on top of 4.13-rc6. The left and right keyboard LEDs are also debug LEDs for cpu idle modes, so they will be lit without being enabled in lp5523. The status LED of N950 is not RGB, but just white. Also you need this to get the driver loading. Otherwise detection after reset fails even after quite increases waiting times. Looks like the lp5523 reset (which is not properly Ack'd by the device) breaks the omap-i2c state horribly.

-- Sebastian

drivers/leds/leds-lp55xx-common.c +1 -1
@@ -413,7 +413,7 @@ int lp55xx_init_device(struct lp55xx_chip *chip)
                usleep_range(1000, 2000); /* 500us abs min. */
        }
 
-       lp55xx_reset_device(chip);
+       //lp55xx_reset_device(chip); // FIXME: breaks omap-i2c
 
        /*
         * Exact value is not available. 10 - 20ms

----------

&i2c2 {
       rgb-led at 32 {
               compatible = "national,lp5523";
               reg = <0x32>;

               enable-gpio = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */
               clock-mode = /bits/ 8 <2>; /* external */

               chan0 {
                       chan-name = "lp5523:kb5"; /* Keyboard ooooox */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan1 {
                       chan-name = "lp5523:kb4"; /* Keyboard ooooxo */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan2 {
                       chan-name = "lp5523:kb3"; /* Keyboard oooxoo */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan3 {
                       chan-name = "lp5523:kb2"; /* Keyboard ooxooo */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan4 {
                       chan-name = "lp5523:kb1"; /* Keyboard oxoooo */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan5 {
                       chan-name = "lp5523:kb0"; /* Keyboard xooooo */
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };

               chan6 {
                       led-cur = /bits/ 8 <0>;
                       max-cur = /bits/ 8 <0>;
               };

               chan7 {
                       led-cur = /bits/ 8 <0>;
                       max-cur = /bits/ 8 <0>;
               };

               chan8 {
                       chan-name = "lp5523:status-led";
                       led-cur = /bits/ 8 <50>;
                       max-cur = /bits/ 8 <130>;
               };
       };
};

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170822/85d089d8/attachment.sig>

#3 lore raw

Hi!

Quoted 16 lines · Sebastian Reichel
Quoted 7 lines

Hi Pavel,

Quoted 4 lines · Pavel Machek

I'm (still) trying to debug "N950 not booting" situation. I'm stuck with black screen, so I thought it would be cool to use RGB led for debugging...

Quoted 7 lines
Quoted 3 lines

Unfortunately, I don't see required dts bindings in the mainline.

Does anyone have that working?

I have some N950 DTS patches lying around, I think RGB led was one of them. I'm currently in Canda for a company event without my N950, but I should be able to send something tested before the weekend.

Quoted 9 lines

Below is a DTS snippet for N950, that has been tested by me on top of 4.13-rc6. The left and right keyboard LEDs are also debug LEDs for cpu idle modes, so they will be lit without being enabled in lp5523. The status LED of N950 is not RGB, but just white. Also you need this to get the driver loading. Otherwise detection after reset fails even after quite increases waiting times. Looks like the lp5523 reset (which is not properly Ack'd by the device) breaks the omap-i2c state horribly.

Thanks a lot, LED now works. It took me a while, but I now have n950 usable with nfsroot. (For a while, anyway.)

N9 is usable too. Hardware is similar enough than it could be possible to debug without serial cable.

Best regards,
Pavel

Signature · 9 lines
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171103/76e0020c/attachment.sig>