Description, Status codes returned – Intel Extensible Firmware Interface User Manual

Page 726

Advertising
background image

Extensible Firmware Interface Specification

16-12

12/01/02

Version 1.10

#define EXCEPT_IPF_DEBUG 29
#define EXCEPT_IPF_UNALIGNED_REFERENCE 30
#define EXCEPT_IPF_UNSUPPORTED_DATA_REFERENCE 31
#define EXCEPT_IPF_FP_FAULT 32
#define EXCEPT_IPF_FP_TRAP 33
#define EXCEPT_IPF_LOWER_PRIVILEGE_TRANSFER_TRAP 34
#define EXCEPT_IPF_TAKEN_BRANCH 35
#define EXCEPT_IPF_SINGLE_STEP 36
// 37 - 44 reserved
#define EXCEPT_IPF_IA32_EXCEPTION 45
#define EXCEPT_IPF_IA32_INTERCEPT 46
#define EXCEPT_IPF_IA32_INTERRUPT 47

Description

The

RegisterExceptionCallback()

function registers and enables an exception callback

function for the specified exception. The specified exception must be valid for the instruction set
architecture. To unregister the callback function and stop servicing the exception, call

RegisterExceptionCallback()

passing a

NULL

ExceptionCallback

parameter.

The implementation must handle saving and restoring the processor context to/from the system
context record around calls to the registered callback function. No chaining of exception handlers
is allowed.

It is the responsibility of the caller to insure all parameters are correct. There is no provision for
parameter checking by

RegisterExceptionCallback()

. The implementation behavior

when an invalid parameter is passed is not defined by this specification.

Status Codes Returned

EFI_SUCCESS

The function completed successfully.

EFI_ALREADY_STARTED

Non-

NULL

ExceptionCallback

parameter when a

callback function was previously registered.

EFI_OUT_OF_RESOURCES

System has insufficient memory resources to register new callback
function.

Advertising