hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/pci/hotplug/pciehp_hpc.c
....@@ -332,17 +332,11 @@
332332 static int __pciehp_link_set(struct controller *ctrl, bool enable)
333333 {
334334 struct pci_dev *pdev = ctrl_dev(ctrl);
335
- u16 lnk_ctrl;
336335
337
- pcie_capability_read_word(pdev, PCI_EXP_LNKCTL, &lnk_ctrl);
336
+ pcie_capability_clear_and_set_word(pdev, PCI_EXP_LNKCTL,
337
+ PCI_EXP_LNKCTL_LD,
338
+ enable ? 0 : PCI_EXP_LNKCTL_LD);
338339
339
- if (enable)
340
- lnk_ctrl &= ~PCI_EXP_LNKCTL_LD;
341
- else
342
- lnk_ctrl |= PCI_EXP_LNKCTL_LD;
343
-
344
- pcie_capability_write_word(pdev, PCI_EXP_LNKCTL, lnk_ctrl);
345
- ctrl_dbg(ctrl, "%s: lnk_ctrl = %x\n", __func__, lnk_ctrl);
346340 return 0;
347341 }
348342