fix(cpus): assert invalid cpu_ops obtained

Not including the proper CPU file can halt execution at the
reset_handler since the cpu_ops obtained will be invalid and therefore
the cpu reset function will be invalid too, unless SUPPORT_UNKNOWN_MPID
is enabled.

This patch adds an assert to check for the validity of the obtained
cpu_ops object and will display an error if the object is invalid.

Change-Id: I0e1661745e4a692aab5e910e110c2de0caf64f46
Signed-off-by: Thaddeus Serna <Thaddeus.Gonzalez-Serna@arm.com>
This commit is contained in:
Thaddeus Serna 2023-07-19 13:59:24 -05:00 committed by Thaddeus Gonzalez-Serna
parent 38d1679db2
commit 3f721c6edd

View file

@ -33,6 +33,15 @@ func reset_handler
/* Get the matching cpu_ops pointer */ /* Get the matching cpu_ops pointer */
bl get_cpu_ops_ptr bl get_cpu_ops_ptr
#if ENABLE_ASSERTIONS
/*
* Assert if invalid cpu_ops obtained. If this is not valid, it may
* suggest that the proper CPU file hasn't been included.
*/
cmp x0, #0
ASM_ASSERT(ne)
#endif
/* Get the cpu_ops reset handler */ /* Get the cpu_ops reset handler */
ldr x2, [x0, #CPU_RESET_FUNC] ldr x2, [x0, #CPU_RESET_FUNC]
mov x30, x19 mov x30, x19