defaultly enable TDM_HWC_CAPABILITY_FENCE 16/255716/3
authorChangyeon Lee <cyeon.lee@samsung.com>
Tue, 23 Mar 2021 02:02:34 +0000 (11:02 +0900)
committerChangyeon Lee <cyeon.lee@samsung.com>
Tue, 30 Mar 2021 08:54:03 +0000 (17:54 +0900)
Change-Id: I4126a1b1c36237f9191ff22cf1ffbb8f519abd07

src/libhal-backend-tdm-vc4/tdm_vc4_hwc.c
src/libtdm-vc4/tdm_vc4_hwc.c

index 3fb0d54..c881bc0 100644 (file)
@@ -696,20 +696,20 @@ vc4_hwc_get_video_supported_formats(hal_tdm_hwc *hwc, const tbm_format **formats
 hal_tdm_error
 vc4_hwc_get_capabilities(hal_tdm_hwc *hwc, hal_tdm_hwc_capability *capabilities)
 {
+       tdm_vc4_hwc *hwc_data = hwc;
+       tdm_vc4_display *display_data = hwc_data->output_data->display_data;
+
        TDM_BACKEND_RETURN_VAL_IF_FAIL(hwc != NULL, HAL_TDM_ERROR_INVALID_PARAMETER);
        TDM_BACKEND_RETURN_VAL_IF_FAIL(capabilities != NULL, HAL_TDM_ERROR_INVALID_PARAMETER);
+       TDM_BACKEND_RETURN_VAL_IF_FAIL(hwc_data->output_data != NULL, HAL_TDM_ERROR_INVALID_PARAMETER);
 
-       *capabilities |= HAL_TDM_HWC_CAPABILITY_VIDEO_SCALE;
+       display_data = hwc_data->output_data->display_data;
+       TDM_BACKEND_RETURN_VAL_IF_FAIL(display_data != NULL, HAL_TDM_ERROR_INVALID_PARAMETER);
 
-       /* temporary enable/disable */
-       char *env;
+       *capabilities |= HAL_TDM_HWC_CAPABILITY_VIDEO_SCALE;
 
-       env = getenv("HAL_TDM_HWC_FENCE");
-       if (env) {
-               if (atoi(env))
-                       *capabilities |= HAL_TDM_HWC_CAPABILITY_FENCE;
-       }
-       /* temporary enable/disable */
+       if (display_data->has_atomic)
+               *capabilities |= HAL_TDM_HWC_CAPABILITY_FENCE;
 
        return HAL_TDM_ERROR_NONE;
 }
index 3837fd6..df83111 100644 (file)
@@ -697,20 +697,20 @@ vc4_hwc_get_video_supported_formats(tdm_hwc *hwc, const tbm_format **formats, in
 tdm_error
 vc4_hwc_get_capabilities(tdm_hwc *hwc, tdm_hwc_capability *capabilities)
 {
+       tdm_vc4_hwc_data *hwc_data = hwc;
+       tdm_vc4_data *vc4_data;
+
        RETURN_VAL_IF_FAIL(hwc != NULL, TDM_ERROR_INVALID_PARAMETER);
        RETURN_VAL_IF_FAIL(capabilities != NULL, TDM_ERROR_INVALID_PARAMETER);
+       RETURN_VAL_IF_FAIL(hwc_data->output_data != NULL, TDM_ERROR_INVALID_PARAMETER);
 
-       *capabilities |= TDM_HWC_CAPABILITY_VIDEO_SCALE;
+       vc4_data = hwc_data->output_data->vc4_data;
+       RETURN_VAL_IF_FAIL(vc4_data != NULL, TDM_ERROR_INVALID_PARAMETER);
 
-       /* temporary enable/disable */
-       char *env;
+       *capabilities |= TDM_HWC_CAPABILITY_VIDEO_SCALE;
 
-       env = getenv("TDM_HWC_FENCE");
-       if (env) {
-               if (atoi(env))
-                       *capabilities |= TDM_HWC_CAPABILITY_FENCE;
-       }
-       /* temporary enable/disable */
+       if (vc4_data->has_atomic)
+               *capabilities |= TDM_HWC_CAPABILITY_FENCE;
 
        return TDM_ERROR_NONE;
 }