Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 573cab95 authored by Isaac J. Manjarres's avatar Isaac J. Manjarres
Browse files

ARM: dts: msm: Enable qcom,power-always-on for GPU SMMUs on GKI targets

The IOMMU page table management code is not optimal from a performance
perspective in the GKI configuration, relative to the downstream
implementation. When the GPU enters slumber, and requests the SMMU
driver to unmap memory from the stage 1 page tables of the GPU.

When unmapping memory, the SMMU driver must access the GPU SMMU's register
space, so it must vote for power resources to access the TLB invalidation
registers. When the GPU is in slumber, there aren't votes for the GPU
SMMU's power resources, so the SMMU driver constantly ends up
enabling/disabling the power resources, which takes a considerable
amount of time. When paired with the suboptimal IOMMU page table management
code, this leads to performance issues where the time taken to unmap
memory is large.

Thus, for all targets that support GKI, add the qcom,power-always-on
property for the GPU SMMUs of these targets, to remove the latency
incurred by having to enable/disable power resources in the GKI
configuration.

Change-Id: Id3237214e44c008871d01ec6652b08c4fb24e41c
parent 47879980
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment