You copied the Doc URL to your clipboard.

HVC

Hypervisor call to allow OS code to call the Hypervisor. It generates an exception targeting exception level 2 (EL2).

Syntax

HVC #imm

Where:

imm

Is a 16-bit unsigned immediate, in the range 0 to 65535.

Usage

Hypervisor Call causes an exception to EL2. Non-secure software executing at EL1 can use this instruction to call the hypervisor to request a service.

The HVC instruction:

  • Is UNDEFINED in ELO, and Secure EL1.
  • When SCR_EL3.HCE is set to 0, generates an Undefined Instruction exception.

On executing an HVC instruction, the PE records the exception as a Hypervisor Call exception, using the EC value 0x16, and the value of the immediate argument. This is reported in:

  • ESR_ELx, if the exception is taken to an Exception level that is using AArch64.
  • HSR in the ARMv8-A Architecture Reference Manual, if the exception is taken to an Exception level that is using AArch32. See Use of the HSR in the ARMv8-A Architecture Reference Manual.
Was this page helpful? Yes No