hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/drivers/gpu/drm/amd/amdgpu/cik.c
....@@ -1509,17 +1509,8 @@
15091509 u16 bridge_cfg2, gpu_cfg2;
15101510 u32 max_lw, current_lw, tmp;
15111511
1512
- pcie_capability_read_word(root, PCI_EXP_LNKCTL,
1513
- &bridge_cfg);
1514
- pcie_capability_read_word(adev->pdev, PCI_EXP_LNKCTL,
1515
- &gpu_cfg);
1516
-
1517
- tmp16 = bridge_cfg | PCI_EXP_LNKCTL_HAWD;
1518
- pcie_capability_write_word(root, PCI_EXP_LNKCTL, tmp16);
1519
-
1520
- tmp16 = gpu_cfg | PCI_EXP_LNKCTL_HAWD;
1521
- pcie_capability_write_word(adev->pdev, PCI_EXP_LNKCTL,
1522
- tmp16);
1512
+ pcie_capability_set_word(root, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_HAWD);
1513
+ pcie_capability_set_word(adev->pdev, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_HAWD);
15231514
15241515 tmp = RREG32_PCIE(ixPCIE_LC_STATUS1);
15251516 max_lw = (tmp & PCIE_LC_STATUS1__LC_DETECTED_LINK_WIDTH_MASK) >>
....@@ -1572,21 +1563,14 @@
15721563 msleep(100);
15731564
15741565 /* linkctl */
1575
- pcie_capability_read_word(root, PCI_EXP_LNKCTL,
1576
- &tmp16);
1577
- tmp16 &= ~PCI_EXP_LNKCTL_HAWD;
1578
- tmp16 |= (bridge_cfg & PCI_EXP_LNKCTL_HAWD);
1579
- pcie_capability_write_word(root, PCI_EXP_LNKCTL,
1580
- tmp16);
1581
-
1582
- pcie_capability_read_word(adev->pdev,
1583
- PCI_EXP_LNKCTL,
1584
- &tmp16);
1585
- tmp16 &= ~PCI_EXP_LNKCTL_HAWD;
1586
- tmp16 |= (gpu_cfg & PCI_EXP_LNKCTL_HAWD);
1587
- pcie_capability_write_word(adev->pdev,
1588
- PCI_EXP_LNKCTL,
1589
- tmp16);
1566
+ pcie_capability_clear_and_set_word(root, PCI_EXP_LNKCTL,
1567
+ PCI_EXP_LNKCTL_HAWD,
1568
+ bridge_cfg &
1569
+ PCI_EXP_LNKCTL_HAWD);
1570
+ pcie_capability_clear_and_set_word(adev->pdev, PCI_EXP_LNKCTL,
1571
+ PCI_EXP_LNKCTL_HAWD,
1572
+ gpu_cfg &
1573
+ PCI_EXP_LNKCTL_HAWD);
15901574
15911575 /* linkctl2 */
15921576 pcie_capability_read_word(root, PCI_EXP_LNKCTL2,