]> git.baikalelectronics.ru Git - kernel.git/commit
drm/msm: return the average load over the polling period
authorChia-I Wu <olvaffe@gmail.com>
Sat, 16 Apr 2022 00:33:14 +0000 (17:33 -0700)
committerRob Clark <robdclark@chromium.org>
Thu, 21 Apr 2022 22:05:23 +0000 (15:05 -0700)
commit39860c12b0f0c04f8dbdc2db738cdcd42bc7aa4e
tree3c57088b050018e3c6726e9350a5b282eaaad615
parent3d789c6df6c7941cfb7c58d5b213c48d9de67791
drm/msm: return the average load over the polling period

simple_ondemand interacts poorly with clamp_to_idle.  It only looks at
the load since the last get_dev_status call, while it should really look
at the load over polling_ms.  When clamp_to_idle true, it almost always
picks the lowest frequency on active because the gpu is idle between
msm_devfreq_idle/msm_devfreq_active.

This logic could potentially be moved into devfreq core.

Fixes: 5a4215e5a3a2 ("drm/msm/gpu: Respect PM QoS constraints")
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Cc: Rob Clark <robdclark@chromium.org>
Link: https://lore.kernel.org/r/20220416003314.59211-3-olvaffe@gmail.com
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/msm_gpu.h
drivers/gpu/drm/msm/msm_gpu_devfreq.c