a0971ec7ec
This change introduces a Qemu board for an Armv7-A target executing with OP-TEE secure world services. The target Linux based normal world embeds the standard minimal filesystem with OP-TEE non-secure components embedded files from OP-TEE test, examples and benchmark packages. qemu_arm_vexpress_tz_defconfig differs from qemu_arm_vexpress_defconfig. Supporting both secure and non-secure worlds on the Arm target mandates a secure world, here OP-TEE OS, and a bootloader to boot both worlds, here TF-A (boot/arm-trusted-firmware). Here non-secure Linux kernel is booted through U-boot TF-A bootloader (BL1/BL2) => OP-TEE (BL32) => U-boot (BL33). | Executes as secure | Secure | Execs as Non-secure | Loads BL32/BL33 in RAM | Jumps to BL33 | Always booted after | Jumps to BL32 once done | as Non-secure | secure world inits Vexpress and vexpress-tz defconfigs also differs in that Qemu emulates a Cortex-A9 in the former and a Cortex-A15 in the later. Cortex-A15 is the Armv7-A CPU used in upstream TF-A and OP-TEE OS packages hence selected here. Defconfig adds a fragment to the Linux kernel native configuration to enable OP-TEE driver support. Defconfig adds a fragment to the U-Boot native configuration set boot command, enable semihosting and remove U-Boot persistent environment storage support. The defconfig also enables build of the Qemu emulator in case the system installed Qemu does not yet support CPU TrustZone secure state. Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> [Arnout, with the help of Peter: correct spelling mistakes in readme, fix U-Boot version to 2019.01, download tarball of TF-A instead of git] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> |
||
---|---|---|
.. | ||
aarch64-virt | ||
arm-versatile | ||
arm-vexpress | ||
arm-vexpress-tz | ||
csky | ||
m68k-mcf5208 | ||
m68k-q800 | ||
microblazebe-mmu | ||
microblazeel-mmu | ||
mips32r2-malta | ||
mips32r2el-malta | ||
mips32r6-malta | ||
mips32r6el-malta | ||
mips64-malta | ||
mips64el-malta | ||
mips64r6-malta | ||
mips64r6el-malta | ||
nios2-10m50 | ||
or1k | ||
ppc64-e5500 | ||
ppc64-pseries | ||
ppc64le-pseries | ||
ppc-g3beige | ||
ppc-mac99 | ||
ppc-mpc8544ds | ||
ppc-virtex-ml507 | ||
riscv32-virt | ||
riscv64-virt | ||
sh4-r2d | ||
sh4eb-r2d | ||
sparc64-sun4u | ||
sparc-ss10 | ||
x86 | ||
x86_64 | ||
xtensa-lx60 |