drm/panfrost: Increase the AS_ACTIVE polling timeout

Experience has shown that 1ms is sometimes not enough, even when the GPU
is running at its maximum frequency, not to mention that an MMU operation
might take longer if the GPU is running at a lower frequency, which is
likely to be the case if devfreq is active.

Let's pick a significantly bigger timeout value (1ms -> 100ms) to be on
the safe side.

v5:
* New patch

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210630062751.2832545-17-boris.brezillon@collabora.com
This commit is contained in:
Boris Brezillon 2021-06-30 08:27:51 +02:00
parent 030761e097
commit 0ec187f69b

View File

@ -34,7 +34,7 @@ static int wait_ready(struct panfrost_device *pfdev, u32 as_nr)
/* Wait for the MMU status to indicate there is no active command, in /* Wait for the MMU status to indicate there is no active command, in
* case one is pending. */ * case one is pending. */
ret = readl_relaxed_poll_timeout_atomic(pfdev->iomem + AS_STATUS(as_nr), ret = readl_relaxed_poll_timeout_atomic(pfdev->iomem + AS_STATUS(as_nr),
val, !(val & AS_STATUS_AS_ACTIVE), 10, 1000); val, !(val & AS_STATUS_AS_ACTIVE), 10, 100000);
if (ret) { if (ret) {
/* The GPU hung, let's trigger a reset */ /* The GPU hung, let's trigger a reset */