summaryrefslogtreecommitdiff
path: root/plat/imx/common/imx8_helpers.S
diff options
context:
space:
mode:
authorTeo Hall <teo.hall@nxp.com>2018-11-27 14:50:50 -0600
committerTeo Hall <teo.hall@nxp.com>2018-11-28 08:17:31 -0600
commitd6451cc1e162eff89b03dd63e86d55b9baa8885b (patch)
tree0ce285a0f4d8f30ec7a114fd20ccce93d31ce0a1 /plat/imx/common/imx8_helpers.S
parentcaa6f51d585bc98e40d872942204a2b1767412c7 (diff)
plat: imx8qm/imx8qxp: Add MU flag check for partition rebootimx_4.14.78_1.0.0_ga
Test if a partition reboot has taken place with the MU interrupt bit. Check before returning the entrypoint Signed-off-by: Teo Hall <teo.hall@nxp.com> (cherry picked from commit 627396daa5d9b62e8a0fb118844d1507b94e23f5)
Diffstat (limited to 'plat/imx/common/imx8_helpers.S')
-rw-r--r--plat/imx/common/imx8_helpers.S19
1 files changed, 19 insertions, 0 deletions
diff --git a/plat/imx/common/imx8_helpers.S b/plat/imx/common/imx8_helpers.S
index 18330281..a8293dce 100644
--- a/plat/imx/common/imx8_helpers.S
+++ b/plat/imx/common/imx8_helpers.S
@@ -116,6 +116,25 @@ endfunc plat_reset_handler
* ---------------------------------------------
*/
func plat_get_my_entrypoint
+
+#if defined(PLAT_IMX8QXP) || defined(PLAT_IMX8QM)
+ /* ---------------------------------------------
+ * SCU will signal through a GIR bit when a
+ * partition boot has taken place which requires
+ * cold boot setup to take place once again
+ * ---------------------------------------------
+ */
+
+ mov x0, #PLAT_BOOT_MU_BASE
+ add x0, x0, #PLAT_MU_SR_OFF
+ ldr w1, [x0]
+ and w1, w1, #PLAT_MU_COLD_BOOT_FLG_MSK
+ cbz w1, warm_boot
+ str w1, [x0]
+ mov x0, #0
+ ret
+warm_boot:
+#endif
adrp x1, mailbox_base
ldr x0, [x1, :lo12:mailbox_base]
ret