lkml.org 
[lkml]   [2012]   [Aug]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH RFT] leds: lp8788: Fix updating scale configuration bits
On Wed, Aug 1, 2012 at 8:40 PM, Axel Lin <axel.lin@gmail.com> wrote:
> We need to do left shift (cfg->num + LP8788_ISINK_SCALE_OFFSET) bits for
> updating scale configuration.
>
> Signed-off-by: Axel Lin <axel.lin@gmail.com>
> ---
> Hi Milo,
> Current code of updating scale configuration bits looks wrong to me
> because the mask does not match the val.
> I don't have this hardware, can you test this patch?
>

Milo, I think this patch from Axel is reasonable. could you please
take a look at this?

-Bryan

> Thanks,
> Axel
> drivers/leds/leds-lp8788.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/leds/leds-lp8788.c b/drivers/leds/leds-lp8788.c
> index 53bd136..0ade6eb 100644
> --- a/drivers/leds/leds-lp8788.c
> +++ b/drivers/leds/leds-lp8788.c
> @@ -63,7 +63,7 @@ static int lp8788_led_init_device(struct lp8788_led *led,
> /* scale configuration */
> addr = LP8788_ISINK_CTRL;
> mask = 1 << (cfg->num + LP8788_ISINK_SCALE_OFFSET);
> - val = cfg->scale << cfg->num;
> + val = cfg->scale << (cfg->num + LP8788_ISINK_SCALE_OFFSET);
> ret = lp8788_update_bits(led->lp, addr, mask, val);
> if (ret)
> return ret;
> --
> 1.7.9.5
>
>
>



--
Bryan Wu <bryan.wu@canonical.com>
Kernel Developer +86.186-168-78255 Mobile
Canonical Ltd. www.canonical.com
Ubuntu - Linux for human beings | www.ubuntu.com

\
 
 \ /
  Last update: 2012-08-07 04:42    [from the cache]
©2003-2011 Jasper Spaans