Change display_conf to static 48/240548/2 accepted/tizen/unified/20200819.100448 submit/tizen/20200818.110444
authorYunmi Ha <yunmi.ha@samsung.com>
Fri, 7 Aug 2020 09:29:07 +0000 (18:29 +0900)
committerYunmi Ha <yunmi.ha@samsung.com>
Tue, 18 Aug 2020 08:59:02 +0000 (17:59 +0900)
Change-Id: I64cc875bd0fb554f297bf95ba6994ffe429c52ef
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
19 files changed:
plugins/iot/display/core.c
plugins/iot/display/device-interface.c
plugins/iot/display/key-filter.c
plugins/mobile/display/core.c
plugins/mobile/display/device-interface.c
plugins/mobile/display/key-filter.c
plugins/tv/display/core.c
plugins/tv/display/device-interface.c
plugins/tv/display/key-filter.c
plugins/wearable/display/auto-brightness-sensorhub.c
plugins/wearable/display/core.c
plugins/wearable/display/device-interface.c
plugins/wearable/display/key-filter.c
src/display/auto-brightness.c
src/display/core.h
src/display/display-dbus.c
src/display/display-lock.c
src/display/input.c
src/display/setting.c

index a2e4ae7..6d842c7 100644 (file)
@@ -181,7 +181,7 @@ static int trans_table[S_END][EVENT_END] = {
        (b.tv_sec * 1000000 + b.tv_usec)) \
        / 1000)
 
