summaryrefslogtreecommitdiff
path: root/bl31
diff options
context:
space:
mode:
authorAnson Huang <Anson.Huang@nxp.com>2019-11-22 14:17:46 +0800
committerAnson Huang <Anson.Huang@nxp.com>2019-12-13 10:41:30 +0800
commit79a482c0c5c0dbd59a393fc252ffc85a33c980bb (patch)
tree4636020d4935821a72abbb6c48c0fb6a3d4ab400 /bl31
parentd3150a3f33c225b852be8bd7e7b143616234d69b (diff)
imx8qm: turn off A53 cluster for cpu hotplug
The issue of A53 cluster runtime power ON/OFF has been identified as fifo reset issue, and there is software workaround to avoid such issue and A53 cluster now can be turned OFF. Signed-off-by: Nitin Garg <nitin.garg@nxp.com> Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Diffstat (limited to 'bl31')
-rw-r--r--bl31/aarch64/bl31_entrypoint.S39
1 files changed, 39 insertions, 0 deletions
diff --git a/bl31/aarch64/bl31_entrypoint.S b/bl31/aarch64/bl31_entrypoint.S
index 1ad26e4f..5ee7a840 100644
--- a/bl31/aarch64/bl31_entrypoint.S
+++ b/bl31/aarch64/bl31_entrypoint.S
@@ -23,6 +23,41 @@
*/
func bl31_entrypoint
+#ifdef PLAT_imx8qm
+ ldr x21, stm
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21] /* 16 */
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21]
+ str w20, [x21] /* 32 */
+#endif
/* ---------------------------------------------------------------
* Stash the previous bootloader arguments x0 - x3 for later use.
* ---------------------------------------------------------------
@@ -132,6 +167,10 @@ func bl31_entrypoint
b el3_exit
endfunc bl31_entrypoint
+.ltorg
+stm:
+ .quad 0x5D1B0020
+
/* --------------------------------------------------------------------
* This CPU has been physically powered up. It is either resuming from
* suspend or has simply been turned on. In both cases, call the BL31