display: remove dpms get operation during dpms setting 57/107257/2 accepted/tizen_3.0.m2_mobile accepted/tizen_3.0.m2_tv accepted/tizen_3.0.m2_wearable tizen_3.0.m2 accepted/tizen/3.0.m2/mobile/20170104.141623 accepted/tizen/3.0.m2/tv/20170104.142102 accepted/tizen/3.0.m2/wearable/20170104.142353 accepted/tizen/3.0/common/20161228.071713 accepted/tizen/3.0/ivi/20161228.022400 accepted/tizen/3.0/mobile/20161228.022309 accepted/tizen/3.0/tv/20161228.022324 accepted/tizen/3.0/wearable/20161228.022340 submit/tizen_3.0.m2/20170104.093751 submit/tizen_3.0/20161227.120351
authortaeyoung <ty317.kim@samsung.com>
Tue, 27 Dec 2016 08:45:38 +0000 (17:45 +0900)
committertaeyoung <ty317.kim@samsung.com>
Tue, 27 Dec 2016 11:22:03 +0000 (20:22 +0900)
dpms setting is async function. So, dpms get function
will return failure if is is called just after dpms setting.
Thus dpms get function is removed from the dpms setting operation.

Change-Id: I6930bcb1397c703c723b439fc75ed1e370b5626e
Signed-off-by: taeyoung <ty317.kim@samsung.com>
src/display/device-interface.c
src/display/device-interface.h
src/display/dpms-wayland-none.c

index d23b74f..79aca9f 100644 (file)
@@ -308,25 +308,12 @@ static int backlight_off(enum device_flags flags)
 static int backlight_on(enum device_flags flags)
 {
        int ret = -1;
-       int i;
 
        _D("LCD on %x", flags);
 
-       for (i = 0; i < PM_LCD_RETRY_CNT; i++) {
-               ret = bl_onoff(DPMS_ON);
-               if (get_lcd_power() == DPMS_ON) {
-#ifdef ENABLE_PM_LOG
-                       pm_history_save(PM_LOG_LCD_ON, pm_cur_state);
-#endif
-                       break;
-               } else {
-#ifdef ENABLE_PM_LOG
-                       pm_history_save(PM_LOG_LCD_ON_FAIL, pm_cur_state);
-#endif
-                       _E("Failed to LCD on, through OAL");
-                       ret = -1;
-               }
-       }
+       ret = bl_onoff(DPMS_ON);
+       if (ret < 0)
+               _E("Failed to turn on backlight");
 
        if (flags & LCD_PHASED_TRANSIT_MODE)
                change_brightness(LCD_PHASED_MIN_BRIGHTNESS,
@@ -338,7 +325,6 @@ static int backlight_on(enum device_flags flags)
 static int backlight_off(enum device_flags flags)
 {
        int ret = -1;
-       int i;
 
        _D("LCD off %x", flags);
 
@@ -346,22 +332,10 @@ static int backlight_off(enum device_flags flags)
                change_brightness(default_brightness,
                    LCD_PHASED_MIN_BRIGHTNESS, LCD_PHASED_CHANGE_STEP);
 
-       for (i = 0; i < PM_LCD_RETRY_CNT; i++) {
-               usleep(30000);
-               ret = bl_onoff(DPMS_OFF);
-               if (get_lcd_power() == DPMS_OFF) {
-#ifdef ENABLE_PM_LOG
-                       pm_history_save(PM_LOG_LCD_OFF, pm_cur_state);
-#endif
-                       break;
-               } else {
-#ifdef ENABLE_PM_LOG
-                       pm_history_save(PM_LOG_LCD_OFF_FAIL, pm_cur_state);
-#endif
-                       _E("Failed to LCD off, through OAL");
-                       ret = -1;
-               }
-       }
+       ret = bl_onoff(DPMS_OFF);
+       if (ret < 0)
+               _E("Failed to turn off backlight");
+
        return ret;
 }
 #endif
index 9b93328..cd29d23 100644 (file)
@@ -36,8 +36,6 @@
 #define PM_DEFAULT_BRIGHTNESS  60
 #define PM_DIM_BRIGHTNESS      0
 
-#define PM_LCD_RETRY_CNT       3
-
 #define DISP_INDEX_SHIFT       16
 #define DISP_CMD(prop, index)  ((index << DISP_INDEX_SHIFT) | prop)
 
index f5d8e72..a611ea8 100644 (file)
@@ -21,6 +21,7 @@
 #include "core/edbus-handler.h"
 #include "device-interface.h"
 #include "util.h"
+#include "core.h"
 
 #define ENLIGHTENMENT_BUS_NAME          "org.enlightenment.wm"
 #define ENLIGHTENMENT_OBJECT_PATH       "/org/enlightenment/wm"
@@ -48,6 +49,19 @@ static void dpms_set_cb(void *data, DBusMessage *msg, DBusError *r_err)
        }
 
        _D("DPMS was set %d", state);
+
+#ifdef ENABLE_PM_LOG
+       switch (state) {
+       case DPMS_ON:
+               pm_history_save(PM_LOG_LCD_ON, pm_cur_state);
+               break;
+       case DPMS_OFF:
+               pm_history_save(PM_LOG_LCD_OFF, pm_cur_state);
+               break;
+       default:
+               break;
+       }
+#endif
 }
 
 int dpms_set_power(enum dpms_state state)