aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/pcie/bw_notification.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/pci/pcie/bw_notification.c b/drivers/pci/pcie/bw_notification.c
index d2eae3b7cc0f..971eb7e90fb0 100644
--- a/drivers/pci/pcie/bw_notification.c
+++ b/drivers/pci/pcie/bw_notification.c
@@ -96,11 +96,25 @@ static void pcie_bandwidth_notification_remove(struct pcie_device *srv)
96 free_irq(srv->irq, srv); 96 free_irq(srv->irq, srv);
97} 97}
98 98
99static int pcie_bandwidth_notification_suspend(struct pcie_device *srv)
100{
101 pcie_disable_link_bandwidth_notification(srv->port);
102 return 0;
103}
104
105static int pcie_bandwidth_notification_resume(struct pcie_device *srv)
106{
107 pcie_enable_link_bandwidth_notification(srv->port);
108 return 0;
109}
110
99static struct pcie_port_service_driver pcie_bandwidth_notification_driver = { 111static struct pcie_port_service_driver pcie_bandwidth_notification_driver = {
100 .name = "pcie_bw_notification", 112 .name = "pcie_bw_notification",
101 .port_type = PCIE_ANY_PORT, 113 .port_type = PCIE_ANY_PORT,
102 .service = PCIE_PORT_SERVICE_BWNOTIF, 114 .service = PCIE_PORT_SERVICE_BWNOTIF,
103 .probe = pcie_bandwidth_notification_probe, 115 .probe = pcie_bandwidth_notification_probe,
116 .suspend = pcie_bandwidth_notification_suspend,
117 .resume = pcie_bandwidth_notification_resume,
104 .remove = pcie_bandwidth_notification_remove, 118 .remove = pcie_bandwidth_notification_remove,
105}; 119};
106 120