Itanium-Based Platforms; Ia-32 Platforms - Intel Extensible Firmware Interface Specification

Intel extensible firmware interface specification
Table of Contents

Advertisement

Extensible Firmware Interface Specification
2.3.2

IA-32 Platforms

All functions are called with the C language calling convention. The general-purpose registers that
are volatile across function calls are eax, ecx, and edx. All other general-purpose registers are non-
volatile and are preserved by the target function. In addition, unless otherwise specified by the
function definition, all other registers are preserved. For example, this would include the entire
floating point and Intel
During boot services time the processor is in the following execution mode:
Uniprocessor
Protected mode
Paging mode not enabled
Selectors are set to be flat and are otherwise not used
Interrupts are enabled – though no interrupt services are supported other than the EFI boot
services timer functions (All loaded device drivers are serviced synchronously by "polling.")
Direction flag in EFLAGs is clear
Other general purpose flag registers are undefined
128 KB, or more, of available stack space
For an operating system to use any EFI runtime services, it must:
Preserve all memory in the memory map marked as runtime code and runtime data
Call the runtime service functions, with the following conditions:
 Called from the boot processor
 In protected mode
 Paging not enabled
 All selectors set to be flat with virtual = physical address. If the OS Loader or OS used
SetVirtualAddressMap()
space, then this condition does not have to be met.
 Direction flag in EFLAGs clear
 4 KB, or more, of available stack space
 Interrupts disabled
Synchronize processor access to the legacy CMOS registers (if there are multiple processors).
Only one processor can access the registers at any given time.
2.3.3

Itanium-based Platforms

EFI executes as an extension to the SAL execution environment with the same rules as laid out by
the SAL specification.
During boot services time the processor is in the following execution mode:
Uniprocessor
Physical mode
128 KB, or more, of available stack space
16 KB, or more, of available backing store space
May only use the lower 32 floating point registers
18
®
MMX
technology state.
to relocate the runtime services in a virtual address
12/12/00
Version 1.02

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Extensible Firmware Interface and is the answer not in the manual?

Table of Contents