tdm_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h target_buffer, tdm_hwc_region damage);
/**
+ * @brief Unset the client(relative to the TDM) target buffer
+ * @details TODO
+ * @param[in] output A output object
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ * @since 2.0.0
+ */
+tdm_error
+tdm_output_hwc_unset_client_target_buffer(tdm_output *output);
+
+/**
* @brief Validate the output
* @details Instructs the device to inspect all of the layer state and
* determine if there are any composition type changes necessary before
tdm_error (*output_hwc_set_client_target_buffer)(tdm_output *output, tbm_surface_h target_buffer, tdm_hwc_region damage);
/**
+ * @brief Unset the client(relative to the TDM) target buffer
+ * @details TODO
+ * @param[in] output A output object
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ * @since 2.0.0
+ */
+ tdm_error (*output_hwc_unset_client_target_buffer)(tdm_output *output);
+
+ /**
* @brief Validate the output
* @details Instructs the device to inspect all of the layer state and
* determine if there are any composition type changes necessary before
return ret;
}
+EXTERN tdm_error
+tdm_output_hwc_unset_client_target_buffer(tdm_output *output)
+{
+ tdm_func_output *func_output = NULL;
+
+ OUTPUT_FUNC_ENTRY();
+
+ _pthread_mutex_lock(&private_display->lock);
+
+ if (!(private_output->caps.capabilities & TDM_OUTPUT_CAPABILITY_HWC)) {
+ TDM_ERR("output(%p) not support HWC", private_output);
+ _pthread_mutex_unlock(&private_display->lock);
+ return TDM_ERROR_BAD_REQUEST;
+ }
+
+ func_output = &private_display->func_output;
+
+ if (!func_output->output_hwc_unset_client_target_buffer) {
+ /* LCOV_EXCL_START */
+ _pthread_mutex_unlock(&private_display->lock);
+ TDM_ERR("not implemented!!");
+ return TDM_ERROR_NOT_IMPLEMENTED;
+ /* LCOV_EXCL_STOP */
+ }
+
+ ret = func_output->output_hwc_unset_client_target_buffer(private_output->output_backend);
+
+ _pthread_mutex_unlock(&private_display->lock);
+
+ return ret;
+}
+
tdm_error
tdm_output_hwc_get_video_supported_formats(tdm_output *output, const tbm_format **formats,
int *count)