Messages in this thread | | | From | Srinidhi KASAGAR <> | Date | Wed, 19 Oct 2011 06:33:18 +0200 | Subject | RE: [PATCH] drivers/leds/leds-lp5521.c: check if reset is successful |
| |
> -----Original Message----- > From: Andrew Morton [mailto:akpm00@gmail.com] On Behalf Of Andrew > Morton > Sent: Wednesday, October 19, 2011 2:41 AM > To: Srinidhi KASAGAR > Cc: rpurdie@rpsys.net; linux-kernel@vger.kernel.org; > linus.walleij@linaro.org > Subject: Re: [PATCH] drivers/leds/leds-lp5521.c: check if reset is > successful > > On Mon, 10 Oct 2011 17:00:02 +0530 > Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com> wrote: > > > make sure that the reset is successful by issuing a dummy > > read to R channel current register and check its default > > value. On some platforms, without this dummy read, any > > further access to {R/G/B}_EXEC will not have any impact. > > > > ... > > > > @@ -681,6 +685,21 @@ static int __devinit lp5521_probe(struct > i2c_client *client, > > * Exact value is not available. 10 - 20ms > > * appears to be enough for reset. > > */ > > + > > + /* > > + * Make sure that the chip is reset by reading back > > + * r channel current reg. This is a dummy read, otherwise > > + * in some platforms, access to R G B channel program > > + * execution mode to 'Run' in LP5521_REG_ENABLE register > > + * will not have any affect - strange! > > + */ > > + lp5521_read(client, LP5521_REG_R_CURRENT, &buf); > > + if (buf != LP5521_REG_R_CURR_DEFAULT) { > > + dev_err(&client->dev, "error in reseting chip\n"); > > + goto fail2; > > + } > > + usleep_range(10000, 20000); > > Sorry, but I found that comment very hard to follow. > > Is this version accurate and complete? > > /* > * Make sure that the chip is reset by reading back the r channel > * current reg. This dummy read is required on some platforms - > * otherwise further access to the R G B channels in the > * LP5521_REG_ENABLE register will not have any effect - strange! > */
That should be ok.
Thanks Andrew.
Srinidhi
| |