diff options
author | Leo Li | 2019-03-26 02:11:07 +0100 |
---|---|---|
committer | Alex Deucher | 2019-06-22 16:34:09 +0200 |
commit | 776c1f569f94e39a1776c22f29137661f294ff03 (patch) | |
tree | 8017b62f0c5fc2426fbace0699d99c6c21c752b9 /drivers/gpu/drm/amd/display/dc/dml | |
parent | drm/amd/display: Guard DML_FAIL_DSC_VALIDATION_FAILURE (diff) | |
download | kernel-qcow2-linux-776c1f569f94e39a1776c22f29137661f294ff03.tar.gz kernel-qcow2-linux-776c1f569f94e39a1776c22f29137661f294ff03.tar.xz kernel-qcow2-linux-776c1f569f94e39a1776c22f29137661f294ff03.zip |
drm/amd/display: Properly guard display_mode_vba with DCN2
[Why]
display_mode_vba is for DCN2 and up. When building for upstream (DCN1
enabled only), there will be a build error, since display_mode_vba.c/h
is stripped out.
Note that building DCN1 only with internal dal-dev is still fine, since
display_mode_vba.h is not stripped out internally - only in upstream.
The make directives therefore stll work, and so will any #include's.
[How]
Since subsequent generations require DCN2 enabled anyways, guard the
makefile directive for display_mode_vba.o with DCN2. Guard any includes
with DCN2. In addition, guard the entire contents of display_mode_vba.h
with DCN2, to simulate the file being stripped out in upstream.
A forward declaration for 'struct display_mode_lib' also needs to be
added in display_mode_lib.h. Previously, display_mode_vba.h contained
the forward declaration, and display_mode_lib.h in turn included it.
This won't work if mode_vba.h is stripped out, requring mode_lib.h to do
so itself.
Signed-off-by: Leo Li <sunpeng.li@amd.com>
Reviewed-by: Harry Wentland <Harry.Wentland@amd.com>
Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/dml')
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/dml/Makefile | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h | 3 |
3 files changed, 11 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/dml/Makefile b/drivers/gpu/drm/amd/display/dc/dml/Makefile index 744fefb67789..0bb7a20675c4 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/Makefile +++ b/drivers/gpu/drm/amd/display/dc/dml/Makefile @@ -33,8 +33,9 @@ endif dml_ccflags := -mhard-float -msse $(cc_stack_align) CFLAGS_display_mode_lib.o := $(dml_ccflags) -CFLAGS_display_mode_vba.o := $(dml_ccflags) + ifdef CONFIG_DRM_AMD_DC_DCN2_0 +CFLAGS_display_mode_vba.o := $(dml_ccflags) CFLAGS_display_mode_vba_20.o := $(dml_ccflags) CFLAGS_display_rq_dlg_calc_20.o := $(dml_ccflags) endif @@ -46,10 +47,10 @@ CFLAGS_display_rq_dlg_helpers.o := $(dml_ccflags) CFLAGS_dml_common_defs.o := $(dml_ccflags) DML = display_mode_lib.o display_rq_dlg_helpers.o dml1_display_rq_dlg_calc.o \ - dml_common_defs.o display_mode_vba.o + dml_common_defs.o ifdef CONFIG_DRM_AMD_DC_DCN2_0 -DML += dcn20/display_rq_dlg_calc_20.o dcn20/display_mode_vba_20.o +DML += display_mode_vba.o dcn20/display_rq_dlg_calc_20.o dcn20/display_mode_vba_20.o endif AMD_DAL_DML = $(addprefix $(AMDDALPATH)/dc/dml/,$(DML)) diff --git a/drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h b/drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h index f2331c09fad8..61541c431110 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h +++ b/drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h @@ -27,7 +27,9 @@ #include "dml_common_defs.h" +#ifdef CONFIG_DRM_AMD_DC_DCN2_0 #include "display_mode_vba.h" +#endif enum dml_project { DML_PROJECT_UNDEFINED, @@ -37,6 +39,8 @@ enum dml_project { #endif }; +struct display_mode_lib; + struct dml_funcs { void (*rq_dlg_get_dlg_reg)( struct display_mode_lib *mode_lib, diff --git a/drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h b/drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h index 38fc0ab32d7b..4e0183dd634a 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h +++ b/drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h @@ -23,6 +23,8 @@ * */ +#ifdef CONFIG_DRM_AMD_DC_DCN2_0 + #ifndef __DML2_DISPLAY_MODE_VBA_H__ #define __DML2_DISPLAY_MODE_VBA_H__ @@ -847,3 +849,4 @@ double CalculateWriteBackDISPCLK( unsigned int WritebackChromaLineBufferWidth); #endif /* _DML2_DISPLAY_MODE_VBA_H_ */ +#endif |