display: Relocate ambient-mode file to core 47/292747/15
authorYunhee Seo <yuni.seo@samsung.com>
Thu, 11 May 2023 07:08:24 +0000 (16:08 +0900)
committerYunhee Seo <yuni.seo@samsung.com>
Tue, 30 May 2023 11:48:43 +0000 (20:48 +0900)
Ambient-mode file has a lot of dependent on display modules.
Thus, this patch is needed for the next plugin separation works.
To relocate ambient-mode, set_dim_state() is changed to plugin interface call.

This function is added to below display-misc.
int display_plugin_set_dim_state(bool on);

Actually, set_dim_state is only used in the ambient-mode.
The meaning of function name and role is different.
It does not affect setting dim state.
Also, in the code context, there is no transition to DIM status.

Thus, during plugin refactoring work, function name/location should be discussed.

In addition, unused code is removed from plugins except wearable
Because, "INTERNAL_LOCK_AMBIENT" is only used in wearable.

Change-Id: Ic953a1d6bd311d87bdaa7e838bcd15c68d0dc67c
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
plugins/iot-headed/display/core.c
plugins/mobile/display/core.c
plugins/tv/display/core.c
plugins/wearable/display/core.c
src/display/ambient-mode.c [moved from src/display/plugin-common/ambient-mode.c with 99% similarity]
src/display/ambient-mode.h [moved from src/display/plugin-common/ambient-mode.h with 100% similarity]
src/display/core.h
src/display/display-plugin.c
src/display/display-plugin.h

index 9cfcc87..d6baafc 100644 (file)
@@ -356,9 +356,6 @@ static void del_state_cond(void *data, enum state_t state)
        pid = (pid_t)((intptr_t)data);
        _I("delete prohibit %s condition by timeout (%d)", states[state].name, pid);
 
-       if (pid == INTERNAL_LOCK_AMBIENT)
-               ambient_check_invalid_state(pid);
-
        tmp = find_node(state, pid);
        del_node(state, tmp);
        set_unlock_time(pid, state);
@@ -1622,6 +1619,8 @@ static int display_probe(void *data)
        init_display_states(dp);
        setup_display_plugin_backlight_ops(dp);
        dp->delete_state_cond = del_state_cond;
+       dp->set_dim_state = set_dim_state;
+       setup_display_plugin_backlight_ops(dp);
 
        /* check display feature */
        if (!is_feature_display_supported())
index a35689d..2aac6cc 100644 (file)
@@ -363,9 +363,6 @@ static void del_state_cond(void *data, enum state_t state)
        pid = (pid_t)((intptr_t)data);
        _I("delete prohibit %s condition by timeout (%d)", states[state].name, pid);
 
-       if (pid == INTERNAL_LOCK_AMBIENT)
-               ambient_check_invalid_state(pid);
-
        tmp = find_node(state, pid);
        del_node(state, tmp);
        set_unlock_time(pid, state);
@@ -1632,6 +1629,8 @@ static int display_probe(void *data)
        init_display_states(dp);
        setup_display_plugin_backlight_ops(dp);
        dp->delete_state_cond = del_state_cond;
+       dp->set_dim_state = set_dim_state;
+       setup_display_plugin_backlight_ops(dp);
 
        /**
         * load display service
index 5f55e81..9e298c5 100644 (file)
@@ -356,9 +356,6 @@ static void del_state_cond(void *data, enum state_t state)
        pid = (pid_t)((intptr_t)data);
        _I("delete prohibit %s condition by timeout (%d)", states[state].name, pid);
 
-       if (pid == INTERNAL_LOCK_AMBIENT)
-               ambient_check_invalid_state(pid);
-
        tmp = find_node(state, pid);
        del_node(state, tmp);
        set_unlock_time(pid, state);
@@ -1623,6 +1620,8 @@ static int display_probe(void *data)
        init_display_states(dp);
        setup_display_plugin_backlight_ops(dp);
        dp->delete_state_cond = del_state_cond;
+       dp->set_dim_state = set_dim_state;
+       setup_display_plugin_backlight_ops(dp);
 
        /**
         * load display service
index 4976023..b3ba04f 100644 (file)
@@ -1969,6 +1969,8 @@ static int display_probe(void *data)
        init_display_states(dp);
        setup_display_plugin_backlight_ops(dp);
        dp->delete_state_cond = del_state_cond;
+       dp->set_dim_state = set_dim_state;
+       setup_display_plugin_backlight_ops(dp);
 
        /**
         * load display service
similarity index 99%
rename from src/display/plugin-common/ambient-mode.c
rename to src/display/ambient-mode.c
index 5015a6a..16573e2 100644 (file)
@@ -26,6 +26,7 @@
 #include "display.h"
 #include "display-ops.h"
 #include "display-panel.h"
+#include "display-plugin.h"
 #include "display-state-transition.h"
 #include "shared/device-notifier.h"
 #include "shared/devices.h"
@@ -99,7 +100,7 @@ static void ambient_set_condition(keynode_t *key_nodes, void *data)
        state = (ambient_condition == 0 ? 0 : 1);
        device_notify(DEVICE_NOTIFIER_DISPLAY_AMBIENT_CONDITION, (void *)&state);
 
-       set_dim_state(state);
+       display_plugin_set_dim_state(state);
 }
 
 int ambient_set_state(int on)
index b0141cd..fb1be24 100644 (file)
@@ -144,7 +144,6 @@ void lcd_on_procedure(int state, enum device_flags flag);
 void lcd_off_procedure(enum device_flags flag);
 bool touch_event_blocked(void);
 void broadcast_lcd_off_late(enum device_flags flags);
-void set_dim_state(bool on);
 
 /* auto-brightness.c */
 void set_brightness_changed_state(void);
index 62af72d..dd5e0fb 100644 (file)
@@ -230,4 +230,14 @@ int display_plugin_config_get_timeout_enable(bool *timeout_enable)
        }
 
        return -EOPNOTSUPP;
+}
+
+int display_plugin_set_dim_state(bool on)
+{
+       if (g_display_plugin.set_dim_state) {
+               g_display_plugin.set_dim_state(on);
+               return 0;
+       }
+
+       return -EOPNOTSUPP;
 }
\ No newline at end of file
index b98cebb..54e1240 100644 (file)
@@ -66,6 +66,7 @@ struct display_plugin {
        int (*auto_brightness_control) (enum brightness_request_e request, int set_brightness);
        /* FIXME: function names will be redefined */
        void (*delete_state_cond) (void *data, enum state_t s_state);
+       void (*set_dim_state) (bool on);
 
        struct display_config *config;
        struct display_backlight_ops *backlight;
@@ -83,6 +84,7 @@ int display_plugin_get_system_wakeup_flag(bool *flag);
 int display_plugin_set_system_wakeup_flag(bool flag);
 const char* display_plugin_device_flags_to_string(enum device_flags flags);
 int display_plugin_auto_brightness_control(enum brightness_request_e request, int set_brightness);
+int display_plugin_set_dim_state(bool on);
 
 int display_plugin_backlight_get_lcd_power(void);
 int display_plugin_backlight_set_brightness(int brightness);