RE: [PATCH] drivers/leds/leds-lp5521.c: check if reset is successful

From: Srinidhi KASAGAR
Date: Wed Oct 19 2011 - 00:34:05 EST



> -----Original Message-----
> From: Andrew Morton [mailto:akpm00@xxxxxxxxx] On Behalf Of Andrew
> Morton
> Sent: Wednesday, October 19, 2011 2:41 AM
> To: Srinidhi KASAGAR
> Cc: rpurdie@xxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linus.walleij@xxxxxxxxxx
> 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@xxxxxxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/