summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitaly Prosyak <vitaly.prosyak@amd.com>2019-04-09 10:39:25 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-06-22 09:34:11 -0500
commit97516065a0da1c771ee0035b11a5f9a46d8fd021 (patch)
tree3761dbd7838af970a6d6a1dafa98c30f70c275ff
parent796c9ece2ed0605c0b3d5bab8c354bad23d1bea9 (diff)
downloadlinux-97516065a0da1c771ee0035b11a5f9a46d8fd021.tar.gz
linux-97516065a0da1c771ee0035b11a5f9a46d8fd021.tar.bz2
linux-97516065a0da1c771ee0035b11a5f9a46d8fd021.zip
drm/amd/display: add flags for gamut map library
[Why & How] Gamut map lib provides a wider gamut mapping options vs BT2390 Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com> Reviewed-by: Krunoslav Kovac <Krunoslav.Kovac@amd.com> Acked-by: Aric Cyr <Aric.Cyr@amd.com> Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com> Acked-by: Vitaly Prosyak <Vitaly.Prosyak@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/display/modules/inc/mod_shared.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/display/modules/inc/mod_shared.h b/drivers/gpu/drm/amd/display/modules/inc/mod_shared.h
index 9406d0a167ee..6c877eeba429 100644
--- a/drivers/gpu/drm/amd/display/modules/inc/mod_shared.h
+++ b/drivers/gpu/drm/amd/display/modules/inc/mod_shared.h
@@ -61,7 +61,10 @@ union lut3d_control_flags {
unsigned int use_3dlut :1;
unsigned int less_than_dcip3 :1;
unsigned int override_lum :1;
- unsigned int reseved :8;
+ unsigned int use_gamut_map_lib :1;
+ unsigned int chromatic_adaptation_src :1;
+ unsigned int chromatic_adaptation_dst :1;
+ unsigned int reseved :5;
} bits;
};
@@ -71,6 +74,21 @@ enum tm_show_option_internal {
tm_show_option_internal_duplicate_sidebyside/*use flags2*/
};
+enum lut3d_control_gamut_map {
+ lut3d_control_gamut_map_none = 0,
+ lut3d_control_gamut_map_tonemap,
+ lut3d_control_gamut_map_chto,
+ lut3d_control_gamut_map_chto_chso,
+ lut3d_control_gamut_map_chto_chci
+};
+
+enum lut3d_control_rotation_mode {
+ lut3d_control_rotation_mode_none = 0,
+ lut3d_control_rotation_mode_hue,
+ lut3d_control_rotation_mode_cc,
+ lut3d_control_rotation_mode_hue_cc
+};
+
struct lut3d_settings {
unsigned char version;
union lut3d_control_flags flags;
@@ -80,6 +98,10 @@ struct lut3d_settings {
unsigned int max_lum;
unsigned int min_lum2;
unsigned int max_lum2;
+ enum lut3d_control_gamut_map map;
+ enum lut3d_control_rotation_mode rotation;
+ enum lut3d_control_gamut_map map2;
+ enum lut3d_control_rotation_mode rotation2;
};
#endif