| .. | .. |
|---|
| 1509 | 1509 | u16 bridge_cfg2, gpu_cfg2; |
|---|
| 1510 | 1510 | u32 max_lw, current_lw, tmp; |
|---|
| 1511 | 1511 | |
|---|
| 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); |
|---|
| 1523 | 1514 | |
|---|
| 1524 | 1515 | tmp = RREG32_PCIE(ixPCIE_LC_STATUS1); |
|---|
| 1525 | 1516 | max_lw = (tmp & PCIE_LC_STATUS1__LC_DETECTED_LINK_WIDTH_MASK) >> |
|---|
| .. | .. |
|---|
| 1572 | 1563 | msleep(100); |
|---|
| 1573 | 1564 | |
|---|
| 1574 | 1565 | /* 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); |
|---|
| 1590 | 1574 | |
|---|
| 1591 | 1575 | /* linkctl2 */ |
|---|
| 1592 | 1576 | pcie_capability_read_word(root, PCI_EXP_LNKCTL2, |
|---|