summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/task-analyzer.py
diff options
context:
space:
mode:
authorKevin Hilman <khilman@baylibre.com>2024-12-07 01:12:50 +0300
committerUlf Hansson <ulf.hansson@linaro.org>2024-12-10 14:37:26 +0300
commitb5fc9453651d0aacaf412ae636d1960bd6a4a3d7 (patch)
tree0b3cb6a61965b64602f348e3b4ac6bdaf7da569b /tools/perf/scripts/python/task-analyzer.py
parente1a87570347091204d54298ede5f04176c9eeb49 (diff)
downloadlinux-b5fc9453651d0aacaf412ae636d1960bd6a4a3d7.tar.xz
pmdomain: ti_sci: add per-device latency constraint management
For each device in a TI SCI PM domain, check whether the device has any resume latency constraints set via per-device PM QoS. If constraints are set, send them to DM via the new SCI constraints API. Checking for constraints happen for each device before system-wide suspend (via ->suspend() hook.) An important detail here is that the PM domain driver inserts itself into the path of both the ->suspend() and ->resume() hook path of *all* devices in the PM domain. This allows generic PM domain code to handle the constraint management and communication with TI SCI. Further, this allows device drivers to use existing PM QoS APIs to add/update constraints. DM firmware clears constraints during its resume, so Linux has to check/update/send constraints each time system suspends. Also note that the PM QoS framework uses usecs as the units for latency whereas the TI SCI firmware uses msecs, so a conversion is needed before passing to TI SCI. Co-developed-by: Vibhore Vardhan <vibhore@ti.com> Signed-off-by: Vibhore Vardhan <vibhore@ti.com> Reviewed-by: Markus Schneider-Pargmann <msp@baylibre.com> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Tested-by: Dhruva Gole <d-gole@ti.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com> Reviewed-by: Dhruva Gole <d-gole@ti.com> Message-ID: <20241206-lpm-v6-10-constraints-pmdomain-v6-1-833980158c68@baylibre.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'tools/perf/scripts/python/task-analyzer.py')
0 files changed, 0 insertions, 0 deletions