RE: [PATCH 4/4] leds-lp5521: redefinition of register bits

From: Kim, Milo
Date: Thu Jan 26 2012 - 21:23:37 EST


Add Arun, Srinidhi, Linus and Andrew on CC

> -----Original Message-----
> From: Kim, Milo
> Sent: Sunday, January 22, 2012 3:10 AM
> To: 'linux-kernel@xxxxxxxxxxxxxxx'; 'rpurdie@xxxxxxxxx'
> Subject: [PATCH 4/4] leds-lp5521: redefinition of register bits
>
> For better readability, values of LP5521_REG_ENABLE register were
> redefined.
> Additional definitions: LP5521_ENABLE_DEFAULT and
> LP5521_ENABLE_RUN_PROGRAM.
>
> Use definition rather than hard code value.
> : 0x3F -> 'LP5521_CMD_DIRECT'
>
> Signed-off-by: Milo(Woogyom) Kim <milo.kim@xxxxxx>
> ---
> drivers/leds/leds-lp5521.c | 21 ++++++++++-----------
> 1 files changed, 10 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/leds/leds-lp5521.c b/drivers/leds/leds-lp5521.c
> index 471cef1..8368ce4 100644
> --- a/drivers/leds/leds-lp5521.c
> +++ b/drivers/leds/leds-lp5521.c
> @@ -81,6 +81,10 @@
> #define LP5521_MASTER_ENABLE 0x40 /* Chip master enable */
> #define LP5521_LOGARITHMIC_PWM 0x80 /* Logarithmic PWM
> adjustment */
> #define LP5521_EXEC_RUN 0x2A
> +#define LP5521_ENABLE_DEFAULT \
> + (LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM)
> +#define LP5521_ENABLE_RUN_PROGRAM \
> + (LP5521_ENABLE_DEFAULT | LP5521_EXEC_RUN)
>
> /* Status */
> #define LP5521_EXT_CLK_USED 0x08
> @@ -234,7 +238,7 @@ static int lp5521_configure(struct i2c_client
> *client)
> lp5521_init_engine(chip);
>
> /* Set all PWMs to direct control mode */
> - ret = lp5521_write(client, LP5521_REG_OP_MODE, 0x3F);
> + ret = lp5521_write(client, LP5521_REG_OP_MODE, LP5521_CMD_DIRECT);
>
> cfg = chip->pdata->update_config ?
> : (LP5521_PWRSAVE_EN | LP5521_CP_MODE_AUTO |
> LP5521_R_TO_BATT);
> @@ -247,8 +251,7 @@ static int lp5521_configure(struct i2c_client
> *client)
>
> /* Set engines are set to run state when OP_MODE enables engines
> */
> ret |= lp5521_write(client, LP5521_REG_ENABLE,
> - LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM |
> - LP5521_EXEC_RUN);
> + LP5521_ENABLE_RUN_PROGRAM);
> /* enable takes 500us. 1 - 2 ms leaves some margin */
> usleep_range(1000, 2000);
>
> @@ -299,8 +302,7 @@ static int lp5521_detect(struct i2c_client *client)
> int ret;
> u8 buf;
>
> - ret = lp5521_write(client, LP5521_REG_ENABLE,
> - LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM);
> + ret = lp5521_write(client, LP5521_REG_ENABLE,
> LP5521_ENABLE_DEFAULT);
> if (ret)
> return ret;
> /* enable takes 500us. 1 - 2 ms leaves some margin */
> @@ -308,7 +310,7 @@ static int lp5521_detect(struct i2c_client *client)
> ret = lp5521_read(client, LP5521_REG_ENABLE, &buf);
> if (ret)
> return ret;
> - if (buf != (LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM))
> + if (buf != LP5521_ENABLE_DEFAULT)
> return -ENODEV;
>
> return 0;
> @@ -573,8 +575,7 @@ static void lp5521_run_led_pattern(int mode, struct
> lp5521_chip *chip)
> return;
>
> if (mode == PATTERN_OFF) {
> - lp5521_write(cl, LP5521_REG_ENABLE,
> - LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM);
> + lp5521_write(cl, LP5521_REG_ENABLE, LP5521_ENABLE_DEFAULT);
> usleep_range(1000, 2000);
> lp5521_write(cl, LP5521_REG_OP_MODE, LP5521_CMD_DIRECT);
> } else {
> @@ -596,9 +597,7 @@ static void lp5521_run_led_pattern(int mode, struct
> lp5521_chip *chip)
>
> lp5521_write(cl, LP5521_REG_OP_MODE, LP5521_CMD_RUN);
> usleep_range(1000, 2000);
> - lp5521_write(cl, LP5521_REG_ENABLE,
> - LP5521_MASTER_ENABLE | LP5521_LOGARITHMIC_PWM |
> - LP5521_EXEC_RUN);
> + lp5521_write(cl, LP5521_REG_ENABLE,
> LP5521_ENABLE_RUN_PROGRAM);
> }
> }
>
> --
> 1.7.4.1
>
>
> Best Regards,
> Milo (Woogyom) Kim
> Texas Instruments Incorporated


--
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/