summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
diff options
context:
space:
mode:
authorHarry Wentland <harry.wentland@amd.com>2019-02-22 16:37:36 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-06-21 18:59:35 -0500
commit83421f32b7632632dd06411bad678d386d4d0847 (patch)
treec0488a30bd1a61900d703be06a3701d643a52e96 /drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
parent345429a67c48e1e9f7f95a406285be2b1bd09886 (diff)
downloadlinux-stable-83421f32b7632632dd06411bad678d386d4d0847.tar.gz
linux-stable-83421f32b7632632dd06411bad678d386d4d0847.tar.bz2
linux-stable-83421f32b7632632dd06411bad678d386d4d0847.zip
drm/amd/display: Add DCN2 IPP
Add support to program DCN2 cursor (IPP) Signed-off-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/dcn10/dcn10_ipp.c')
-rw-r--r--drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
index 08db1e6b5166..1580f9c6d27d 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
@@ -51,6 +51,12 @@ static const struct ipp_funcs dcn10_ipp_funcs = {
.ipp_destroy = dcn10_ipp_destroy
};
+#if defined(CONFIG_DRM_AMD_DC_DCN2_0)
+static const struct ipp_funcs dcn20_ipp_funcs = {
+ .ipp_destroy = dcn10_ipp_destroy
+};
+#endif
+
void dcn10_ipp_construct(
struct dcn10_ipp *ippn10,
struct dc_context *ctx,
@@ -68,3 +74,21 @@ void dcn10_ipp_construct(
ippn10->ipp_mask = ipp_mask;
}
+#if defined(CONFIG_DRM_AMD_DC_DCN2_0)
+void dcn20_ipp_construct(
+ struct dcn10_ipp *ippn10,
+ struct dc_context *ctx,
+ int inst,
+ const struct dcn10_ipp_registers *regs,
+ const struct dcn10_ipp_shift *ipp_shift,
+ const struct dcn10_ipp_mask *ipp_mask)
+{
+ ippn10->base.ctx = ctx;
+ ippn10->base.inst = inst;
+ ippn10->base.funcs = &dcn20_ipp_funcs;
+
+ ippn10->regs = regs;
+ ippn10->ipp_shift = ipp_shift;
+ ippn10->ipp_mask = ipp_mask;
+}
+#endif