tdm_display: add tdm_display_get_pp_preferred_align_vertical api 92/225392/1
authorJunkyeong Kim <jk0430.kim@samsung.com>
Wed, 19 Feb 2020 11:32:41 +0000 (20:32 +0900)
committerJunkyeong Kim <jk0430.kim@samsung.com>
Wed, 19 Feb 2020 11:32:44 +0000 (20:32 +0900)
Change-Id: Ibb83649d8f5811846995f572a922d1c6cd0ae2da
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
include/tdm.h
src/tdm_display.c

index c334b20..685c4ec 100644 (file)
@@ -150,6 +150,17 @@ tdm_display_get_pp_available_size(tdm_display *dpy, int *min_w, int *min_h,
                                                                  int *max_w, int *max_h, int *preferred_align);
 
 /**
+ * @brief Get the pp vertical preferred align of a display object.
+ * @details -1 means that a TDM backend module doesn't define the value.
+ * @param[in] dpy A display object
+ * @param[out] preferred_align_vertical The preferred align height which TDM can handle
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ */
+tdm_error
+tdm_display_get_pp_preferred_align_vertical(tdm_display *dpy, int *preferred_align_vertical);
+
+
+/**
  * @brief Get the capture capabilities of a display object.
  * @param[in] dpy A display object
  * @param[out] capabilities The capture capabilities
index 814e60c..4deea99 100644 (file)
@@ -587,6 +587,33 @@ tdm_display_get_pp_available_size(tdm_display *dpy, int *min_w, int *min_h,
 }
 
 EXTERN tdm_error
+tdm_display_get_pp_preferred_align_vertical(tdm_display *dpy, int *preferred_align_vertical)
+{
+       tdm_private_module *pp_module;
+
+       DISPLAY_FUNC_ENTRY();
+
+       _pthread_mutex_lock(&private_display->lock);
+
+       if (!private_display->pp_module) {
+               /* LCOV_EXCL_START */
+               TDM_ERR("no pp capability");
+               _pthread_mutex_unlock(&private_display->lock);
+               return TDM_ERROR_NO_CAPABILITY;
+               /* LCOV_EXCL_STOP */
+       }
+
+       pp_module = private_display->pp_module;
+
+       if (preferred_align_vertical)
+               *preferred_align_vertical = TDM_FRONT_VALUE(pp_module->caps_pp.preferred_align_vertical);
+
+       _pthread_mutex_unlock(&private_display->lock);
+
+       return ret;
+}
+
+EXTERN tdm_error
 tdm_display_get_capture_capabilities(tdm_display *dpy,
                                                                         tdm_capture_capability *capabilities)
 {