drivers/video/backlight/aat2870_bl.c: fix setting max_current
- Current implementation tests wrong value for setting aat2870_bl->max_current. - In the current implementation, we cannot differentiate between 2 cases: a) if pdata->max_current is not set , or b) pdata->max_current is set to AAT2870_CURRENT_0_45 (which is also 0). Fix it by setting AAT2870_CURRENT_0_45 to be 1 and adjust the equation in aat2870_brightness() accordingly. Signed-off-by: Axel Lin <axel.lin@gmail.com> Cc: Richard Purdie <rpurdie@rpsys.net> Cc: Samuel Ortiz <sameo@linux.intel.com> Tested-by: Jin Park <jinyoungp@nvidia.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
4c4dd903e7
commit
5d6f921b42
|
@ -44,7 +44,7 @@ static inline int aat2870_brightness(struct aat2870_bl_driver_data *aat2870_bl,
|
||||||
struct backlight_device *bd = aat2870_bl->bd;
|
struct backlight_device *bd = aat2870_bl->bd;
|
||||||
int val;
|
int val;
|
||||||
|
|
||||||
val = brightness * aat2870_bl->max_current;
|
val = brightness * (aat2870_bl->max_current - 1);
|
||||||
val /= bd->props.max_brightness;
|
val /= bd->props.max_brightness;
|
||||||
|
|
||||||
return val;
|
return val;
|
||||||
|
@ -175,7 +175,7 @@ static int aat2870_bl_probe(struct platform_device *pdev)
|
||||||
else
|
else
|
||||||
aat2870_bl->channels = AAT2870_BL_CH_ALL;
|
aat2870_bl->channels = AAT2870_BL_CH_ALL;
|
||||||
|
|
||||||
if (pdata->max_brightness > 0)
|
if (pdata->max_current > 0)
|
||||||
aat2870_bl->max_current = pdata->max_current;
|
aat2870_bl->max_current = pdata->max_current;
|
||||||
else
|
else
|
||||||
aat2870_bl->max_current = AAT2870_CURRENT_27_9;
|
aat2870_bl->max_current = AAT2870_CURRENT_27_9;
|
||||||
|
|
|
@ -89,7 +89,7 @@ enum aat2870_id {
|
||||||
|
|
||||||
/* Backlight current magnitude (mA) */
|
/* Backlight current magnitude (mA) */
|
||||||
enum aat2870_current {
|
enum aat2870_current {
|
||||||
AAT2870_CURRENT_0_45,
|
AAT2870_CURRENT_0_45 = 1,
|
||||||
AAT2870_CURRENT_0_90,
|
AAT2870_CURRENT_0_90,
|
||||||
AAT2870_CURRENT_1_80,
|
AAT2870_CURRENT_1_80,
|
||||||
AAT2870_CURRENT_2_70,
|
AAT2870_CURRENT_2_70,
|
||||||
|
|
Loading…
Reference in New Issue