target/cortex_a: add hypervisor mode
authorAntonio Borneo <borneo.antonio@gmail.com>
Tue, 25 Jun 2019 14:01:38 +0000 (16:01 +0200)
committerAntonio Borneo <borneo.antonio@gmail.com>
Thu, 12 Mar 2020 10:11:19 +0000 (10:11 +0000)
commitb5d2b1224fed3909aa3314339611ac5ac7ab0f82
tree5e38e99cfe6dbdf131b4b452948b3b889b7eac23
parent6900c5af4ec3f6df52227169d7d897eb14a44bca
target/cortex_a: add hypervisor mode

Hypervisor mode is present only if the optional virtualization
extensions are available. Moreover, virtualization extensions
require that also security extensions are implemented.

Add the required infrastructure for the shadowed registers in
hypervisor mode.
Make monitor shadowed registers visible in hypervisor mode too.
Make hypervisor shadowed registers visible in hypervisor mode
only.
Check during cortex_a examine if virtualization extensions are
present and then conditionally enable the visibility of both
hypervisor and monitor modes shadowed registers.

Change-Id: I81dbb1ee8baf4c9f1a2226b77c10c8a2a7b34871
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5261
Tested-by: jenkins
src/target/arm.h
src/target/armv4_5.c
src/target/armv4_5.h
src/target/cortex_a.c