File tree Expand file tree Collapse file tree 3 files changed +18
-6
lines changed
drivers/gpu/drm/amd/amdgpu Expand file tree Collapse file tree 3 files changed +18
-6
lines changed Original file line number Diff line number Diff line change @@ -150,7 +150,11 @@ enum AMDGIM_REG_ACCESS_FLAG {
150150/* Use RLC to program MMHUB regs */
151151AMDGIM_FEATURE_MMHUB_REG_RLC_EN = (1 << 1 ),
152152/* Use RLC to program GC regs */
153- AMDGIM_FEATURE_GC_REG_RLC_EN = (1 << 2 ),
153+ AMDGIM_FEATURE_GC_REG_RLC_EN = (1 << 2 ),
154+ /* Use PSP to program L1_TLB_CNTL */
155+ AMDGIM_FEATURE_L1_TLB_CNTL_PSP_EN = (1 << 3 ),
156+ /* Use RLCG to program SQ_CONFIG1 */
157+ AMDGIM_FEATURE_REG_ACCESS_SQ_CONFIG = (1 << 4 ),
154158};
155159
156160struct amdgim_pf2vf_info_v1 {
@@ -332,6 +336,10 @@ struct amdgpu_video_codec_info;
332336#define amdgpu_sriov_rlcg_error_report_enabled (adev ) \
333337 (amdgpu_sriov_reg_indirect_mmhub(adev) || amdgpu_sriov_reg_indirect_gc(adev))
334338
339+ #define amdgpu_sriov_reg_access_sq_config (adev ) \
340+ (amdgpu_sriov_vf((adev)) && \
341+ ((adev)->virt.reg_access & (AMDGIM_FEATURE_REG_ACCESS_SQ_CONFIG)))
342+
335343#define amdgpu_passthrough (adev ) \
336344((adev)->virt.caps & AMDGPU_PASSTHROUGH_MODE)
337345
Original file line number Diff line number Diff line change @@ -109,10 +109,12 @@ union amd_sriov_msg_feature_flags {
109109
110110union amd_sriov_reg_access_flags {
111111struct {
112- uint32_t vf_reg_access_ih : 1 ;
113- uint32_t vf_reg_access_mmhub : 1 ;
114- uint32_t vf_reg_access_gc : 1 ;
115- uint32_t reserved : 29 ;
112+ uint32_t vf_reg_access_ih : 1 ;
113+ uint32_t vf_reg_access_mmhub : 1 ;
114+ uint32_t vf_reg_access_gc : 1 ;
115+ uint32_t vf_reg_access_l1_tlb_cntl : 1 ;
116+ uint32_t vf_reg_access_sq_config : 1 ;
117+ uint32_t reserved : 27 ;
116118} flags ;
117119uint32_t all ;
118120};
Original file line number Diff line number Diff line change @@ -1375,7 +1375,9 @@ static void gfx_v9_4_3_constants_init(struct amdgpu_device *adev)
13751375switch (amdgpu_ip_version (adev , GC_HWIP , 0 )) {
13761376/* ToDo: GC 9.4.4 */
13771377case IP_VERSION (9 , 4 , 3 ):
1378- if (adev -> gfx .mec_fw_version >= 184 )
1378+ if (adev -> gfx .mec_fw_version >= 184 &&
1379+ (amdgpu_sriov_reg_access_sq_config (adev ) ||
1380+ !amdgpu_sriov_vf (adev )))
13791381adev -> gmc .xnack_flags |= AMDGPU_GMC_XNACK_FLAG_CHAIN ;
13801382break ;
13811383case IP_VERSION (9 , 5 , 0 ):
You can’t perform that action at this time.
0 commit comments