From a123ff3d4edbeb4ed84a8669cdb7bdab1e5b17d3 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 11 Oct 2011 18:16:41 +0800 Subject: [PATCH] A22:add 100ms delay for backlight while resume --- drivers/video/backlight/aw9364_bl.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/drivers/video/backlight/aw9364_bl.c b/drivers/video/backlight/aw9364_bl.c index ed011bdd8bf1..8151b3de0945 100755 --- a/drivers/video/backlight/aw9364_bl.c +++ b/drivers/video/backlight/aw9364_bl.c @@ -97,12 +97,8 @@ static int aw9364_backlight_update_status(struct backlight_device *bl) int brightness = bl->props.brightness; - if(g_aw9364_data->suspend_flag == 1) { + if(g_aw9364_data->suspend_flag == 1) brightness = 0; - g_aw9364_data->suspend_flag = 2; - } else if (g_aw9364_data->suspend_flag > 1) { - return 0; - } if (g_aw9364_data->shutdown_flag == 1) brightness = 0; @@ -156,12 +152,7 @@ static void aw9364_bl_resume(struct early_suspend *h) aw9364_data = container_of(h, struct aw9364_backlight_data, early_suspend); aw9364_data->suspend_flag = 0; - struct backlight_device *bl = g_aw9364_bl; - int brightness = bl->props.brightness; - bl->props.brightness = brightness >> 1; - backlight_update_status(bl); - bl->props.brightness = brightness; - schedule_delayed_work(&aw9364_data->work, msecs_to_jiffies(0)); + schedule_delayed_work(&aw9364_data->work, msecs_to_jiffies(100)); } @@ -214,7 +205,7 @@ static int aw9364_backlight_probe(struct platform_device *pdev) platform_set_drvdata(pdev, bl); #ifdef CONFIG_HAS_EARLYSUSPEND - data->early_suspend.level = EARLY_SUSPEND_LEVEL_STOP_DRAWING - 1; + data->early_suspend.level = ~0x0; data->early_suspend.suspend = aw9364_bl_suspend; data->early_suspend.resume = aw9364_bl_resume; register_early_suspend(&data->early_suspend); -- 2.34.1