PM QOS update
This patch changes the string based list management to a handle base implementation to help with the hot path use of pm-qos, it also renames much of the API to use "request" as opposed to "requirement" that was used in the initial implementation. I did this because request more accurately represents what it actually does. Also, I added a string based ABI for users wanting to use a string interface. So if the user writes 0xDDDDDDDD formatted hex it will be accepted by the interface. (someone asked me for it and I don't think it hurts anything.) This patch updates some documentation input I got from Randy. Signed-off-by: markgross <mgross@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
This commit is contained in:

committad av
Rafael J. Wysocki

förälder
0fef8b1e83
incheckning
ed77134bfc
@@ -2524,12 +2524,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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2824,8 +2824,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 */
|
||||
@@ -2887,9 +2887,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
|
||||
|
Referens i nytt ärende
Block a user