iommu/io-pgtable-arm: Correct Mali attributes
authorRobin Murphy <robin.murphy@arm.com>
Mon, 30 Sep 2019 14:11:00 +0000 (15:11 +0100)
committerWill Deacon <will@kernel.org>
Tue, 1 Oct 2019 11:16:46 +0000 (12:16 +0100)
commit52f325f4eb321ea2e8a0779f49a3866be58bc694
tree0b4bae35ad2f95bf35ae43f5299a1d5055969479
parent6db7bfb431220d78e34d2d0afdb7c12683323588
iommu/io-pgtable-arm: Correct Mali attributes

Whilst Midgard's MEMATTR follows a similar principle to the VMSA MAIR,
the actual attribute values differ, so although it currently appears to
work to some degree, we probably shouldn't be using our standard stage 1
MAIR for that. Instead, generate a reasonable MEMATTR with attribute
values borrowed from the kbase driver; at this point we'll be overriding
or ignoring pretty much all of the LPAE config, so just implement these
Mali details in a dedicated allocator instead of pretending to subclass
the standard VMSA format.

Fixes: d08d42de6432 ("iommu: io-pgtable: Add ARM Mali midgard MMU page table format")
Tested-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/io-pgtable-arm.c