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

Commit 1245b7f2 authored by Mitchel Humpherys's avatar Mitchel Humpherys Committed by Patrick Daly
Browse files

iommu/io-pgtable-arm: Make cacheable mappings outer-shareable



Cacheable mappings should be inner- and outer-shareable, but
currently we're only making them inner-shareable.  Make them
outer-shareable as well.

Change-Id: I50e0ee3654d5d13dcbfdbb31d2df4d56b79a2b78
Signed-off-by: default avatarMitchel Humpherys <mitchelh@codeaurora.org>
Signed-off-by: default avatarPatrick Daly <pdaly@codeaurora.org>
parent 45b2e976
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -477,12 +477,14 @@ static arm_lpae_iopte arm_lpae_prot_to_pte(struct arm_lpae_io_pgtable *data,
			pte |= (prot & IOMMU_PRIV) ? ARM_LPAE_PTE_AP_PRIV_RO
					: ARM_LPAE_PTE_AP_RO;

		if (prot & IOMMU_MMIO)
		if (prot & IOMMU_MMIO) {
			pte |= (ARM_LPAE_MAIR_ATTR_IDX_DEV
				<< ARM_LPAE_PTE_ATTRINDX_SHIFT);
		else if (prot & IOMMU_CACHE)
		} else if (prot & IOMMU_CACHE) {
			pte |= (ARM_LPAE_MAIR_ATTR_IDX_CACHE
				<< ARM_LPAE_PTE_ATTRINDX_SHIFT);
			pte |= ARM_LPAE_PTE_SH_OS;
		}
	} else {
		pte = ARM_LPAE_PTE_HAP_FAULT;
		if (prot & IOMMU_READ)