More power management updates for 3.4

Fixes mostly, including:

* Patch series that hopefully fixes races between the freezer and request_firmware()
  and request_firmware_nowait() for good, with two cleanups from Stephen Boyd on top.

* Runtime PM fix from Alan Stern preventing tasks from getting stuck indefinitely
  in the runtime PM wait queue.

* Device PM QoS update from MyungJoo Ham introducing a new variant of
  pm_qos_update_request() allowing the callers to specify a timeout.
PM / QoS: add pm_qos_update_request_timeout() API

The new API, pm_qos_update_request_timeout() is to provide a timeout
with pm_qos_update_request.

For example, pm_qos_update_request_timeout(req, 100, 1000), means that
QoS request on req with value 100 will be active for 1000 microseconds.
After 1000 microseconds, the QoS request thru req is reset. If there
were another pm_qos_update_request(req, x) during the 1000 us, this
new request with value x will override as this is another request on the
same req handle. A new request on the same req handle will always
override the previous request whether it is the conventional request or
it is the new timeout request.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Mark Gross <markgross@thegnar.org>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2 files changed