diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 9 | 
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c b/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c index f7f6ddebd3e4..37615a77287b 100644 --- a/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c +++ b/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c @@ -282,6 +282,7 @@ static void nbio_v6_1_init_registers(struct amdgpu_device *adev)  			mmBIF_BX_DEV0_EPF0_VF0_HDP_MEM_COHERENCY_FLUSH_CNTL) << 2;  } +#ifdef CONFIG_PCIEASPM  static void nbio_v6_1_program_ltr(struct amdgpu_device *adev)  {  	uint32_t def, data; @@ -303,9 +304,11 @@ static void nbio_v6_1_program_ltr(struct amdgpu_device *adev)  	if (def != data)  		WREG32_PCIE(smnBIF_CFG_DEV0_EPF0_DEVICE_CNTL2, data);  } +#endif  static void nbio_v6_1_program_aspm(struct amdgpu_device *adev)  { +#ifdef CONFIG_PCIEASPM  	uint32_t def, data;  	def = data = RREG32_PCIE(smnPCIE_LC_CNTL); @@ -361,7 +364,10 @@ static void nbio_v6_1_program_aspm(struct amdgpu_device *adev)  	if (def != data)  		WREG32_PCIE(smnPCIE_LC_CNTL6, data); -	nbio_v6_1_program_ltr(adev); +	/* Don't bother about LTR if LTR is not enabled +	 * in the path */ +	if (adev->pdev->ltr_path) +		nbio_v6_1_program_ltr(adev);  	def = data = RREG32_PCIE(smnRCC_BIF_STRAP3);  	data |= 0x5DE0 << RCC_BIF_STRAP3__STRAP_VLINK_ASPM_IDLE_TIMER__SHIFT; @@ -385,6 +391,7 @@ static void nbio_v6_1_program_aspm(struct amdgpu_device *adev)  	data &= ~PCIE_LC_CNTL3__LC_DSC_DONT_ENTER_L23_AFTER_PME_ACK_MASK;  	if (def != data)  		WREG32_PCIE(smnPCIE_LC_CNTL3, data); +#endif  }  const struct amdgpu_nbio_funcs nbio_v6_1_funcs = {  | 
