diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/si.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/si.c | 36 | 
1 files changed, 10 insertions, 26 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/si.c b/drivers/gpu/drm/amd/amdgpu/si.c index f64b87b11b1b..4b81f29e5fd5 100644 --- a/drivers/gpu/drm/amd/amdgpu/si.c +++ b/drivers/gpu/drm/amd/amdgpu/si.c @@ -2276,17 +2276,8 @@ static void si_pcie_gen3_enable(struct amdgpu_device *adev)  			u16 bridge_cfg2, gpu_cfg2;  			u32 max_lw, current_lw, tmp; -			pcie_capability_read_word(root, PCI_EXP_LNKCTL, -						  &bridge_cfg); -			pcie_capability_read_word(adev->pdev, PCI_EXP_LNKCTL, -						  &gpu_cfg); - -			tmp16 = bridge_cfg | PCI_EXP_LNKCTL_HAWD; -			pcie_capability_write_word(root, PCI_EXP_LNKCTL, tmp16); - -			tmp16 = gpu_cfg | PCI_EXP_LNKCTL_HAWD; -			pcie_capability_write_word(adev->pdev, PCI_EXP_LNKCTL, -						   tmp16); +			pcie_capability_set_word(root, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_HAWD); +			pcie_capability_set_word(adev->pdev, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_HAWD);  			tmp = RREG32_PCIE(PCIE_LC_STATUS1);  			max_lw = (tmp & LC_DETECTED_LINK_WIDTH_MASK) >> LC_DETECTED_LINK_WIDTH_SHIFT; @@ -2331,21 +2322,14 @@ static void si_pcie_gen3_enable(struct amdgpu_device *adev)  				mdelay(100); -				pcie_capability_read_word(root, PCI_EXP_LNKCTL, -							  &tmp16); -				tmp16 &= ~PCI_EXP_LNKCTL_HAWD; -				tmp16 |= (bridge_cfg & PCI_EXP_LNKCTL_HAWD); -				pcie_capability_write_word(root, PCI_EXP_LNKCTL, -							   tmp16); - -				pcie_capability_read_word(adev->pdev, -							  PCI_EXP_LNKCTL, -							  &tmp16); -				tmp16 &= ~PCI_EXP_LNKCTL_HAWD; -				tmp16 |= (gpu_cfg & PCI_EXP_LNKCTL_HAWD); -				pcie_capability_write_word(adev->pdev, -							   PCI_EXP_LNKCTL, -							   tmp16); +				pcie_capability_clear_and_set_word(root, PCI_EXP_LNKCTL, +								   PCI_EXP_LNKCTL_HAWD, +								   bridge_cfg & +								   PCI_EXP_LNKCTL_HAWD); +				pcie_capability_clear_and_set_word(adev->pdev, PCI_EXP_LNKCTL, +								   PCI_EXP_LNKCTL_HAWD, +								   gpu_cfg & +								   PCI_EXP_LNKCTL_HAWD);  				pcie_capability_read_word(root, PCI_EXP_LNKCTL2,  							  &tmp16); |