diff options
| author | Dave Airlie <airlied@redhat.com> | 2022-07-15 15:07:24 +1000 | 
|---|---|---|
| committer | Dave Airlie <airlied@redhat.com> | 2022-07-15 15:07:26 +1000 | 
| commit | 60693e3a38903e39e4fac0a9849b698fc36228bd (patch) | |
| tree | 083fc10b2243117b789bd2fb69a7b3aabdbae69f /drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h | |
| parent | 0180290abb5ce5c870f84a00ffeda5802f641dce (diff) | |
| parent | b7be3ae759160aa3355ebeb0583f67fb9bda4dae (diff) | |
Merge tag 'amd-drm-next-5.20-2022-07-14' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
amd-drm-next-5.20-2022-07-14:
amdgpu:
- DCN3.2 updates
- DC SubVP support
- DP MST fixes
- Audio fixes
- DC code cleanup
- SMU13 updates
- Adjust GART size on newer APUs for S/G display
- Soft reset for GFX 11
- Soft reset for SDMA 6
- Add gfxoff status query for vangogh
- Improve BO domain pinning
- Fix timestamps for cursor only commits
- MES fixes
- DCN 3.1.4 support
- Misc fixes
- Misc code cleanup
amdkfd:
- Simplify GPUVM validation
- Unified memory for CWSR save/restore area
- fix possible list corruption on queue failure
radeon:
- Fix bogus power of two warning
UAPI:
- Unified memory for CWSR save/restore area for KFD
  Proposed userspace: https://lists.freedesktop.org/archives/amd-gfx/2022-June/080952.html
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Alex Deucher <alexander.deucher@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220714214716.8203-1-alexander.deucher@amd.com
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h')
| -rw-r--r-- | drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h | 44 | 
1 files changed, 10 insertions, 34 deletions
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 10ff536ef2a4..47b149d4bfcf 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 @@ -67,6 +67,10 @@ dml_get_attr_decl(min_pixel_chunk_size_in_byte);  dml_get_attr_decl(min_meta_chunk_size_in_byte);  dml_get_attr_decl(fclk_watermark);  dml_get_attr_decl(usr_retraining_watermark); +dml_get_attr_decl(comp_buffer_reserved_space_kbytes); +dml_get_attr_decl(comp_buffer_reserved_space_64bytes); +dml_get_attr_decl(comp_buffer_reserved_space_zs); +dml_get_attr_decl(unbounded_request_enabled);  #define dml_get_pipe_attr_decl(attr) double get_##attr(struct display_mode_lib *mode_lib, const display_e2e_pipe_params_st *pipes, unsigned int num_pipes, unsigned int which_pipe) @@ -169,7 +173,7 @@ bool get_is_phantom_pipe(struct display_mode_lib *mode_lib,  		unsigned int pipe_idx);  void PixelClockAdjustmentForProgressiveToInterlaceUnit(struct display_mode_lib *mode_lib); -bool Calculate256BBlockSizes( +void Calculate256BBlockSizes(  		enum source_format_class SourcePixelFormat,  		enum dm_swizzle_mode SurfaceTiling,  		unsigned int BytePerPixelY, @@ -232,7 +236,6 @@ struct vba_vars_st {  	double DISPCLKWithRampingRoundedToDFSGranularity;  	double DISPCLKWithoutRampingRoundedToDFSGranularity;  	double MaxDispclkRoundedToDFSGranularity; -	double MaxDppclkRoundedToDFSGranularity;  	bool DCCEnabledAnyPlane;  	double ReturnBandwidthToDCN;  	unsigned int TotalActiveDPP; @@ -249,7 +252,6 @@ struct vba_vars_st {  	double VBlankTime;  	double SmallestVBlank;  	enum dm_prefetch_modes AllowForPStateChangeOrStutterInVBlankFinal; // Mode Support only -	double DCFCLKDeepSleepPerSurface[DC__NUM_DPP__MAX];  	double DCFCLKDeepSleepPerPlane[DC__NUM_DPP__MAX];  	double EffectiveDETPlusLBLinesLuma;  	double EffectiveDETPlusLBLinesChroma; @@ -297,7 +299,6 @@ struct vba_vars_st {  	double SMNLatency;  	double FCLKChangeLatency;  	unsigned int MALLAllocatedForDCNFinal; -	double DefaultGPUVMMinPageSizeKBytes; // Default for the project  	double MaxAveragePercentOfIdealFabricBWDisplayCanUseInNormalSystemOperation;  	double MaxAveragePercentOfIdealDRAMBWDisplayCanUseInNormalSystemOperationSTROBE;  	double PercentOfIdealDRAMBWReceivedAfterUrgLatencySTROBE; @@ -470,6 +471,7 @@ struct vba_vars_st {  	bool XFCEnabled[DC__NUM_DPP__MAX];  	bool ScalerEnabled[DC__NUM_DPP__MAX];  	unsigned int VBlankNom[DC__NUM_DPP__MAX]; +	bool DisableUnboundRequestIfCompBufReservedSpaceNeedAdjustment;  	// Intermediates/Informational  	bool ImmediateFlipSupport; @@ -513,6 +515,10 @@ struct vba_vars_st {  	double StutterPeriodBestCase;  	Watermarks      Watermark;  	bool DCHUBBUB_ARB_CSTATE_MAX_CAP_MODE; +	unsigned int CompBufReservedSpaceKBytes; +	unsigned int CompBufReservedSpace64B; +	unsigned int CompBufReservedSpaceZs; +	bool CompBufReservedSpaceNeedAdjustment;  	// These are the clocks calcuated by the library but they are not actually  	// used explicitly. They are fetched by tests and then possibly used. The @@ -819,8 +825,6 @@ struct vba_vars_st {  	double         dummy8[DC__NUM_DPP__MAX];  	double         dummy13[DC__NUM_DPP__MAX];  	double         dummy_double_array[2][DC__NUM_DPP__MAX]; -	unsigned int        dummyinteger1ms[DC__NUM_DPP__MAX]; -	double        dummyinteger2ms[DC__NUM_DPP__MAX];  	unsigned int        dummyinteger3[DC__NUM_DPP__MAX];  	unsigned int        dummyinteger4[DC__NUM_DPP__MAX];  	unsigned int        dummyinteger5; @@ -830,16 +834,7 @@ struct vba_vars_st {  	unsigned int        dummyinteger9;  	unsigned int        dummyinteger10;  	unsigned int        dummyinteger11; -	unsigned int        dummyinteger12; -	unsigned int        dummyinteger30; -	unsigned int        dummyinteger31; -	unsigned int        dummyinteger32; -	unsigned int        dummyintegerarr1[DC__NUM_DPP__MAX]; -	unsigned int        dummyintegerarr2[DC__NUM_DPP__MAX]; -	unsigned int        dummyintegerarr3[DC__NUM_DPP__MAX]; -	unsigned int        dummyintegerarr4[DC__NUM_DPP__MAX];  	unsigned int        dummy_integer_array[8][DC__NUM_DPP__MAX]; -	unsigned int        dummy_integer_array22[22][DC__NUM_DPP__MAX];  	bool           dummysinglestring;  	bool           SingleDPPViewportSizeSupportPerPlane[DC__NUM_DPP__MAX]; @@ -980,7 +975,6 @@ struct vba_vars_st {  	double TimePerChromaMetaChunkFlip[DC__NUM_DPP__MAX];  	unsigned int DCCCMaxUncompressedBlock[DC__NUM_DPP__MAX];  	unsigned int DCCCMaxCompressedBlock[DC__NUM_DPP__MAX]; -	unsigned int DCCCIndependent64ByteBlock[DC__NUM_DPP__MAX];  	double VStartupMargin;  	bool NotEnoughTimeForDynamicMetadata[DC__NUM_DPP__MAX]; @@ -1085,8 +1079,6 @@ struct vba_vars_st {  	double WritebackDelayTime[DC__NUM_DPP__MAX];  	unsigned int DCCYIndependentBlock[DC__NUM_DPP__MAX];  	unsigned int DCCCIndependentBlock[DC__NUM_DPP__MAX]; -	unsigned int dummyinteger15; -	unsigned int dummyinteger16;  	unsigned int dummyinteger17;  	unsigned int dummyinteger18;  	unsigned int dummyinteger19; @@ -1147,17 +1139,11 @@ struct vba_vars_st {  	int Z8NumberOfStutterBurstsPerFrame;  	unsigned int MaximumDSCBitsPerComponent;  	unsigned int NotEnoughUrgentLatencyHidingA[DC__VOLTAGE_STATES][2]; -	double UrgentLatencyWithUSRRetraining; -	double UrgLatencyWithUSRRetraining[DC__VOLTAGE_STATES];  	double ReadBandwidthSurfaceLuma[DC__NUM_DPP__MAX];  	double ReadBandwidthSurfaceChroma[DC__NUM_DPP__MAX];  	double SurfaceRequiredDISPCLKWithoutODMCombine;  	double SurfaceRequiredDISPCLK; -	double SurfaceRequiredDISPCLKWithODMCombine2To1; -	double SurfaceRequiredDISPCLKWithODMCombine4To1;  	double MinActiveFCLKChangeLatencySupported; -	double dummy14; -	double dummy15;  	int MinVoltageLevel;  	int MaxVoltageLevel;  	unsigned int TotalNumberOfSingleDPPSurfaces[DC__VOLTAGE_STATES][2]; @@ -1168,17 +1154,10 @@ struct vba_vars_st {  	bool ExceededMALLSize;  	bool PTE_BUFFER_MODE[DC__NUM_DPP__MAX];  	unsigned int BIGK_FRAGMENT_SIZE[DC__NUM_DPP__MAX]; -	unsigned int dummyinteger33;  	unsigned int CompressedBufferSizeInkByteThisState;  	enum dm_fclock_change_support FCLKChangeSupport[DC__VOLTAGE_STATES][2]; -	Latencies myLatency; -	Latencies mLatency; -	Watermarks DummyWatermark;  	bool USRRetrainingSupport[DC__VOLTAGE_STATES][2]; -	bool dummyBooleanvector1[DC__NUM_DPP__MAX]; -	bool dummyBooleanvector2[DC__NUM_DPP__MAX];  	enum dm_use_mall_for_pstate_change_mode UsesMALLForPStateChange[DC__NUM_DPP__MAX]; -	bool NotEnoughUrgentLatencyHiding_dml32[DC__VOLTAGE_STATES][2];  	bool UnboundedRequestEnabledAllStates[DC__VOLTAGE_STATES][2];  	bool SingleDPPViewportSizeSupportPerSurface[DC__NUM_DPP__MAX];  	enum dm_use_mall_for_static_screen_mode UseMALLForStaticScreen[DC__NUM_DPP__MAX]; @@ -1186,9 +1165,6 @@ struct vba_vars_st {  	bool DRAMClockChangeRequirementFinal;  	bool FCLKChangeRequirementFinal;  	bool USRRetrainingRequiredFinal; -	bool MALLUseFinal; -	bool ConfigurableDETSizeEnFinal; -	bool dummyboolean;  	unsigned int DETSizeOverride[DC__NUM_DPP__MAX];  	unsigned int nomDETInKByte;  	enum mpc_combine_affinity  MPCCombineUse[DC__NUM_DPP__MAX];  | 
