display: Remove duplicated display_exit codes 28/295828/2
authorYunhee Seo <yuni.seo@samsung.com>
Fri, 14 Jul 2023 06:47:46 +0000 (15:47 +0900)
committerYunhee Seo <yuni.seo@samsung.com>
Fri, 14 Jul 2023 10:12:47 +0000 (19:12 +0900)
display all plugins follow same display_exit logic.
There is no need to keep same logic code except specific profile code logic.
Thus display_exit() logic is moved to display.c.

Change-Id: I48b00e9289dbac9adc14b7d619f7e5f3ff81b853
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
plugins/iot-headed/display/core.c
plugins/iot-headed/display/device-interface.c
plugins/mobile/display/core.c
plugins/mobile/display/device-interface.c
plugins/tv/display/core.c
plugins/tv/display/device-interface.c
plugins/wearable/display/core.c
plugins/wearable/display/device-interface.c
src/display/device-interface.h
src/display/display.c

index b4d71dd..d83ee55 100644 (file)
@@ -135,15 +135,6 @@ inline struct state* state_st(enum state_t state)
        return &states[state];
 }
 
-enum {
-       INIT_SETTING = 0,
-       INIT_INTERFACE,
-       INIT_POLL,
-       INIT_FIFO,
-       INIT_DBUS,
-       INIT_END
-};
-
 static void init_display_states(void *data)
 {
        struct display_plugin *dp = (struct display_plugin *) data;
@@ -194,39 +185,7 @@ static void display_init(void *data)
 
 static void display_exit(void *data)
 {
-       int i = INIT_END;
-
-       display_set_display_ops_status(DEVICE_OPS_STATUS_STOP);
-
-       /* Set current state to S_NORMAL */
-       set_pm_cur_state(S_NORMAL);
-       set_setting_pmstate(get_pm_cur_state());
-       /* timeout is not needed */
-       display_state_transition_reset_state_transition_timeout(TIMEOUT_NONE);
-
-       display_ops_exit(NULL);
-
-       for (i = i - 1; i >= INIT_SETTING; i--) {
-               switch (i) {
-               case INIT_SETTING:
-                       exit_setting();
-                       break;
-               case INIT_INTERFACE:
-                       exit_sysfs();
-                       break;
-               case INIT_POLL:
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_BACKGROUND, display_app_background);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_FOREGROUND, display_app_foreground);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_TERMINATED, display_app_terminated);
-
-                       break;
-               }
-       }
-
-       display_unregister_dependent_device();
-       free_lock_info_list();
-
-       _I("Stop power manager.");
+       return;
 }
 
 static int display_start(enum device_flags flags)
index 36f1854..2d37e96 100644 (file)
@@ -74,27 +74,6 @@ void setup_display_plugin_backlight_ops(struct display_plugin *dp)
        dp->backlight = &backlight_ops;
 }
 
-int exit_sysfs(void)
-{
-       const struct device_ops *ops = NULL;
-
-       display_backlight_update_by_default_brightness();
-
-       display_panel_exit_dpms();
-
-       ops = find_device("touchscreen");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       ops = find_device("touchkey");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       unregister_notifier(DEVICE_NOTIFIER_VITAL_STATE, vital_state_changed);
-
-       return 0;
-}
-
 static void __CONSTRUCTOR__ initialize(void)
 {
        display_conf = get_var_display_config();
index bb1fbbc..6b6c49d 100644 (file)
@@ -188,15 +188,6 @@ static int default_proc_change_state(unsigned int cond, pid_t pid)
        return 0;
 }
 
-enum {
-       INIT_SETTING = 0,
-       INIT_INTERFACE,
-       INIT_POLL,
-       INIT_FIFO,
-       INIT_DBUS,
-       INIT_END
-};
-
 static void init_display_states(void *data)
 {
        struct display_plugin *dp = (struct display_plugin *) data;
@@ -245,39 +236,7 @@ static void display_init(void *data)
 
 static void display_exit(void *data)
 {
-       int i = INIT_END;
-
-       display_set_display_ops_status(DEVICE_OPS_STATUS_STOP);
-
-       /* Set current state to S_NORMAL */
-       set_pm_cur_state(S_NORMAL);
-       set_setting_pmstate(get_pm_cur_state());
-       /* timeout is not needed */
-       display_state_transition_reset_state_transition_timeout(TIMEOUT_NONE);
-
-       display_ops_exit(NULL);
-
-       for (i = i - 1; i >= INIT_SETTING; i--) {
-               switch (i) {
-               case INIT_SETTING:
-                       exit_setting();
-                       break;
-               case INIT_INTERFACE:
-                       exit_sysfs();
-                       break;
-               case INIT_POLL:
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_BACKGROUND, display_app_background);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_FOREGROUND, display_app_foreground);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_TERMINATED, display_app_terminated);
-
-                       break;
-               }
-       }
-
-       display_unregister_dependent_device();
-       free_lock_info_list();
-
-       _I("Stop power manager.");
+       return;
 }
 
 static int display_start(enum device_flags flags)
