diff options
author | Yong Wu | 2020-12-07 17:35:53 +0800 |
---|---|---|
committer | Will Deacon | 2020-12-07 10:49:34 +0000 |
commit | 093b32a849b336b5b48bdde1041fc06f91ae475c (patch) | |
tree | 824c546de9567462e6cfa887d3829e77fb7f9735 /drivers/iommu/tegra-smmu.c | |
parent | 058236eef606ea53ea7317afc20e9469cf3c3b91 (diff) |
iommu: Improve the performance for direct_mapping
Currently direct_mapping always use the smallest pgsize which is SZ_4K
normally to mapping. This is unnecessary. we could gather the size, and
call iommu_map then, iommu_map could decide how to map better with the
just right pgsize.
>From the original comment, we should take care overlap, otherwise,
iommu_map may return -EEXIST. In this overlap case, we should map the
previous region before overlap firstly. then map the left part.
Each a iommu device will call this direct_mapping when its iommu
initialize, This patch is effective to improve the boot/initialization
time especially while it only needs level 1 mapping.
Signed-off-by: Anan Sun <anan.sun@mediatek.com>
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Link: https://lore.kernel.org/r/20201207093553.8635-1-yong.wu@mediatek.com
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'drivers/iommu/tegra-smmu.c')
0 files changed, 0 insertions, 0 deletions