ABL is not a component of AVF, but it plays a crucial role in loading the necessary AVF components and initializing them in a correct way. This doc explains the responsibilities of ABL from the perspective of AVF.
ABL is responsible for the followings:
See ABL Support for more detail.
ABL is also responsible for constructing the pvmfw configuration data. The data consists of the following info:
See Configuration Data for more detail.
ABL is responsible for setting the following bootconfigs describing the status and capabilities of the hypervisor.
androidboot.hypervisor.version
: free-form description of the hypervisorandroidboot.hypervisor.vm.supported
: whether traditional VMs (i.e. non-protected VMS) are supported or notandroidboot.hypervisor.protected_vm.supported
: whether protected VMs are supported or notThee bootconfigs are converted into system properties by the init process.
See HypervisorProperties.prop for more detail.