From aa2c30a3647b8bf88e7b8032b75bbce7362fad69 Mon Sep 17 00:00:00 2001 From: lyx Date: Fri, 8 Apr 2011 23:07:13 -0700 Subject: [PATCH] wm831x backlight : modify brightness --- drivers/video/backlight/wm831x_bl.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/video/backlight/wm831x_bl.c b/drivers/video/backlight/wm831x_bl.c index bf7f8f5855c3..643d07f913ef 100755 --- a/drivers/video/backlight/wm831x_bl.c +++ b/drivers/video/backlight/wm831x_bl.c @@ -24,6 +24,9 @@ #include #include #define BL_SET 255 +#define BL_DIFF_VALUE 100 +#define BL_INIT_VALUE 102 +#define BL_MIN_VALUE 0 struct wm831x_backlight_data { struct wm831x *wm831x; int isink_reg; @@ -116,6 +119,14 @@ err: static int wm831x_backlight_update_status(struct backlight_device *bl) { int brightness = bl->props.brightness; + if ((brightness<=BL_INIT_VALUE) && (brightness>0)) { + brightness = brightness + BL_DIFF_VALUE; + } + else if (brightness > BL_INIT_VALUE) { + brightness = + ((BL_SET-BL_INIT_VALUE-BL_DIFF_VALUE)*brightness+BL_SET*BL_DIFF_VALUE) + /(BL_SET-BL_INIT_VALUE); + } if(gwm831x_data->suspend_flag == 1) brightness = 0; @@ -256,7 +267,7 @@ static int wm831x_backlight_probe(struct platform_device *pdev) return PTR_ERR(bl); } - bl->props.brightness = BL_SET; + bl->props.brightness = BL_INIT_VALUE; bl->props.max_brightness= BL_SET; platform_set_drvdata(pdev, bl); -- 2.34.1