From db72427ee727ceea9c42d9107253c4d6f212e84e Mon Sep 17 00:00:00 2001 From: Youngjae Cho Date: Fri, 18 Aug 2023 15:19:55 +0900 Subject: [PATCH] display: Add display_plugin_config_load() The display core has become responsible for letting display plugins load its configuration. It is handled via display_plugin_config_load(). The plugins' routine that was directly invoking display_load_config() has been removed accordingly. Change-Id: I51820d8ba88cd43cda14a5ca3393d46c3c474c21 Signed-off-by: Youngjae Cho --- plugins/iot-headed/display/core.c | 7 ------- plugins/mobile/display/core.c | 8 -------- plugins/tv/display/core.c | 7 ------- plugins/wearable/display/core.c | 7 ------- src/display/display-plugin.c | 15 +++++++++++++++ src/display/display-plugin.h | 1 + src/display/display.c | 3 ++- 7 files changed, 18 insertions(+), 30 deletions(-) diff --git a/plugins/iot-headed/display/core.c b/plugins/iot-headed/display/core.c index 6714ec8..1eb55c5 100644 --- a/plugins/iot-headed/display/core.c +++ b/plugins/iot-headed/display/core.c @@ -145,13 +145,6 @@ static int display_probe(void *data) static void display_init(void *data) { - int ret; - - /* load configutation */ - ret = display_load_config(&display_conf); - if (ret < 0) - _W("Failed to load '%s', use default value: %d", - DISPLAY_CONF_FILE, ret); } static void display_exit(void *data) diff --git a/plugins/mobile/display/core.c b/plugins/mobile/display/core.c index 33759c7..8cfbaf2 100644 --- a/plugins/mobile/display/core.c +++ b/plugins/mobile/display/core.c @@ -220,14 +220,6 @@ static int display_probe(void *data) static void display_init(void *data) { - int ret; - - /* load configutation */ - ret = display_load_config(&display_conf); - if (ret < 0) - _W("Failed to load '%s', use default value: %d", - DISPLAY_CONF_FILE, ret); - display_misc_set_battery_charging_status_flag(); } diff --git a/plugins/tv/display/core.c b/plugins/tv/display/core.c index e82416d..7aa70c6 100644 --- a/plugins/tv/display/core.c +++ b/plugins/tv/display/core.c @@ -168,13 +168,6 @@ static int display_probe(void *data) static void display_init(void *data) { - int ret; - - /* load configutation */ - ret = display_load_config(&display_conf); - if (ret < 0) - _W("Failed to load '%s', use default value: %d", - DISPLAY_CONF_FILE, ret); } static void display_exit(void *data) diff --git a/plugins/wearable/display/core.c b/plugins/wearable/display/core.c index 563e922..99c0409 100644 --- a/plugins/wearable/display/core.c +++ b/plugins/wearable/display/core.c @@ -967,15 +967,8 @@ static const struct uevent_handler sec_dsim_uevent_ops = { static void display_init(void *data) { - int ret; unsigned int flags = (WITHOUT_STARTNOTI | FLAG_X_DPMS); - /* load configutation */ - ret = display_load_config(&display_conf); - if (ret < 0) - _W("Failed to load '%s', use default value: %d", - DISPLAY_CONF_FILE, ret); - register_kernel_uevent_control(&sec_dsim_uevent_ops); syscommon_notifier_subscribe_notify(DEVICED_NOTIFIER_LCD_AUTOBRT_SENSING, display_auto_brightness_sensing); diff --git a/src/display/display-plugin.c b/src/display/display-plugin.c index 8f6a08b..74a82ba 100644 --- a/src/display/display-plugin.c +++ b/src/display/display-plugin.c @@ -18,6 +18,7 @@ #include #include "display-plugin.h" +#include "display-config.h" #include "shared/log-macro.h" struct display_plugin g_display_plugin; @@ -258,6 +259,20 @@ int display_plugin_state_proc_change_state(unsigned int cond, pid_t pid) return g_display_plugin.proc_change_state(cond, pid); } +int display_plugin_config_load(void) +{ + int ret; + + if (!g_display_plugin.config) + return -EINVAL; + + ret = display_load_config(g_display_plugin.config); + if (ret < 0) + return ret; + + return 0; +} + int display_plugin_config_get_timeout_enable(bool *timeout_enable) { if (!timeout_enable) diff --git a/src/display/display-plugin.h b/src/display/display-plugin.h index 5bab3c4..7b567a5 100644 --- a/src/display/display-plugin.h +++ b/src/display/display-plugin.h @@ -115,6 +115,7 @@ bool display_plugin_state_is_there_proc_change_state(void); int display_plugin_state_proc_change_state(unsigned int cond, pid_t pid); /* FIXME: display config getter/setter is also temporary in this file */ +int display_plugin_config_load(void); int display_plugin_config_get_timeout_enable(bool *timeout_enable); int display_plugin_config_get_lcdoff_timeout(int *lcdoff_timeout); int display_plugin_config_get_lcd_always_on(int *lcd_always_on); diff --git a/src/display/display.c b/src/display/display.c index 6a104dc..131a2a0 100644 --- a/src/display/display.c +++ b/src/display/display.c @@ -529,7 +529,8 @@ static void display_init(void *data) return; g_unix_signal_add(SIGHUP, handle_sighup, (gpointer) SIGHUP); - /* FIMXE: display config load should be put here*/ + + display_plugin_config_load(); display_plugin_device_ops->init(data); register_kernel_uevent_control(&lcd_uevent_ops); -- 2.7.4