summaryrefslogtreecommitdiff
path: root/samsung/exynos_drm_plane.c
diff options
context:
space:
mode:
authorJiun Yu <jiun.yu@samsung.com>2020-10-19 16:59:11 +0900
committerTreeHugger Robot <treehugger-gerrit@google.com>2021-03-11 03:28:26 +0000
commita6fe1d764eb084f04e3c75684e75257c96309ff8 (patch)
tree12edc809aae6350c0b06ad40bee18b12b79475e6 /samsung/exynos_drm_plane.c
parentb3f428322ad9e61e65a88868b10e24e06c0c813b (diff)
downloaddisplay-a6fe1d764eb084f04e3c75684e75257c96309ff8.tar.gz
drm: samsung: add debugfs node for HDR control at runtime
The debugfs nodes are added to control EOTF, OETF, gammut and tone mapping feature of HDR hardware. LUTs and matrix can be set through debugfs nodes. And these also support showing current LUT and matrix settings of hardware. Bug: 152081861 Signed-off-by: Jiun Yu <jiun.yu@samsung.com> Change-Id: I0b5c74348384d6f9fb5f6d7f578e3a61ddfdca16
Diffstat (limited to 'samsung/exynos_drm_plane.c')
-rw-r--r--samsung/exynos_drm_plane.c26
1 files changed, 17 insertions, 9 deletions
diff --git a/samsung/exynos_drm_plane.c b/samsung/exynos_drm_plane.c
index 7a8d6aa..c70d93e 100644
--- a/samsung/exynos_drm_plane.c
+++ b/samsung/exynos_drm_plane.c
@@ -321,16 +321,24 @@ static void exynos_drm_plane_print_state(struct drm_printer *p,
}
}
+static int exynos_drm_plane_late_register(struct drm_plane *plane)
+{
+ struct exynos_drm_plane *exynos_plane = to_exynos_plane(plane);
+
+ return exynos_drm_debugfs_plane_add(exynos_plane);
+}
+
static struct drm_plane_funcs exynos_plane_funcs = {
- .update_plane = drm_atomic_helper_update_plane,
- .disable_plane = drm_atomic_helper_disable_plane,
- .destroy = drm_plane_cleanup,
- .reset = exynos_drm_plane_reset,
- .atomic_duplicate_state = exynos_drm_plane_duplicate_state,
- .atomic_destroy_state = exynos_drm_plane_destroy_state,
- .atomic_set_property = exynos_drm_plane_set_property,
- .atomic_get_property = exynos_drm_plane_get_property,
- .atomic_print_state = exynos_drm_plane_print_state,
+ .update_plane = drm_atomic_helper_update_plane,
+ .disable_plane = drm_atomic_helper_disable_plane,
+ .destroy = drm_plane_cleanup,
+ .reset = exynos_drm_plane_reset,
+ .atomic_duplicate_state = exynos_drm_plane_duplicate_state,
+ .atomic_destroy_state = exynos_drm_plane_destroy_state,
+ .atomic_set_property = exynos_drm_plane_set_property,
+ .atomic_get_property = exynos_drm_plane_get_property,
+ .atomic_print_state = exynos_drm_plane_print_state,
+ .late_register = exynos_drm_plane_late_register,
};
static int