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

Page 723

Advertising
background image

Protocols

— Debugger Support

Version 1.10

12/01/02

16-9

Description

The

RegisterPeriodicCallback()

function registers and enables the on-target debug

agent’s periodic entry point. To unregister and disable calling the debug agent’s periodic entry
point, call

RegisterPeriodicCallback()

passing a

NULL

PeriodicCallback

parameter.

The implementation must handle saving and restoring the processor context to/from the system
context record around calls to the registered callback function.

If the interrupt is also used by the firmware for the EFI time base or some other use, two rules must
be observed. First, the registered callback function must be called before any EFI processing takes
place. Second, the Debug Support implementation must perform the necessary steps to pass control
to the firmware’s corresponding interrupt handler in a transparent manner.

There is no quality of service requirement or specification regarding the frequency of calls to the
registered

PeriodicCallback

function. This allows the implementation to mitigate a potential

adverse impact to EFI timer based services due to the latency induced by the context save/restore
and the associated callback function.

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

RegisterPeriodicCallback()

. 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

PeriodicCallback

parameter when a callback

function was previously registered.

EFI_OUT_OF_RESOURCES

System has insufficient memory resources to register new callback
function.

Advertising