summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/setup.c
diff options
context:
space:
mode:
authorMichael van der Westhuizen <michael@smart-africa.com>2015-06-04 15:14:51 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2015-06-06 10:37:28 +0100
commit0bbe6b5a73c00f8c8e7eb38fb86993f03cd64b70 (patch)
tree955e890a18d41e330497d4a4f23c574ac6a79489 /arch/arm/kernel/setup.c
parentd2b30cd4b7223a96e606dfc8120626f66d81e091 (diff)
downloadblackbird-op-linux-0bbe6b5a73c00f8c8e7eb38fb86993f03cd64b70.tar.gz
blackbird-op-linux-0bbe6b5a73c00f8c8e7eb38fb86993f03cd64b70.zip
ARM: 8388/1: tcm: Don't crash when TCM banks are protected by TrustZone
Fixes the TCM initialisation code to handle TCM banks that are present but inaccessible due to TrustZone configuration. This is the default case when enabling the non-secure world. It may also be the case that that the user decided to use TCM for TrustZone. This change has exposed a bug in handling of TCM where no TCM bank was usable (the 0 size TCM case). This change addresses the resulting hang. This code only handles the ARMv6 TCMTR register format, and will not work correctly on boards that use the ARMv7 (or any other) format. This is handled by performing an early exit from the initialisation function when the TCMTR reports any format other than v6. Signed-off-by: Michael van der Westhuizen <michael@smart-africa.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Dave Martin <Dave.Martin@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/kernel/setup.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud