Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
[sfrench/cifs-2.6.git] / drivers / net / e1000e / netdev.c
index f5081cf898aa21c6fb31baa93f9d0f29efc5755c..24507f3b8b1708755e0631d9c28be2fe08f67493 100644 (file)
@@ -2900,12 +2900,12 @@ static void e1000_configure_rx(struct e1000_adapter *adapter)
                         * excessive C-state transition latencies result in
                         * dropped transactions.
                         */
-                       pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY,
-                                                 adapter->netdev->name, 55);
+                       pm_qos_update_request(
+                               adapter->netdev->pm_qos_req, 55);
                } else {
-                       pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY,
-                                                 adapter->netdev->name,
-                                                 PM_QOS_DEFAULT_VALUE);
+                       pm_qos_update_request(
+                               adapter->netdev->pm_qos_req,
+                               PM_QOS_DEFAULT_VALUE);
                }
        }
 
@@ -3196,8 +3196,8 @@ int e1000e_up(struct e1000_adapter *adapter)
 
        /* DMA latency requirement to workaround early-receive/jumbo issue */
        if (adapter->flags & FLAG_HAS_ERT)
-               pm_qos_add_requirement(PM_QOS_CPU_DMA_LATENCY,
-                                      adapter->netdev->name,
+               adapter->netdev->pm_qos_req =
+                       pm_qos_add_request(PM_QOS_CPU_DMA_LATENCY,
                                       PM_QOS_DEFAULT_VALUE);
 
        /* hardware has been reset, we need to reload some things */
@@ -3263,9 +3263,11 @@ void e1000e_down(struct e1000_adapter *adapter)
        e1000_clean_tx_ring(adapter);
        e1000_clean_rx_ring(adapter);
 
-       if (adapter->flags & FLAG_HAS_ERT)
-               pm_qos_remove_requirement(PM_QOS_CPU_DMA_LATENCY,
-                                         adapter->netdev->name);
+       if (adapter->flags & FLAG_HAS_ERT) {
+               pm_qos_remove_request(
+                             adapter->netdev->pm_qos_req);
+               adapter->netdev->pm_qos_req = NULL;
+       }
 
        /*
         * TODO: for power management, we could drop the link and