• Will Deacon's avatar
    iommu/io-pgtable-arm: Ensure ARM_64_LPAE_S2_TCR_RES1 is unsigned · 6f932ad3
    Will Deacon authored
    ARM_64_LPAE_S2_TCR_RES1 is intended to map to bit 31 of the VTCR register,
    which is required to be set to 1 by the architecture. Unfortunately, we
    accidentally treat this as a signed quantity which means we also set the
    upper 32 bits of the VTCR to one, and they are required to be zero.
    
    Treat ARM_64_LPAE_S2_TCR_RES1 as unsigned to avoid the unwanted
    sign-extension up to 64 bits.
    
    Cc: Robin Murphy <robin.murphy@arm.com>
    Signed-off-by: default avatarWill Deacon <will@kernel.org>
    6f932ad3
io-pgtable-arm.c 33.9 KB