arm64: ITS: fix cacheability adjustment
authorAndre Przywara <andre.przywara@linaro.org>
Thu, 16 Nov 2017 12:02:35 +0000 (12:02 +0000)
committerStefano Stabellini <sstabellini@kernel.org>
Tue, 28 Nov 2017 19:27:13 +0000 (11:27 -0800)
commit31309b538f77a9eac5b9d1308335612ebd96bd3d
tree08fb5c4a85898ae82cb1b59e925f9ccbae433673
parent9976f3874d4cca829f2d2916feab18615337bb5c
arm64: ITS: fix cacheability adjustment

If the host GICv3 redistributor reports that the pending table cannot
use shareable memory, we try to drop the cacheability attributes as
well. However we fail horribly in doing computer science 101 bit
masking, effectively clearing the whole register instead of just a few
bits.
Fix this by removing the one redundant masking operation and adding the
magic negation for the actually needed other operation.

Reported-by: Manish Jaggi <manish.jaggi@linaro.org>
Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
Reviewed-by: Julien Grall <julien.grall@linaro.org>
Release-Acked-by: Julien Grall <julien.grall@linaro.org>
xen/arch/arm/gic-v3-lpi.c