summaryrefslogtreecommitdiffstats
path: root/drivers/iommu/arm-smmu.c
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2015-11-18 19:15:51 +0100
committerWill Deacon <will.deacon@arm.com>2015-12-17 13:05:33 +0100
commita0eacd89e35e55aad284cc2e6865bf2dcf7037ba (patch)
tree1e1f61e9dd62c9e6490778200d6e70079600caf6 /drivers/iommu/arm-smmu.c
parentiommu/arm-smmu: Delete an unnecessary check before free_io_pgtable_ops() (diff)
downloadlinux-a0eacd89e35e55aad284cc2e6865bf2dcf7037ba.tar.xz
linux-a0eacd89e35e55aad284cc2e6865bf2dcf7037ba.zip
iommu/arm-smmu: Use incoming shareability attributes in bypass mode
When we initialise a bypass STE, we memset the structure to zero and set the Valid and Config fields to indicate that the stream should bypass the SMMU. Unfortunately, this results in an SHCFG field of 0 which means that the shareability of any incoming transactions is overridden with non-shareable, leading to potential coherence problems down the line. This patch fixes the issue by initialising bypass STEs to use the incoming shareability attributes. When translation is in effect at either stage 1 or stage 2, the shareability is determined by the page tables. Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'drivers/iommu/arm-smmu.c')
0 files changed, 0 insertions, 0 deletions