beautypg.com

Intel Extensible Firmware Interface User Manual

Page 278

background image

Extensible Firmware Interface Specification

9-36

12/01/02

Version 1.10

Description

This function allows the configuration options to be set for the driver specified by

This

on the

controller specified by

ControllerHandle

and

ChildHandle

. This function must only use

the

SIMPLE_INPUT_PROTOCOL

and

SIMPLE_TEXT_OUPUT_PROTOCOL

from the

EFI_SYSTEM_TABLE

to interact with the user, and it must use the language specified by

Language

. If the driver specified by

This

does not support the language specified by

Language

, then

EFI_UNSUPPORTED

is returned. If the controller specified by

ControllerHandle

and

ChildHandle

is not supported by the driver specified by

This

,

then

EFI_UNSUPPORTED

is returned. If a device error occurs while setting the configuration

options,

EFI_DEVICE_ERROR

is returned. If there are not enough resources available to set the

configuration options, then

EFI_OUT_OF_RESOURCES

is returned.

The

ActionRequired

return value must always be set to a legal value by this function. The

caller must perform the required action regardless of the return status. The calling agent must also
perform the action described by

ActionRequired

prior to using any of the services produced by

ControllerHandle

or any of its children.

Related Definitions

//*******************************************************
// EFI_DRIVER_CONFIGURATION_ACTION_REQUIRED
//*******************************************************
typedef enum {
EfiDriverConfigurationActionNone = 0,
EfiDriverConfigurationActionStopController = 1,
EfiDriverConfigurationActionRestartController = 2,
EfiDriverConfigurationActionRestartPlatform = 3,
EfiDriverConfigurationActionMaximum
} EFI_DRIVER_CONFIGURATION_ACTION_REQUIRED;

EfiDriverConfigurationActionNone

The controller specified by

ControllerHandle

is still in a usable state. No actions

are required before this controller can be used again.

EfiDriverConfigurationStopController

The driver has detected that the controller specified by

ControllerHandle

is not in a

usable state, and it needs to be stopped. The calling agent can use the

DisconnectController()

service to perform this operation, and it should be

performed as soon as possible.

EfiDriverConfigurationRestartController

This controller specified by

ControllerHandle

needs to be stopped and restarted

before it can be used again. The calling agent can use the

DisconnectController()

and

ConnectController()

services to perform

this operation. The restart operation can be delayed until all of the configuration options
have been set.