armv8: Enable CPUECTLR.SMPEN for coherency
authorMingkai Hu <mingkai.hu@nxp.com>
Thu, 7 Jul 2016 04:22:12 +0000 (12:22 +0800)
committerTom Rini <trini@konsulko.com>
Fri, 8 Jul 2016 21:16:49 +0000 (17:16 -0400)
commitd73718f3236c520a92efa401084c658e6cc067f3
tree012ae524657977219b686318ff399c8d6ebe85ab
parentd56dd0b1f8eb1dc13d4e6227a485fca5b9e94c1e
armv8: Enable CPUECTLR.SMPEN for coherency

For A53, data coherency is enabled only when the CPUECTLR.SMPEN bit is
set. The SMPEN bit should be set before enabling the data cache.
If not enabled, the cache is not coherent with other cores and
data corruption could occur.

For A57/A72, SMPEN bit enables the processor to receive instruction
cache and TLB maintenance operations broadcast from other processors
in the cluster. This bit should be set before enabling the caches and
MMU, or performing any cache and TLB maintenance operations.

Signed-off-by: Mingkai Hu <mingkai.hu@nxp.com>
Signed-off-by: Gong Qianyu <Qianyu.Gong@nxp.com>
Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com>
arch/arm/cpu/armv8/start.S