index df36e8e..4799a42 100644 (file)
@@ -90,27 +90,6 @@ void setup_display_plugin_backlight_ops(struct display_plugin *dp)
        dp->backlight = &backlight_ops;
 }
 
-int exit_sysfs(void)
-{
-       const struct device_ops *ops = NULL;
-
-       display_backlight_update_by_default_brightness();
-
-       display_panel_exit_dpms();
-
-       ops = find_device("touchscreen");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       ops = find_device("touchkey");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       unregister_notifier(DEVICE_NOTIFIER_VITAL_STATE, vital_state_changed);
-
-       return 0;
-}
-
 static void __CONSTRUCTOR__ initialize(void)
 {
        display_conf = get_var_display_config();
index 341527d..68e444b 100644 (file)
@@ -135,17 +135,6 @@ inline struct state* state_st(enum state_t state)
        return &states[state];
 }
 
-
-
-enum {
-       INIT_SETTING = 0,
-       INIT_INTERFACE,
-       INIT_POLL,
-       INIT_FIFO,
-       INIT_DBUS,
-       INIT_END
-};
-
 static void init_display_states(void *data)
 {
        struct display_plugin *dp = (struct display_plugin *) data;
@@ -193,39 +182,7 @@ static void display_init(void *data)
 
 static void display_exit(void *data)
 {
-       int i = INIT_END;
-
-       display_set_display_ops_status(DEVICE_OPS_STATUS_STOP);
-
-       /* Set current state to S_NORMAL */
-       set_pm_cur_state(S_NORMAL);
-       set_setting_pmstate(get_pm_cur_state());
-       /* timeout is not needed */
-       display_state_transition_reset_state_transition_timeout(TIMEOUT_NONE);
-
-       display_ops_exit(NULL);
-
-       for (i = i - 1; i >= INIT_SETTING; i--) {
-               switch (i) {
-               case INIT_SETTING:
-                       exit_setting();
-                       break;
-               case INIT_INTERFACE:
-                       exit_sysfs();
-                       break;
-               case INIT_POLL:
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_BACKGROUND, display_app_background);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_FOREGROUND, display_app_foreground);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_TERMINATED, display_app_terminated);
-
-                       break;
-               }
-       }
-
-       display_unregister_dependent_device();
-       free_lock_info_list();
-
-       _I("Stop power manager.");
+       return;
 }
 
 static int display_start(enum device_flags flags)
index 9857e12..3abf17c 100644 (file)
@@ -74,27 +74,6 @@ void setup_display_plugin_backlight_ops(struct display_plugin *dp)
        dp->backlight = &backlight_ops;
 }
 
-int exit_sysfs(void)
-{
-       const struct device_ops *ops = NULL;
-
-       display_backlight_update_by_default_brightness();
-
-       display_panel_exit_dpms();
-
-       ops = find_device("touchscreen");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       ops = find_device("touchkey");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       unregister_notifier(DEVICE_NOTIFIER_VITAL_STATE, vital_state_changed);
-
-       return 0;
-}
-
 static void __CONSTRUCTOR__ initialize(void)
 {
        display_conf = get_var_display_config();
index 94f6823..7f8b507 100644 (file)
@@ -902,15 +902,6 @@ static void init_lcd_operation(void)
                display_register_dependent_device(ops);
 }
 
