Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/panfrost: Set IOMMU_CACHE flag

Panfrost does not support uncached mappings, so flag them properly. Also
flag the pages that are mapped as response to a page fault as cached.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Signed-off-by: Ariel D'Alessandro <ariel.dalessandro@collabora.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Reviewed-by: Adrián Larumbe <adrian.larumbe@collabora.com>
Signed-off-by: Steven Price <steven.price@arm.com>
Link: https://lore.kernel.org/r/20250324185801.168664-2-ariel.dalessandro@collabora.com

authored by

Ariel D'Alessandro and committed by
Steven Price
f91e534f 586831a4

+2 -2
+2 -2
drivers/gpu/drm/panfrost/panfrost_mmu.c
··· 327 327 struct drm_gem_object *obj = &shmem->base; 328 328 struct panfrost_device *pfdev = to_panfrost_device(obj->dev); 329 329 struct sg_table *sgt; 330 - int prot = IOMMU_READ | IOMMU_WRITE; 330 + int prot = IOMMU_READ | IOMMU_WRITE | IOMMU_CACHE; 331 331 332 332 if (WARN_ON(mapping->active)) 333 333 return 0; ··· 528 528 goto err_map; 529 529 530 530 mmu_map_sg(pfdev, bomapping->mmu, addr, 531 - IOMMU_WRITE | IOMMU_READ | IOMMU_NOEXEC, sgt); 531 + IOMMU_WRITE | IOMMU_READ | IOMMU_CACHE | IOMMU_NOEXEC, sgt); 532 532 533 533 bomapping->active = true; 534 534 bo->heap_rss_size += SZ_2M;