mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-18 02:24:18 +00:00
pass r0-r6 as part of smc param
In new communication protocol between optee os and linux driver, r0-r6 registers are used. opteed need to copy these registers as well when optee context registers are initialized. Change-Id: Ifb47b73f847c61746cb58ea78411c1c71f208030 Signed-off-by: Ashutosh Singh <ashutosh.singh@arm.com>
This commit is contained in:
parent
6b1ca8f358
commit
56a6412de8
1 changed files with 12 additions and 0 deletions
|
@ -265,6 +265,18 @@ uint64_t opteed_smc_handler(uint32_t smc_fid,
|
|||
cm_el1_sysregs_context_restore(SECURE);
|
||||
cm_set_next_eret_context(SECURE);
|
||||
|
||||
write_ctx_reg(get_gpregs_ctx(&optee_ctx->cpu_ctx),
|
||||
CTX_GPREG_X4,
|
||||
read_ctx_reg(get_gpregs_ctx(handle),
|
||||
CTX_GPREG_X4));
|
||||
write_ctx_reg(get_gpregs_ctx(&optee_ctx->cpu_ctx),
|
||||
CTX_GPREG_X5,
|
||||
read_ctx_reg(get_gpregs_ctx(handle),
|
||||
CTX_GPREG_X5));
|
||||
write_ctx_reg(get_gpregs_ctx(&optee_ctx->cpu_ctx),
|
||||
CTX_GPREG_X6,
|
||||
read_ctx_reg(get_gpregs_ctx(handle),
|
||||
CTX_GPREG_X6));
|
||||
/* Propagate hypervisor client ID */
|
||||
write_ctx_reg(get_gpregs_ctx(&optee_ctx->cpu_ctx),
|
||||
CTX_GPREG_X7,
|
||||
|
|
Loading…
Add table
Reference in a new issue