-struct display_config display_conf = {
+static struct display_config display_conf = {
        .lock_wait_time         = LOCK_SCREEN_WATING_TIME,
        .longpress_interval     = LONG_PRESS_INTERVAL,
        .lightsensor_interval   = SAMPLING_INTERVAL,
@@ -211,6 +211,11 @@ struct display_function_info display_info = {
        .face_detection                 = NULL,
 };
 
+inline struct display_config* get_display_config()
+{
+       return &display_conf;
+}
+
 inline struct state* state_st(enum state_t state)
 {
        return &states[state];
index 49c9172..64e4f1e 100644 (file)
@@ -76,6 +76,7 @@ static int default_brightness;
 static int dpms_running_state = DPMS_SETTING_DONE;
 static struct display_device *display_dev;
 static guint release_timer;
+static struct display_config *display_conf;
 
 inline struct _backlight_ops *get_backlight_ops(void)
 {
@@ -363,7 +364,7 @@ static int backlight_standby(int force)
 static int set_default_brt(int level)
 {
        if (level < PM_MIN_BRIGHTNESS || level > PM_MAX_BRIGHTNESS)
-               level = display_conf.pm_default_brightness;
+               level = display_conf->pm_default_brightness;
 
        default_brightness = level;
 
@@ -642,7 +643,7 @@ static int backlight_transit_state(int state)
 
        if (state == DPMS_OFF) {
                start = brt;
-               end = display_conf.aod_enter_level;
+               end = display_conf->aod_enter_level;
 
                /*
                 * The value of backlight_ops.get_brightness is system brightness.
@@ -651,19 +652,19 @@ static int backlight_transit_state(int state)
                 */
                get_brightness(&val);
 
-               if (val > display_conf.aod_enter_level)
-                       backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               if (val > display_conf->aod_enter_level)
+                       backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        } else {
                /* prevent transit effect when another effect is already executed */
-               if (brt != display_conf.aod_enter_level) {
+               if (brt != display_conf->aod_enter_level) {
                        _W("effect is already executed brt(%d) aod_level(%d)",
-                                       brt, display_conf.aod_enter_level);
+                                       brt, display_conf->aod_enter_level);
                        return 0;
                }
 
-               start = display_conf.aod_enter_level;
+               start = display_conf->aod_enter_level;
                end = default_brightness;
-               backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        }
 
        return 0;
@@ -837,3 +838,11 @@ int exit_sysfs(void)
 
        return 0;
 }
+
+static void __CONSTRUCTOR__ initialize(void)
+{
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
+}
+
index d8d4df3..29d7de2 100644 (file)
@@ -432,6 +432,11 @@ static int process_power_key(struct input_event *pinput)
        int ignore = true;
        static int value = KEY_RELEASED;
        unsigned int caps;
+       struct display_config *display_conf = get_display_config();
+       if (!display_conf) {
+               _E("Failed to get display configuration.");
+               return ignore;
+       }
 
        caps = display_get_caps(DISPLAY_ACTOR_POWER_KEY);
 
@@ -439,7 +444,7 @@ static int process_power_key(struct input_event *pinput)
        case KEY_RELEASED:
                check_key_pair(pinput->code, pinput->value, &value);
 
-               if (!display_conf.powerkey_doublepress) {
+               if (!display_conf->powerkey_doublepress) {
                        if (display_has_caps(caps, DISPLAY_CAPA_LCDOFF))
                                lcdoff_powerkey();
                        else
@@ -475,7 +480,7 @@ static int process_power_key(struct input_event *pinput)
                if (key_combination == KEY_COMBINATION_POWERKEY) {
                        /* add long key timer */
                        longkey_timeout_id = g_timeout_add_seconds(
-                                   display_conf.longpress_interval,
+                                   display_conf->longpress_interval,
                                    longkey_pressed_cb, NULL);
                        /* add long key restore timer */
                        longkey_restore_id = g_timeout_add_seconds(
@@ -487,7 +492,7 @@ static int process_power_key(struct input_event *pinput)
                break;
        case KEY_BEING_PRESSED:
                if (timediff_usec(pressed_time, pinput->time) >
-                   (display_conf.longpress_interval * USEC_PER_SEC))
+                   (display_conf->longpress_interval * USEC_PER_SEC))
                        longkey_pressed();
                break;
        }
index 13f219f..604135c 100644 (file)
@@ -184,7 +184,7 @@ static int trans_table[S_END][EVENT_END] = {
        (b.tv_sec * 1000000 + b.tv_usec)) \
        / 1000)
 
-struct display_config display_conf = {
+static struct display_config display_conf = {
        .lock_wait_time         = LOCK_SCREEN_WATING_TIME,
        .longpress_interval     = LONG_PRESS_INTERVAL,
        .lightsensor_interval   = SAMPLING_INTERVAL,
@@ -214,6 +214,11 @@ struct display_function_info display_info = {
        .face_detection                 = NULL,
 };
 
+inline struct display_config* get_display_config()
+{
+       return &display_conf;
+}
+
 inline struct state* state_st(enum state_t state)
 {
        return &states[state];
index 054e181..9b37f8b 100644 (file)
@@ -75,6 +75,7 @@ static int default_brightness;
 static int dpms_running_state = DPMS_SETTING_DONE;
 static struct display_device *display_dev;
 static guint release_timer;
+static struct display_config *display_conf;
 
 inline struct _backlight_ops *get_backlight_ops(void)
 {
@@ -362,7 +363,7 @@ static int backlight_standby(int force)
 static int set_default_brt(int level)
 {
        if (level < PM_MIN_BRIGHTNESS || level > PM_MAX_BRIGHTNESS)
-               level = display_conf.pm_default_brightness;
+               level = display_conf->pm_default_brightness;
 
        default_brightness = level;
 
@@ -641,7 +642,7 @@ static int backlight_transit_state(int state)
 
        if (state == DPMS_OFF) {
                start = brt;
-               end = display_conf.aod_enter_level;
+               end = display_conf->aod_enter_level;
 
                /*
                 * The value of backlight_ops.get_brightness is system brightness.
@@ -650,19 +651,19 @@ static int backlight_transit_state(int state)
                 */
                get_brightness(&val);
 
-               if (val > display_conf.aod_enter_level)
-                       backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               if (val > display_conf->aod_enter_level)
+                       backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        } else {
                /* prevent transit effect when another effect is already executed */
-               if (brt != display_conf.aod_enter_level) {
+               if (brt != display_conf->aod_enter_level) {
                        _W("effect is already executed brt(%d) aod_level(%d)",
-                                       brt, display_conf.aod_enter_level);
+                                       brt, display_conf->aod_enter_level);
                        return 0;
                }
 
-               start = display_conf.aod_enter_level;
+               start = display_conf->aod_enter_level;
                end = default_brightness;
-               backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        }
 
        return 0;
@@ -852,3 +853,11 @@ int exit_sysfs(void)
 
        return 0;
 }
+
+static void __CONSTRUCTOR__ initialize(void)
+{
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
+}
+
index b5fdf71..4aead39 100644 (file)
@@ -452,6 +452,11 @@ static int process_power_key(struct input_event *pinput)
        int ignore = true;
        static int value = KEY_RELEASED;
        unsigned int caps;
+       struct display_config *display_conf = get_display_config();
+       if (!display_conf) {
+               _E("Failed to get display configuration.");
+               return ignore;
+       }
 
        caps = display_get_caps(DISPLAY_ACTOR_POWER_KEY);
 
@@ -459,7 +464,7 @@ static int process_power_key(struct input_event *pinput)
        case KEY_RELEASED:
                check_key_pair(pinput->code, pinput->value, &value);
 
-               if (!display_conf.powerkey_doublepress) {
+               if (!display_conf->powerkey_doublepress) {
                        if (display_has_caps(caps, DISPLAY_CAPA_LCDOFF))
                                lcdoff_powerkey();
                        else
@@ -508,7 +513,7 @@ static int process_power_key(struct input_event *pinput)
                if (key_combination == KEY_COMBINATION_POWERKEY) {
                        /* add long key timer */
                        longkey_timeout_id = g_timeout_add(
-                                   display_conf.longpress_interval,
+                                   display_conf->longpress_interval,
                                    longkey_pressed_cb, NULL);
                        /* add long key restore timer */
                        longkey_restore_id = g_timeout_add_seconds(
@@ -520,7 +525,7 @@ static int process_power_key(struct input_event *pinput)
                break;
        case KEY_BEING_PRESSED:
                if (timediff_usec(pressed_time, pinput->time) >
-                   (display_conf.longpress_interval * USEC_PER_MSEC))
+                   (display_conf->longpress_interval * USEC_PER_MSEC))
                        longkey_pressed();
                break;
        }
index 6220f09..4d85fcd 100644 (file)
@@ -182,7 +182,7 @@ static int trans_table[S_END][EVENT_END] = {
        (b.tv_sec * 1000000 + b.tv_usec)) \
        / 1000)
 
-struct display_config display_conf = {
+static struct display_config display_conf = {
        .lock_wait_time         = LOCK_SCREEN_WATING_TIME,
        .longpress_interval     = LONG_PRESS_INTERVAL,
        .lightsensor_interval   = SAMPLING_INTERVAL,
@@ -212,6 +212,11 @@ struct display_function_info display_info = {
        .face_detection                 = NULL,
 };
 
+inline struct display_config* get_display_config()
+{
+       return &display_conf;
+}
+
 inline struct state* state_st(enum state_t state)
 {
        return &states[state];
index 28c4075..469b793 100644 (file)
@@ -76,6 +76,7 @@ static int default_brightness;
 static int dpms_running_state = DPMS_SETTING_DONE;
 static struct display_device *display_dev;
 static guint release_timer;
+static struct display_config *display_conf;
 
 inline struct _backlight_ops *get_backlight_ops(void)
 {
@@ -363,7 +364,7 @@ static int backlight_standby(int force)
 static int set_default_brt(int level)
 {
        if (level < PM_MIN_BRIGHTNESS || level > PM_MAX_BRIGHTNESS)
-               level = display_conf.pm_default_brightness;
+               level = display_conf->pm_default_brightness;
 
        default_brightness = level;
 
@@ -642,7 +643,7 @@ static int backlight_transit_state(int state)
 
        if (state == DPMS_OFF) {
                start = brt;
-               end = display_conf.aod_enter_level;
+               end = display_conf->aod_enter_level;
 
                /*
                 * The value of backlight_ops.get_brightness is system brightness.
@@ -651,19 +652,19 @@ static int backlight_transit_state(int state)
                 */
                get_brightness(&val);
 
-               if (val > display_conf.aod_enter_level)
-                       backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               if (val > display_conf->aod_enter_level)
+                       backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        } else {
                /* prevent transit effect when another effect is already executed */
-               if (brt != display_conf.aod_enter_level) {
+               if (brt != display_conf->aod_enter_level) {
                        _W("effect is already executed brt(%d) aod_level(%d)",
-                                       brt, display_conf.aod_enter_level);
+                                       brt, display_conf->aod_enter_level);
                        return 0;
                }
 
-               start = display_conf.aod_enter_level;
+               start = display_conf->aod_enter_level;
                end = default_brightness;
-               backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        }
 
        return 0;
@@ -838,3 +839,11 @@ int exit_sysfs(void)
 
        return 0;
 }
+
+static void __CONSTRUCTOR__ initialize(void)
+{
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
+}
+
index 7abfd2f..24757b2 100644 (file)
@@ -432,6 +432,11 @@ static int process_power_key(struct input_event *pinput)
        int ignore = true;
        static int value = KEY_RELEASED;
        unsigned int caps;
+       struct display_config *display_conf = get_display_config();
+       if(!display_conf) {
+               _E("Failed to get display configuration.");
+               return ignore;
+       }
 
        caps = display_get_caps(DISPLAY_ACTOR_POWER_KEY);
 
@@ -439,7 +444,7 @@ static int process_power_key(struct input_event *pinput)
        case KEY_RELEASED:
                check_key_pair(pinput->code, pinput->value, &value);
 
-               if (!display_conf.powerkey_doublepress) {
+               if (!display_conf->powerkey_doublepress) {
                        if (display_has_caps(caps, DISPLAY_CAPA_LCDOFF))
                                lcdoff_powerkey();
                        else
@@ -475,7 +480,7 @@ static int process_power_key(struct input_event *pinput)
                if (key_combination == KEY_COMBINATION_POWERKEY) {
                        /* add long key timer */
                        longkey_timeout_id = g_timeout_add_seconds(
-                                   display_conf.longpress_interval,
+                                   display_conf->longpress_interval,
                                    longkey_pressed_cb, NULL);
                        /* add long key restore timer */
                        longkey_restore_id = g_timeout_add_seconds(
@@ -487,7 +492,7 @@ static int process_power_key(struct input_event *pinput)
                break;
        case KEY_BEING_PRESSED:
                if (timediff_usec(pressed_time, pinput->time) >
-                   (display_conf.longpress_interval * USEC_PER_SEC))
+                   (display_conf->longpress_interval * USEC_PER_SEC))
                        longkey_pressed();
                break;
        }
index c2e1773..e5a5004 100644 (file)
@@ -43,8 +43,13 @@ static bool lbm, hbm, hold_brt, lowdim;
 
 static void change_brightness_transit(int start, int end)
 {
+       struct display_config *display_conf = get_display_config();
+       if(!display_conf) {
+               _E("Failed to get display configuration.");
+               return ;
+       }
        backlight_ops->transit_brt(start, end,
-                       display_conf.brightness_change_step);
+                       display_conf->brightness_change_step);
 }
 
 static void set_brightness_level(int level)
index 3637314..9cf31dd 100644 (file)
@@ -189,7 +189,7 @@ static int trans_table[S_END][EVENT_END] = {
        (b.tv_sec * 1000000 + b.tv_usec)) \
        / 1000)
 
-struct display_config display_conf = {
+static struct display_config display_conf = {
        .lock_wait_time         = LOCK_SCREEN_WATING_TIME,
        .longpress_interval     = LONG_PRESS_INTERVAL,
        .lightsensor_interval   = SAMPLING_INTERVAL,
@@ -219,6 +219,11 @@ struct display_function_info display_info = {
        .face_detection                 = NULL,
 };
 
+inline struct display_config *get_display_config()
+{
+       return &display_conf;
+}
+
 inline struct state *state_st(enum state_t state)
 {
        return &states[state];
index dd1a03f..83dcb2c 100644 (file)
@@ -84,6 +84,7 @@ static int aod_max_level = -1;
 static int aod_normal_level = -1;
 static int aod_min_level = -1;
 static int aod_charging_level = -1;
+static struct display_config *display_conf;
 
 inline struct _backlight_ops *get_backlight_ops(void)
 {
@@ -370,7 +371,7 @@ static int backlight_standby(int force)
 static int set_default_brt(int level)
 {
        if (level < PM_MIN_BRIGHTNESS || level > PM_MAX_BRIGHTNESS)
-               level = display_conf.pm_default_brightness;
+               level = display_conf->pm_default_brightness;
 
        default_brightness = level;
 
@@ -702,7 +703,7 @@ static int backlight_transit_state(int state)
                        else if (aod_min_level > 0 && val >= aod_min_level)
                                aod_brightness_level = aod_min_level;
                        else
-                               aod_brightness_level = display_conf.aod_enter_level;
+                               aod_brightness_level = display_conf->aod_enter_level;
                } else {
                        if (aod_max_level > 0 && val >= aod_max_level)
                                aod_brightness_level = aod_max_level;
@@ -711,12 +712,12 @@ static int backlight_transit_state(int state)
                        else if (aod_min_level > 0 && val >= aod_min_level)
                                aod_brightness_level = aod_min_level;
                        else
-                               aod_brightness_level = display_conf.aod_enter_level;
+                               aod_brightness_level = display_conf->aod_enter_level;
                }
 
                if (val > aod_brightness_level) {
                        _D("backlight transit start %d end %d DPMS OFF", start, aod_brightness_level);
-                       backlight_ops.transit_brt(start, aod_brightness_level, display_conf.brightness_change_step);
+                       backlight_ops.transit_brt(start, aod_brightness_level, display_conf->brightness_change_step);
                }
        } else {
                /* prevent transit effect when another effect is already executed */
@@ -729,7 +730,7 @@ static int backlight_transit_state(int state)
                start = aod_brightness_level;
                end = default_brightness;
                _D("backlight transit start %d end %d DPMS ON", start, end);
-               backlight_ops.transit_brt(start, end, display_conf.brightness_change_step);
+               backlight_ops.transit_brt(start, end, display_conf->brightness_change_step);
        }
 
        return 0;
@@ -916,3 +917,11 @@ int exit_sysfs(void)
 
        return 0;
 }
+
+static void __CONSTRUCTOR__ initialize(void)
+{
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
+}
+
index 26ecf11..3cf379f 100644 (file)
@@ -429,6 +429,11 @@ static int process_power_key(struct input_event *pinput)
        int ignore = true;
        static int value = KEY_RELEASED;
        unsigned int caps;
+       struct display_config *display_conf = get_display_config();
+       if (!display_conf) {
+               _E("Failed to get display configuration.");
+               return ignore;
+       }
 
        caps = display_get_caps(DISPLAY_ACTOR_POWER_KEY);
 
@@ -436,7 +441,7 @@ static int process_power_key(struct input_event *pinput)
        case KEY_RELEASED:
                check_key_pair(pinput->code, pinput->value, &value);
 
-               if (!display_conf.powerkey_doublepress) {
+               if (!display_conf->powerkey_doublepress) {
                        if (display_has_caps(caps, DISPLAY_CAPA_LCDOFF))
                                lcdoff_powerkey();
                        else
@@ -472,7 +477,7 @@ static int process_power_key(struct input_event *pinput)
                if (key_combination == KEY_COMBINATION_POWERKEY) {
                        /* add long key timer */
                        longkey_timeout_id = g_timeout_add(
-                                   display_conf.longpress_interval,
+                                   display_conf->longpress_interval,
                                    longkey_pressed_cb, NULL);
                        /* add long key restore timer */
                        longkey_restore_id = g_timeout_add_seconds(
@@ -484,7 +489,7 @@ static int process_power_key(struct input_event *pinput)
                break;
        case KEY_BEING_PRESSED:
                if (timediff_usec(pressed_time, pinput->time) >
-                   (display_conf.longpress_interval * USEC_PER_MSEC))
+                   (display_conf->longpress_interval * USEC_PER_MSEC))
                        longkey_pressed();
                break;
        }
index e220ec0..e8b1621 100644 (file)
@@ -73,6 +73,7 @@ static char *min_brightness_name = 0;
 
 /* light sensor */
 static float lmax, lmin;
+static struct display_config *display_conf;
 
 static bool update_working_position(void)
 {
@@ -80,7 +81,7 @@ static bool update_working_position(void)
        int ret;
        float x, y, z, pitch, realg;
 
-       if (!display_conf.accel_sensor_on)
+       if (!display_conf->accel_sensor_on)
                return false;
 
        ret = sensor_listener_read_data(accel_listener, &data);
@@ -119,7 +120,7 @@ static void alc_set_brightness(int setting, int value, float light)
 
        if (tmp_value != value) {
                if (!setting && min_brightness == PM_MIN_BRIGHTNESS &&
-                   display_conf.accel_sensor_on == true) {
+                   display_conf->accel_sensor_on == true) {
                        position = update_working_position();
                        if (!position && (old > light)) {
                                _D("It's not working position, "
@@ -130,11 +131,11 @@ static void alc_set_brightness(int setting, int value, float light)
                int diff, step;
 
                diff = value - tmp_value;
-               if (abs(diff) < display_conf.brightness_change_step)
+               if (abs(diff) < display_conf->brightness_change_step)
                        step = (diff > 0 ? 1 : -1);
                else
                        step = (int)ceil(diff /
-                           (float)display_conf.brightness_change_step);
+                           (float)display_conf->brightness_change_step);
 
                _D("%d", step);
                while (tmp_value != value) {
@@ -205,7 +206,7 @@ static bool alc_update_brt(bool setting)
 
        fault_count = 0;
 
-       if (display_conf.continuous_sampling &&
+       if (display_conf->continuous_sampling &&
                !check_brightness_changed(value) &&
                !setting)
                return true;
@@ -257,7 +258,7 @@ static int alc_action(int timeout)
                display_info.update_auto_brightness(true);
 
                alc_timeout_id =
-                   g_timeout_add_seconds(display_conf.lightsensor_interval,
+                   g_timeout_add_seconds(display_conf->lightsensor_interval,
                            alc_handler, NULL);
        }
 
@@ -319,7 +320,7 @@ static int connect_sensor(void)
                goto error;
        }
 
-       if (!display_conf.accel_sensor_on)
+       if (!display_conf->accel_sensor_on)
                goto success;
 
        /* accelerometer sensor */
@@ -352,7 +353,7 @@ error:
                sensor_destroy_listener(light_listener);
                light_listener = 0;
        }
-       if (display_conf.accel_sensor_on && accel_listener > 0) {
+       if (display_conf->accel_sensor_on && accel_listener > 0) {
                sensor_listener_stop(accel_listener);
                sensor_destroy_listener(accel_listener);
                accel_listener = 0;
@@ -371,7 +372,7 @@ static int disconnect_sensor(void)
        }
 
        /* accelerometer sensor*/
-       if (display_conf.accel_sensor_on && accel_listener > 0) {
+       if (display_conf->accel_sensor_on && accel_listener > 0) {
                sensor_listener_stop(accel_listener);
                sensor_destroy_listener(accel_listener);
                accel_listener = 0;
@@ -419,7 +420,7 @@ static int set_autobrightness_state(int status)
                display_info.update_auto_brightness(true);
 
                alc_timeout_id =
-                   g_timeout_add_seconds(display_conf.lightsensor_interval,
+                   g_timeout_add_seconds(display_conf->lightsensor_interval,
                            alc_handler, NULL);
        } else if (status == SETTING_BRIGHTNESS_AUTOMATIC_PAUSE) {
                _I("Auto brightness paused.");
@@ -432,7 +433,7 @@ static int set_autobrightness_state(int status)
                ret = get_setting_brightness(&default_brt);
                if (ret != 0 || (default_brt < PM_MIN_BRIGHTNESS || default_brt > PM_MAX_BRIGHTNESS)) {
                        _I("Failed to read vconf value for brightness.");
-                       brt = display_conf.pm_default_brightness;
+                       brt = display_conf->pm_default_brightness;
                        if (default_brt < PM_MIN_BRIGHTNESS || default_brt > PM_MAX_BRIGHTNESS) {
                                ret = vconf_set_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, brt);
                                if (ret < 0)
@@ -686,4 +687,8 @@ static void __CONSTRUCTOR__ initialize(void)
        backlight_ops = get_backlight_ops();
        if (!backlight_ops)
                _E("Failed to get backlight operator.");
+
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
 }
index 712d2cc..caa97dc 100644 (file)
@@ -138,7 +138,7 @@ struct display_config {
  * Global variables
  *   display_conf : configuration of display
  */
-extern struct display_config display_conf;
+struct display_config* get_display_config();
 
 /*
  * @brief Display Extension features
index a808ca0..7dbb69a 100644 (file)
@@ -614,21 +614,27 @@ static GVariant *dbus_setrefreshrate(GDBusConnection *conn,
        GVariant *param, GDBusMethodInvocation *invocation, gpointer user_data)
 {
        int app, val, ret, control;
+       struct display_config *display_conf = get_display_config();
+       if (!display_conf) {
+               _E("Failed to get display configuration.");
+               ret = -EINVAL;
+               goto error;
+       }
 
        g_variant_get(param, "(ii)", &app, &val);
 
-       if (app < 0 || app >= ARRAY_SIZE(display_conf.framerate_app) || val < 0) {
+       if (app < 0 || app >= ARRAY_SIZE(display_conf->framerate_app) || val < 0) {
                ret = -EINVAL;
                goto error;
        }
 
-       if (!display_conf.framerate_app[app]) {
+       if (!display_conf->framerate_app[app]) {
                _I("This case(%d) is not support in this target", app);
                ret = -EPERM;
                goto error;
        }
 
-       control = display_conf.control_display;
+       control = display_conf->control_display;
 
        if (control)
                backlight_ops->off(NORMAL_MODE);
index 2facaac..4450a76 100644 (file)
@@ -188,6 +188,11 @@ PmLockNode *add_node(enum state_t s_index, pid_t pid, guint timeout_id,
        PmLockNode *n;
        GVariant *v = NULL;
        time_t now;
+       struct display_config *display_conf = get_display_config();
+       if (!display_conf) {
+               _E("Failed to get display configuration.");
+               return NULL;
+       }
 
        n = (PmLockNode *) malloc(sizeof(PmLockNode));
        if (n == NULL) {
@@ -198,7 +203,7 @@ PmLockNode *add_node(enum state_t s_index, pid_t pid, guint timeout_id,
        if (pid < INTERNAL_LOCK_BASE) {
                v = g_variant_new("(ii)", s_index, pid);
                if (v) {
-                       warning_id = g_timeout_add_seconds(display_conf.lockcheck_timeout,
+                       warning_id = g_timeout_add_seconds(display_conf->lockcheck_timeout,
                                        pmlock_check, (void *)v);
                } else {
                        _E("Failed to make GVariant.");
index a55d05b..b985652 100644 (file)
@@ -44,6 +44,11 @@ static inline void process_event(struct libinput_event *ev)
        struct libinput_event_keyboard *k;
        unsigned int time;
        int fd = 0;
+       struct display_config *display_conf = get_display_config();
+       if(!display_conf) {
+               _E("Failed to get display configuration.");
+               return;
+       }
 
        if (!pm_callback)
                return;
@@ -92,7 +97,7 @@ static inline void process_event(struct libinput_event *ev)
                break;
        case LIBINPUT_EVENT_TOUCH_MOTION:
        case LIBINPUT_EVENT_TOUCH_FRAME:
-               if (touch_event_blocked() && !ambient_get_state() && !display_conf.touch_wakeup)
+               if (touch_event_blocked() && !ambient_get_state() && !display_conf->touch_wakeup)
                        return;
                input.type = EV_ABS;
                input.value = KEY_BEING_PRESSED;
index 0552001..e493c7f 100644 (file)
@@ -48,6 +48,7 @@ static int force_lcdtimeout = 0;
 static int custom_on_timeout = 0;
 static int custom_normal_timeout = 0;
 static int custom_dim_timeout = 0;
+static struct display_config *display_conf;
 
 int (*update_pm_setting) (int key_idx, int val);
 
@@ -147,7 +148,7 @@ void get_dim_timeout(int *dim_timeout)
                return;
        }
 
-       if (!display_conf.dimming || ambient_get_condition()) {
+       if (!display_conf->dimming || ambient_get_condition()) {
                *dim_timeout = LCD_MIN_DIM_TIMEOUT;
                return;
        }
@@ -214,7 +215,7 @@ int set_custom_lcdon_timeout(int timeout)
                return changed;
        }
 
-       if (display_conf.dimming)
+       if (display_conf->dimming)
                custom_dim_timeout = (double)timeout * LCD_DIM_RATIO;
        else
                custom_dim_timeout = LCD_MIN_DIM_TIMEOUT;
@@ -281,4 +282,8 @@ static void __CONSTRUCTOR__ initialize(void)
        if (!disp_plgn) {
                _E("Failed to get display plugin.");
        }
+
+       display_conf = get_display_config();
+       if (!display_conf)
+               _E("Failed to get display configuration.");
 }