aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
diff options
context:
space:
mode:
authorYue Hin Lau <Yuehin.Lau@amd.com>2017-07-23 12:13:37 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-09-26 18:15:34 -0400
commitc8d7bd8bd0c08aa9115589d264e274ed7fdf4c2e (patch)
tree8aac0b00aa3308e5d4e210388ff62a1984521aa1 /drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
parentdrm/amd/display: fix YCbCr420 deep color mode not supported (diff)
downloadwireguard-linux-c8d7bd8bd0c08aa9115589d264e274ed7fdf4c2e.tar.xz
wireguard-linux-c8d7bd8bd0c08aa9115589d264e274ed7fdf4c2e.zip
drm/amd/display: move RGAM programming from opp to dpp
Signed-off-by: Yue Hin Lau <Yuehin.Lau@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <Harry.Wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/inc/hw/transform.h')
-rw-r--r--drivers/gpu/drm/amd/display/dc/inc/hw/transform.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/transform.h b/drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
index 132c5db07456..f3d66752ed90 100644
--- a/drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
+++ b/drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
@@ -38,6 +38,7 @@ struct transform {
const struct transform_funcs *funcs;
struct dc_context *ctx;
int inst;
+ struct pwl_params regamma_params;
};
/* Colorimetry */
@@ -190,6 +191,34 @@ struct transform_funcs {
void (*opp_set_csc_adjustment)(
struct transform *xfm,
const struct out_csc_color_matrix *tbl_entry);
+
+ void (*opp_power_on_regamma_lut)(
+ struct transform *xfm,
+ bool power_on);
+
+ void (*opp_program_regamma_lut)(
+ struct transform *xfm,
+ const struct pwl_result_data *rgb,
+ uint32_t num);
+
+ void (*opp_configure_regamma_lut)(
+ struct transform *xfm,
+ bool is_ram_a);
+
+ void (*opp_program_regamma_lutb_settings)(
+ struct transform *xfm,
+ const struct pwl_params *params);
+
+ void (*opp_program_regamma_luta_settings)(
+ struct transform *xfm,
+ const struct pwl_params *params);
+
+ bool (*opp_program_regamma_pwl)(
+ struct transform *xfm, const struct pwl_params *params);
+
+ void (*opp_set_regamma_mode)(
+ struct transform *xfm_base,
+ enum opp_regamma mode);
};
extern const uint16_t filter_2tap_16p[18];