From e3265620ec8eae1044bd857cd41c49060db97f19 Mon Sep 17 00:00:00 2001 From: Yunhee Seo Date: Mon, 20 Feb 2023 17:23:16 +0900 Subject: [PATCH] display: Move getter and setter display frame rate from plugins to core display module Remove and redefine frame rate getter/setter. These functions are added below display-panel. int display_panel_set_frame_rate(int frame_rate); int display_panel_get_frame_rate(int *frame_rate); -> With these getter and setter, it is possible to get and set display frame rate value. Change-Id: Ie12367bbc0177fdfc3119ec059b75ce89f9055d6 Signed-off-by: Yunhee Seo --- plugins/iot-headed/display/device-interface.c | 48 --------------------------- plugins/mobile/display/device-interface.c | 48 --------------------------- plugins/tv/display/device-interface.c | 48 --------------------------- plugins/wearable/display/device-interface.c | 48 --------------------------- src/display/device-interface.h | 2 -- src/display/display-dbus.c | 2 +- src/display/display-panel.c | 48 +++++++++++++++++++++++++++ src/display/display-panel.h | 2 ++ 8 files changed, 51 insertions(+), 195 deletions(-) diff --git a/plugins/iot-headed/display/device-interface.c b/plugins/iot-headed/display/device-interface.c index 98f0063..a719e4f 100644 --- a/plugins/iot-headed/display/device-interface.c +++ b/plugins/iot-headed/display/device-interface.c @@ -449,52 +449,6 @@ static int get_brightness_by_light_sensor(float lmax, float lmin, float light, i return 0; } -static int get_frame_rate(int *rate) -{ - if (!rate) - return -EINVAL; - - if (!display_dev_available) - return -ENOTSUP; - - return hal_device_display_get_frame_rate(rate); -} - -static int set_frame_rate(int rate) -{ - int ret = 0; - static int fmin = -1, fmax = -1; - - if (!display_dev_available) - return -ENOTSUP; - - if (fmin < 0) { - ret = hal_device_display_get_min_frame_rate(&fmin); - if (ret < 0) { - _E("Failed to get min frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate < fmin)) { - _E("Invalid rate(%d). (Valid rate: %d <= rate)", rate, fmin); - return -EINVAL; - } - - if (fmax < 0) { - ret = hal_device_display_get_max_frame_rate(&fmax); - if (ret < 0) { - _E("Failed to get max frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate > fmax)) { - _E("Invalid rate(%d). (Valid rate: rate <= %d)", rate, fmax); - return -EINVAL; - } - - return hal_device_display_set_frame_rate(rate); -} - /* It was operated only AOD enter & leave */ static int backlight_transit_state(int state) { @@ -609,8 +563,6 @@ static struct _backlight_ops backlight_ops = { .get_brightness = get_brightness, .restore_brightness_func = restore_brightness_func, .get_brightness_by_light_sensor = get_brightness_by_light_sensor, - .get_frame_rate = get_frame_rate, - .set_frame_rate = set_frame_rate, .transit_state = backlight_transit_state, .transit_brt = change_brightness, .blink = blink, diff --git a/plugins/mobile/display/device-interface.c b/plugins/mobile/display/device-interface.c index bf4fab3..fe0fd8b 100644 --- a/plugins/mobile/display/device-interface.c +++ b/plugins/mobile/display/device-interface.c @@ -448,52 +448,6 @@ static int get_brightness_by_light_sensor(float lmax, float lmin, float light, i return 0; } -static int get_frame_rate(int *rate) -{ - if (!rate) - return -EINVAL; - - if (!display_dev_available) - return -ENOTSUP; - - return hal_device_display_get_frame_rate(rate); -} - -static int set_frame_rate(int rate) -{ - int ret = 0; - static int fmin = -1, fmax = -1; - - if (!display_dev_available) - return -ENOTSUP; - - if (fmin < 0) { - ret = hal_device_display_get_min_frame_rate(&fmin); - if (ret < 0) { - _E("Failed to get min frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate < fmin)) { - _E("Invalid rate(%d). (Valid rate: %d <= rate)", rate, fmin); - return -EINVAL; - } - - if (fmax < 0) { - ret = hal_device_display_get_max_frame_rate(&fmax); - if (ret < 0) { - _E("Failed to get max frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate > fmax)) { - _E("Invalid rate(%d). (Valid rate: rate <= %d)", rate, fmax); - return -EINVAL; - } - - return hal_device_display_set_frame_rate(rate); -} - /* It was operated only AOD enter & leave */ static int backlight_transit_state(int state) { @@ -608,8 +562,6 @@ static struct _backlight_ops backlight_ops = { .get_brightness = get_brightness, .restore_brightness_func = restore_brightness_func, .get_brightness_by_light_sensor = get_brightness_by_light_sensor, - .get_frame_rate = get_frame_rate, - .set_frame_rate = set_frame_rate, .transit_state = backlight_transit_state, .transit_brt = change_brightness, .blink = blink, diff --git a/plugins/tv/display/device-interface.c b/plugins/tv/display/device-interface.c index f38cdb3..d5caa72 100644 --- a/plugins/tv/display/device-interface.c +++ b/plugins/tv/display/device-interface.c @@ -449,52 +449,6 @@ static int get_brightness_by_light_sensor(float lmax, float lmin, float light, i return 0; } -static int get_frame_rate(int *rate) -{ - if (!rate) - return -EINVAL; - - if (!display_dev_available) - return -ENOTSUP; - - return hal_device_display_get_frame_rate(rate); -} - -static int set_frame_rate(int rate) -{ - int ret = 0; - static int fmin = -1, fmax = -1; - - if (!display_dev_available) - return -ENOTSUP; - - if (fmin < 0) { - ret = hal_device_display_get_min_frame_rate(&fmin); - if (ret < 0) { - _E("Failed to get min frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate < fmin)) { - _E("Invalid rate(%d). (Valid rate: %d <= rate)", rate, fmin); - return -EINVAL; - } - - if (fmax < 0) { - ret = hal_device_display_get_max_frame_rate(&fmax); - if (ret < 0) { - _E("Failed to get max frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate > fmax)) { - _E("Invalid rate(%d). (Valid rate: rate <= %d)", rate, fmax); - return -EINVAL; - } - - return hal_device_display_set_frame_rate(rate); -} - /* It was operated only AOD enter & leave */ static int backlight_transit_state(int state) { @@ -609,8 +563,6 @@ static struct _backlight_ops backlight_ops = { .get_brightness = get_brightness, .restore_brightness_func = restore_brightness_func, .get_brightness_by_light_sensor = get_brightness_by_light_sensor, - .get_frame_rate = get_frame_rate, - .set_frame_rate = set_frame_rate, .transit_state = backlight_transit_state, .transit_brt = change_brightness, .blink = blink, diff --git a/plugins/wearable/display/device-interface.c b/plugins/wearable/display/device-interface.c index 4fe1a14..72cf022 100644 --- a/plugins/wearable/display/device-interface.c +++ b/plugins/wearable/display/device-interface.c @@ -461,52 +461,6 @@ static int get_brightness_by_light_sensor(float lmax, float lmin, float light, i return 0; } -static int get_frame_rate(int *rate) -{ - if (!rate) - return -EINVAL; - - if (!display_dev_available) - return -ENOTSUP; - - return hal_device_display_get_frame_rate(rate); -} - -static int set_frame_rate(int rate) -{ - int ret = 0; - static int fmin = -1, fmax = -1; - - if (!display_dev_available) - return -ENOTSUP; - - if (fmin < 0) { - ret = hal_device_display_get_min_frame_rate(&fmin); - if (ret < 0) { - _E("Failed to get min frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate < fmin)) { - _E("Invalid rate(%d). (Valid rate: %d <= rate)", rate, fmin); - return -EINVAL; - } - - if (fmax < 0) { - ret = hal_device_display_get_max_frame_rate(&fmax); - if (ret < 0) { - _E("Failed to get max frate rate: %d", ret); - return ret; - } - } - if ((ret != -ENODEV) && (rate > fmax)) { - _E("Invalid rate(%d). (Valid rate: rate <= %d)", rate, fmax); - return -EINVAL; - } - - return hal_device_display_set_frame_rate(rate); -} - /* It was operated only AOD enter & leave */ static int backlight_transit_state(int state) { @@ -674,8 +628,6 @@ static struct _backlight_ops backlight_ops = { .get_brightness = get_brightness, .restore_brightness_func = restore_brightness_func, .get_brightness_by_light_sensor = get_brightness_by_light_sensor, - .get_frame_rate = get_frame_rate, - .set_frame_rate = set_frame_rate, .transit_state = backlight_transit_state, .transit_brt = change_brightness, .blink = blink, diff --git a/src/display/device-interface.h b/src/display/device-interface.h index 1a33208..c98b8b2 100644 --- a/src/display/device-interface.h +++ b/src/display/device-interface.h @@ -80,8 +80,6 @@ struct _backlight_ops { int (*get_brightness_raw)(int *val); void (*restore_brightness_func)(void); int (*get_brightness_by_light_sensor)(float lmax, float lmin, float light, int *brt); - int (*get_frame_rate)(int *rate); - int (*set_frame_rate)(int rate); int (*transit_state)(int state); void (*transit_brt)(int start, int end, int step); void (*blink)(int timeout); diff --git a/src/display/display-dbus.c b/src/display/display-dbus.c index 19c30f2..7d31655 100644 --- a/src/display/display-dbus.c +++ b/src/display/display-dbus.c @@ -661,7 +661,7 @@ static GVariant *dbus_setrefreshrate(GDBusConnection *conn, backlight_ops->off(NORMAL_MODE); _D("app : %d, value : %d", app, val); - ret = backlight_ops->set_frame_rate(val); + ret = display_panel_set_frame_rate(val); if (ret < 0) _E("Failed to set frame rate (%d)", ret); diff --git a/src/display/display-panel.c b/src/display/display-panel.c index 8c88db2..7f936dd 100644 --- a/src/display/display-panel.c +++ b/src/display/display-panel.c @@ -211,4 +211,52 @@ int display_panel_get_panel_mode(enum display_panel_mode *mode) *mode = val; return 0; +} + +/* FIXME: This function is deprecated, should be fixed after plugin refactoring */ +int display_panel_set_frame_rate(int frame_rate) +{ + int ret = 0; + static int fmin = -1, fmax = -1; + + if (!display_is_hal_backend_available()) + return -ENOTSUP; + + if (fmin < 0) { + ret = hal_device_display_get_min_frame_rate(&fmin); + if (ret < 0) { + _E("Failed to get min frate rate: %d", ret); + return ret; + } + } + if ((ret != -ENODEV) && (frame_rate < fmin)) { + _E("Invalid rate(%d). (Valid rate: %d <= rate)", frame_rate, fmin); + return -EINVAL; + } + + if (fmax < 0) { + ret = hal_device_display_get_max_frame_rate(&fmax); + if (ret < 0) { + _E("Failed to get max frate rate: %d", ret); + return ret; + } + } + if ((ret != -ENODEV) && (frame_rate > fmax)) { + _E("Invalid rate(%d). (Valid rate: rate <= %d)", frame_rate, fmax); + return -EINVAL; + } + + return hal_device_display_set_frame_rate(frame_rate); +} + +/* FIXME: This function is deprecated, should be fixed after plugin refactoring */ +int display_panel_get_frame_rate(int *frame_rate) +{ + if (!frame_rate) + return -EINVAL; + + if (!display_is_hal_backend_available()) + return -ENOTSUP; + + return hal_device_display_get_frame_rate(frame_rate); } \ No newline at end of file diff --git a/src/display/display-panel.h b/src/display/display-panel.h index eb92707..a287557 100644 --- a/src/display/display-panel.h +++ b/src/display/display-panel.h @@ -31,5 +31,7 @@ int display_panel_set_image_effect(enum display_image_effect effect); int display_panel_get_image_effect(enum display_image_effect *effect); int display_panel_set_panel_mode(enum display_panel_mode mode); int display_panel_get_panel_mode(enum display_panel_mode *mode); +int display_panel_set_frame_rate(int frame_rate); +int display_panel_get_frame_rate(int *frame_rate); #endif /* __DISPLAY_PANEL_H__ */ \ No newline at end of file -- 2.7.4