lkml.org 
[lkml]   [2010]   [Mar]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH] lp3971: Fix BUCK_VOL_CHANGE_SHIFT logic
    From 99175ed0f281d54efdaf8eef548077a8f0b4924a Mon Sep 17 00:00:00 2001
    From: Axel Lin <axel.lin@gmail.com>
    Date: Thu, 11 Mar 2010 09:50:07 +0800
    Subject: [PATCH] lp3971: Fix BUCK_VOL_CHANGE_SHIFT logic

    Given x=0,1,2, current implementation of BUCK_VOL_CHANGE_SHIFT(x) returns 0,4,8.
    The correct return value should be 0,4,6.
    This patch fix the logic.

    Signed-off-by: Axel Lin <axel.lin@gmail.com>
    ---
    drivers/regulator/lp3971.c | 2 +-
    1 files changed, 1 insertions(+), 1 deletions(-)

    diff --git a/drivers/regulator/lp3971.c b/drivers/regulator/lp3971.c
    index a28ae37..1ba61ab 100644
    --- a/drivers/regulator/lp3971.c
    +++ b/drivers/regulator/lp3971.c
    @@ -45,7 +45,7 @@ static int lp3971_set_bits(struct lp3971 *lp3971, u8
    reg, u16 mask, u16 val);
    LP3971_BUCK2 -> 4
    LP3971_BUCK3 -> 6
    */
    -#define BUCK_VOL_CHANGE_SHIFT(x) (((1 << x) & ~0x01) << 1)
    +#define BUCK_VOL_CHANGE_SHIFT(x) (((!!x) << 2) | (x & ~0x01))
    #define BUCK_VOL_CHANGE_FLAG_GO 0x01
    #define BUCK_VOL_CHANGE_FLAG_TARGET 0x02
    #define BUCK_VOL_CHANGE_FLAG_MASK 0x03
    --
    1.5.4.3

    \
     
     \ /
      Last update: 2010-03-11 02:59    [W:0.020 / U:121.928 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site