Lines Matching full:dpc
9 #define dev_fmt(fmt) "DPC: " fmt
96 * pci_dpc_recovered - whether DPC triggered and has recovered successfully
99 * Return true if DPC was triggered for @pdev and has recovered successfully.
101 * driver to recognize and ignore Link Down/Up events caused by DPC.
111 * Synchronization between hotplug and DPC is not supported in pci_dpc_recovered()
112 * if DPC is owned by firmware and EDR is not enabled. in pci_dpc_recovered()
119 * Need a timeout in case DPC never completes due to failure of in pci_dpc_recovered()
121 * but reports indicate that DPC completes within 4 seconds. in pci_dpc_recovered()
156 * DPC disables the Link automatically in hardware, so it has in dpc_reset_link()
162 * Wait until the Link is inactive, then clear DPC Trigger Status in dpc_reset_link()
163 * to allow the Port to leave DPC. in dpc_reset_link()
177 if (pci_bridge_wait_for_secondary_bus(pdev, "DPC")) { in dpc_reset_link()
366 /* We configure DPC so it only triggers on ERR_FATAL */ in dpc_handler()
418 int dpc = pdev->dpc_cap; in dpc_enable() local
422 * Clear DPC Interrupt Status so we don't get an interrupt for an in dpc_enable()
423 * old event when setting DPC Interrupt Enable. in dpc_enable()
425 pci_write_config_word(pdev, dpc + PCI_EXP_DPC_STATUS, in dpc_enable()
428 pci_read_config_word(pdev, dpc + PCI_EXP_DPC_CTL, &ctl); in dpc_enable()
431 pci_write_config_word(pdev, dpc + PCI_EXP_DPC_CTL, ctl); in dpc_enable()
437 int dpc = pdev->dpc_cap; in dpc_disable() local
440 /* Disable DPC triggering and DPC interrupts */ in dpc_disable()
441 pci_read_config_word(pdev, dpc + PCI_EXP_DPC_CTL, &ctl); in dpc_disable()
443 pci_write_config_word(pdev, dpc + PCI_EXP_DPC_CTL, ctl); in dpc_disable()
459 "pcie-dpc", pdev); in dpc_probe()
498 .name = "dpc",