With further testing of recent changes with lockdep identified some locking issues. Avoiding lockdep issues means we need to avoid some locks in panfrost_mmu_unmap which in turn means avoiding runtime PM resume. In the process of re-working runtime PM several runtime PM and locking clean-ups have been identified. v3: - Applied patches 1, 4, 5, and 6 - Fix race in job timeout handling with ISR - Remove some no longer needed locks - Fix panfrost_mmu_unmap when autosuspend delay is > 0 - Disable AS MMU when freeing page tables v2: - Drop already applied 'drm/panfrost: Fix sleeping while atomic in panfrost_gem_open' - Runtime PM clean-ups - Keep panfrost_gem_purge and use mutex_trylock there - Rework panfrost_mmu_unmap runtime PM Rob Rob Herring (8): drm/panfrost: Rework runtime PM initialization drm/panfrost: Hold runtime PM reference until jobs complete drm/panfrost: Remove unnecessary mmu->lock mutex drm/panfrost: Rework page table flushing and runtime PM interaction drm/panfrost: Split mmu_hw_do_operation into locked and unlocked version drm/panfrost: Add cache/TLB flush before switching address space drm/panfrost: Flush and disable address space when freeing page tables drm/panfrost: Remove unnecessary hwaccess_lock spin_lock drivers/gpu/drm/panfrost/panfrost_device.c | 10 --- drivers/gpu/drm/panfrost/panfrost_device.h | 3 - drivers/gpu/drm/panfrost/panfrost_drv.c | 10 ++- drivers/gpu/drm/panfrost/panfrost_job.c | 43 ++++++---- drivers/gpu/drm/panfrost/panfrost_mmu.c | 91 ++++++++++------------ 5 files changed, 76 insertions(+), 81 deletions(-) -- 2.20.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel