summaryrefslogtreecommitdiff
path: root/arch/arm/mm
diff options
context:
space:
mode:
authorCedric Neveux <cedric.neveux@nxp.com>2017-11-14 16:42:42 +0000
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:31:22 +0800
commitd6f6f7e13e62065ac1a9543eb0e675c565576c98 (patch)
tree31d5b4e28f6096e53cf0156cfbee4d9112167083 /arch/arm/mm
parent1348fbd9ac37594dbd3f6835c50427c26b856c69 (diff)
MLK-16912 PL310: unlock ways during initialization
This change affects all i.MX 6 with PL310 L2 Cache controller. When Linux runs in Non-secure World the PL310 has already been initialized by the ARM secure World running OP-TEE os. However, in order to have a proper Linux Initialization all the L2 cache ways have been locked by the secure world. This patch unlock all the ways during pl310 initialization. Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
Diffstat (limited to 'arch/arm/mm')
-rw-r--r--arch/arm/mm/cache-l2x0.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index 808efbb89b88..05d4d3cbc6d2 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -879,6 +879,11 @@ static int __init __l2c_init(const struct l2c_init_data *data,
l2x0_saved_regs.aux_ctrl = aux;
data->enable(l2x0_base, data->num_lock);
+ } else {
+ pr_info("%s cache controller enabled try to unlock\n",
+ data->type);
+
+ data->unlock(l2x0_base, data->num_lock);
}
outer_cache = fns;