• Rafael J. Wysocki's avatar
    PM / QoS: Introduce PM QoS device flags support · ae0fb4b7
    Rafael J. Wysocki authored
    Modify the device PM QoS core code to support PM QoS flags requests.
    
    First, add a new field of type struct pm_qos_flags called "flags"
    to struct dev_pm_qos for representing the list of PM QoS flags
    requests for the given device.  Accordingly, add a new "type" field
    to struct dev_pm_qos_request (along with an enum for representing
    request types) and a new member called "flr" to its data union for
    representig flags requests.
    
    Second, modify dev_pm_qos_add_request(), dev_pm_qos_update_request(),
    the internal routine apply_constraint() used by them and their
    existing callers to cover flags requests as well as latency
    requests.  In particular, dev_pm_qos_add_request() gets a new
    argument called "type" for specifying the type of a request to be
    added.
    
    Finally, introduce two routines, __dev_pm_qos_flags() and
    dev_pm_qos_flags(), allowing their callers to check which PM QoS
    flags have been requested for the given device (the caller is
    supposed to pass the mask of flags to check as the routine's
    second argument and examine its return value for the result).
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    Reviewed-by: default avatarJean Pihet <j-pihet@ti.com>
    Reviewed-by: default avatarmark gross <markgross@thegnar.org>
    ae0fb4b7
sh_flctl.c 23.6 KB