-enum {
-       INIT_SETTING = 0,
-       INIT_INTERFACE,
-       INIT_POLL,
-       INIT_FIFO,
-       INIT_DBUS,
-       INIT_END
-};
-
 static void init_display_states(void *data)
 {
        struct display_plugin *dp = (struct display_plugin *) data;
@@ -998,41 +989,8 @@ static void display_init(void *data)
 
 static void display_exit(void *data)
 {
-       int i = INIT_END;
-
-       display_set_display_ops_status(DEVICE_OPS_STATUS_STOP);
-
-       /* Set current state to S_NORMAL */
-       set_pm_cur_state(S_NORMAL);
-       set_setting_pmstate(get_pm_cur_state());
-       /* timeout is not needed */
-       display_state_transition_reset_state_transition_timeout(TIMEOUT_NONE);
-
        unregister_kernel_uevent_control(&sec_dsim_uevent_ops);
-
-       display_ops_exit(NULL);
-
-       for (i = i - 1; i >= INIT_SETTING; i--) {
-               switch (i) {
-               case INIT_SETTING:
-                       exit_setting();
-                       break;
-               case INIT_INTERFACE:
-                       exit_sysfs();
-                       break;
-               case INIT_POLL:
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_BACKGROUND, display_app_background);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_FOREGROUND, display_app_foreground);
-                       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_TERMINATED, display_app_terminated);
-
-                       break;
-               }
-       }
-
-       display_unregister_dependent_device();
-       free_lock_info_list();
-
-       _I("Stop power manager.");
+       return;
 }
 
 static int display_start(enum device_flags flags)
index 135740c..bb2469c 100644 (file)
@@ -238,23 +238,6 @@ int init_sysfs(unsigned int flags)
        return 0;
 }
 
-int exit_sysfs(void)
-{
-       const struct device_ops *ops = NULL;
-
-       display_backlight_update_by_default_brightness();
-
-       display_panel_exit_dpms();
-
-       ops = find_device("touchscreen");
-       if (!check_default(ops))
-               ops->start(NORMAL_MODE);
-
-       unregister_notifier(DEVICE_NOTIFIER_VITAL_STATE, vital_state_changed);
-
-       return 0;
-}
-
 static void __CONSTRUCTOR__ initialize(void)
 {
        display_conf = get_var_display_config();
index c3d87bf..6f0fb1c 100644 (file)
@@ -58,7 +58,6 @@ enum {
 };
 
 int init_sysfs(unsigned int);
-int exit_sysfs(void);
 
 struct display_backlight_ops *get_var_backlight_ops(void);
 
index c0a42d3..2b346af 100644 (file)
@@ -629,18 +629,51 @@ static void display_init(void *data)
 
 static void display_exit(void *data)
 {
+       const struct device_ops *ops = NULL;
+
        if (!display_plugin_device_ops || !display_plugin_device_ops->exit)
                return;
 
        display_plugin_device_ops->exit(data);
 
+       display_set_display_ops_status(DEVICE_OPS_STATUS_STOP);
+
+       /* Set current state to S_NORMAL */
+       set_pm_cur_state(S_NORMAL);
+       set_setting_pmstate(get_pm_cur_state());
+       /* timeout is not needed */
+       display_state_transition_reset_state_transition_timeout(TIMEOUT_NONE);
+
        unregister_kernel_uevent_control(&lcd_uevent_ops);
 
-       display_signal_unregister_display_brightness_notifier();
+       display_ops_exit(NULL);
+
+       exit_setting();
+
+       display_backlight_update_by_default_brightness();
+
+       display_panel_exit_dpms();
+
+       ops = find_device("touchscreen");
+       if (!check_default(ops))
+               ops->start(NORMAL_MODE);
+
+       ops = find_device("touchkey");
+       if (!check_default(ops))
+               ops->start(NORMAL_MODE);
+
+       unregister_notifier(DEVICE_NOTIFIER_VITAL_STATE, vital_state_changed);
+       unregister_notifier(DEVICE_NOTIFIER_DELAYED_INIT, delayed_init_done);
+       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_BACKGROUND, display_app_background);
+       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_FOREGROUND, display_app_foreground);
+       unregister_notifier(DEVICE_NOTIFIER_APPLICATION_TERMINATED, display_app_terminated);
        display_misc_unregister_battery_health_notifier();
+       display_signal_unregister_display_brightness_notifier();
        unregister_notifier(DEVICE_NOTIFIER_POWER_RESUME_FROM_ECHO_MEM, power_resume_from_echomem_callback);
        unregister_notifier(DEVICE_NOTIFIER_POWEROFF_TRIGGERED, poweroff_triggered_callback);
-       unregister_notifier(DEVICE_NOTIFIER_DELAYED_INIT, delayed_init_done);
+
+       display_unregister_dependent_device();
+       free_lock_info_list();
 
        unload_display_hal_backend();
 }