From de8a7cfc3bb59bbe8d11e28987b1249c4cc3e971 Mon Sep 17 00:00:00 2001 From: Sergey Kudakov Date: Tue, 7 Dec 2010 19:39:23 -0600 Subject: [PATCH] leds: lp8550: correction for pwm turn off the backlight properly scale the brightness Change-Id: I51d9d36c4b5bff4ddda3c2c4273b12368447c7c5 Signed-off-by: Sergey Kudakov --- drivers/leds/leds-lp8550.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/leds/leds-lp8550.c b/drivers/leds/leds-lp8550.c index f99add9130cc..8ca14da544bd 100755 --- a/drivers/leds/leds-lp8550.c +++ b/drivers/leds/leds-lp8550.c @@ -235,8 +235,7 @@ static void lp8550_brightness_write(struct lp8550_data *led_data) if (brightness == LED_OFF) { if (lp8550_write_reg(led_data, LP8550_DEVICE_CTRL, - (led_data->led_pdata->dev_ctrl_config & - LD_LP8550_ON_OFF_MASK))) { + LP8550_BRT_MODE_BRIGHT)) { pr_err("%s:writing failed while setting brightness:%d\n", __func__, error); } @@ -261,8 +260,9 @@ static void lp8550_brightness_write(struct lp8550_data *led_data) if (led_data->led_pdata->dev_ctrl_config == LP8550_BRT_MODE_PWM) { + //scale the brightness to prevent more than 19mA per LED if (lp8550_write_reg(led_data, LP8550_EEPROM_A0, - brightness)) + (brightness * 625) / 1000)) pr_err("%s:Failed to set brightness:%d\n", __func__, error); } -- 2.34.1