All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Sicelo <absicsz@gmail.com>
Cc: linux-leds@vger.kernel.org
Subject: Re: lp5523/lp5xx-common : Keyboard and RGB LEDs Not Working on Nokia N900
Date: Wed, 4 Aug 2021 17:59:39 +0200	[thread overview]
Message-ID: <20210804155939.GC25072@amd> (raw)
In-Reply-To: <YIV1uaHQwjq0CoFy@tp440p.steeds.sam>

[-- Attachment #1: Type: text/plain, Size: 3271 bytes --]

Hi!

> > For some time now, the keyboard LEDs on Nokia N900 have not been
> > working. In dmesg is the error:
> >   
> >     lp5523x probe of 2-0032 failed with error -22
> > 
> > and consequently they do not get populated under /sys/class/leds.
> > 
> > I have finally had time to look into this, and found that the N900 dts
> > falls short of the current lp55xx binding specs. I have updated it and
> > will be submitting a separate patch. However, this was not enough to
> 
> I have since realized that I should have included the adjusted dts in
> the initial email. Please find it attached in this follow-up email and
> sincere apologies for this ommission.
> 
> > make them work, and a new error appeared:
> > 
> >     [11363.247375] lp5523x 2-0032: GPIO lookup for consumer enable
> >     [11363.254394] lp5523x 2-0032: using device tree for GPIO lookup
> >     [11363.254455] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/ocp@68000000/i2c@48072000/lp5523@32[0]'
> >     [11363.254547] of_get_named_gpiod_flags: parsed 'enable-gpio' property of node '/ocp@68000000/i2c@48072000/lp5523@32[0]' - status (0)
> >     [11363.254638] gpio gpiochip1: Persistence not supported for GPIO 9
> >     [11363.254669] gpio-41 (enable): no flags found for enable
> >     [11363.295959] lp5523x 2-0032: device detection err: -121
> >     [11363.303710] lp5523x: probe of 2-0032 failed with error -121
> > 
> > 
> > This is because the chip does not get enabled even though dts contains:
> > 
> >     enable-gpios = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */
> > 
> > which is correct for this board.
> > 
> > 
> > I came up with this patch (against 5.12-rc6), which makes it work again.
> > 
> > 
> > diff --git a/drivers/leds/leds-lp55xx-common.c b/drivers/leds/leds-lp55xx-common.c
> > index 81de1346bf5d..9af84fc335b3 100644
> > --- a/drivers/leds/leds-lp55xx-common.c
> > +++ b/drivers/leds/leds-lp55xx-common.c
> > @@ -694,7 +694,7 @@ struct lp55xx_platform_data *lp55xx_of_populate_pdata(struct device *dev,
> >         of_property_read_u8(np, "clock-mode", &pdata->clock_mode);
> > 
> >         pdata->enable_gpiod = devm_gpiod_get_optional(dev, "enable",
> > -                                                     GPIOD_ASIS);
> > +                                                     GPIOD_OUT_HIGH);
> >         if (IS_ERR(pdata->enable_gpiod))
> >                 return ERR_CAST(pdata->enable_gpiod);

This does not look obviously bad. If this is sent as patch I can
simply apply, I'll likely do it.

> > However, I am not sure if this is a proper way to fix the issue, or if
> > it is a dirty hack. It looks like all the chips handled by this driver
> > (lp5521, lp5523, lp5562, and lp8501) get enabled by pulling their ENable
> > pin high, so I suppose it is fine, but would like to get some feedback
> > before submitting a cleaned up patch. It is also possible that this
> > should be defined via dts elsewhere, although at this point I am not
> > sure how.
> > 
> > Looking forward to your help.

But I can't take dts changes; these should likely be in same series
and cc-ed to relevant maintainers.

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

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

      reply	other threads:[~2021-08-04 15:59 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-13 17:02 lp5523/lp5xx-common : Keyboard and RGB LEDs Not Working on Nokia N900 Sicelo
2021-04-25 13:59 ` Sicelo
2021-08-04 15:59   ` Pavel Machek [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210804155939.GC25072@amd \
    --to=pavel@ucw.cz \
    --cc=absicsz@gmail.com \
    --cc=linux-leds@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.