Intel Extensible Firmware Interface manuels

Manuels d'utilisation et guides de l'utilisateur pour Matériel Intel Extensible Firmware Interface.
Nous fournissons des manuels en pdf 1 Intel Extensible Firmware Interface à télécharger gratuitement par type de document : Manuel d'utilisateur


Table des matières

Specification

1

Acknowledgements

2

History

3

Contents

5

Version 1.10 12/01/02 vii

7

Version 1.10 12/01/02 ix

9

Contents

11

Version 1.10 12/01/02 xi

11

Version 1.10 12/01/02 xv

15

Version 1.10 12/01/02 xix

19

Version 1.10 12/01/02 xxi

21

Version 1.10 12/01/02 xxv

25

Introduction

27

1-2 12/01/02 Version 1.10

28

1.2 Overview

29

1.3 Goals

32

Version 1.10 12/01/02 1-7

33

1.4 Target Audience

34

1.5 EFI Design Overview

34

1.6 EFI Driver Model

35

1.6.1 EFI Driver Model Goals

36

1.7 Migration Requirements

37

1-12 12/01/02 Version 1.10

38

Version 1.10 12/01/02 1-13

39

1.8.5 Pseudo-Code Conventions

40

1.8.6 Typographic Conventions

40

Overview

41

2.1.1 EFI Images

42

2.1.2 EFI Applications

43

2.1.3 EFI OS Loaders

44

2.1.4 EFI Drivers

44

2.2.1 EFI Services

45

2.2.2 Runtime Services

46

2.3.1 Data Types

47

NULL may be

48

2.3.2 IA-32 Platforms

49

2.3.2.1 Handoff State

50

2.3.3 Itanium

51

-Based Platforms

51

2.4 Protocols

52

Table 2-4. EFI Protocols

54

2.5 EFI Driver Model

55

Figure 2-5. Desktop System

56

Figure 2-6. Server System

56

Version 1.10 12/01/02 2-17

57

2-18 12/01/02 Version 1.10

58

Version 1.10 12/01/02 2-19

59

2.5.2 Driver Initialization

60

2.5.3 Host Bus Controllers

61

2.5.4 Device Drivers

63

2.5.5 Bus Drivers

64

Bus Controller

65

2.5.6 Platform Components

66

2.5.7 Hot-Plug Events

67

2.6.1 Required Elements

68

Version 1.10 12/01/02 2-29

69

2-30 12/01/02 Version 1.10

70

Boot Manager

71

Descriptor

73

Table 3-1 Global Variables

75

3.4 Boot Mechanisms

77

3.4.2.1 Network Booting

78

3.4.2.2 Future Boot Media

78

EFI System Table

79

4.2 EFI Table Header

81

EFI_TABLE_HEADER

81

4.3 EFI System Table

82

EFI_SYSTEM_TABLE

82

EFI_BOOT_SERVICES

84

EFI System Table

85

EFI_RUNTIME_SERVICES

89

EFI_CONFIGURATION_TABLE

91

Table 5-2. TPL Usage

101

Table 5-3. TPL Restrictions

102

Prototype

103

Parameters

103

Related Definitions

103

5-6 12/01/02 Version 1.10

104

Description

105

Status Codes Returned

106

ExitBootServices()

117

Services — Boot Services

125

Version 1.10 12/01/02 5-27

125

5.3 Protocol Handler Services

129

5-32 12/01/02 Version 1.10

130

Version 1.10 12/01/02 5-33

131

Figure 5-2. Handle Database

132

Version 1.10 12/01/02 5-35

133

EFI 1.10 Extension

136

Examples

152

5.4 Image Services

174

Table 5-9. Image Functions

175

StartImage()

178

UnloadImage()

179

5-94 12/01/02 Version 1.10

192

6.1 Variable Services

194

GetVariable()

195

Summary

195

GetNextVariableName()

197

SetVariable()

199

6.2 Time Services

201

GetTime()

202

6.3 Virtual Memory Services

208

SetVirtualAddressMap()

209

ResetSystem()

213

EFI_LOADED_IMAGE Protocol

217

Version 1.10 12/01/02 7-3

219

8.1 Device Path Overview

221

8.2 EFI_DEVICE_PATH Protocol

222

EFI_DEVICE_PATH Protocol

222

8.3 Device Path Nodes

223

8.3.2 Hardware Device Path

225

8.3.2.1 PCI Device Path

225

8.3.2.2 PCCARD Device Path

225

8.3.2.4 Vendor Device Path

226

8.3.3 ACPI Device Path

227

Table 8-8. ACPI Device Path

228

8.3.4 Messaging Device Path

229

8.3.4.1 ATAPI Device Path

229

8.3.4.2 SCSI Device Path

230

8.3.4.4 1394 Device Path

230

8.3.4.5 USB Device Path

231

8.3.4.7 I

232

O Device Path

232

8.3.4.9 IPv4 Device Path

232

8.3.4.10 IPv6 Device Path

233

8.3.4.12 UART Device Path

234

8.3.5 Media Device Path

236

8.3.5.1 Hard Drive

236

8.4.1 Housekeeping Rules

240

8.4.3 Rules with ACPI _ADR

241

8.4.6 Other Rules

242

EFI_DRIVER_BINDING_PROTOCOL

243

Protocol Interface Structure

244

Version 1.10 12/01/02 9-5

247

Pseudo Code

249

9-8 12/01/02 Version 1.10

250

Chapter 4

251

EFI_COMPONENT_NAME_PROTOCOL

289

10.1 Console I/O Protocol

295

SIMPLE_INPUT_INTERFACE

297

10.2 Simple Input Protocol

298

SIMPLE_INPUT

298

Version 1.10 12/01/02 10-5

299

SIMPLE_INPUT.ReadKeyStroke()

300

SIMPLE_TEXT_OUTPUT Protocol

302

10.4.1 UGA ROM

318

10.4.2 UGA Draw Protocol

319

10.4.3 Blt Buffer

319

10.4.4 UGA I/O Protocol

320

10.4.5 Fallback Mode Driver

320

10.5 UGA Draw Protocol

321

EFI_UGA_DRAW_PROTOCOL

321

EFI_UGA_DRAW_PROTOCOL.Blt()

325

10.7 UGA I/O Protocol

329

EFI_UGA_IO_PROTOCOL

329

EFI_SIMPLE_POINTER_PROTOCOL

340

10.12 Serial I/O Protocol

349

SERIAL_IO_PROTOCOL

349

SERIAL_IO.SetAttributes()

353

SERIAL_IO.SetControl()

355

11.1 LOAD_FILE Protocol

361

LOAD_FILE Protocol

361

LOAD_FILE.LoadFile()

362

11.2 File System Format

364

11.2.1.1 File System Format

365

11.2.1.2 File Names

365

11.2.1.3 Directory Structure

365

11.2.2 Partition Discovery

367

Partition

369

Table HDR

369

11.2.3 Media Formats

375

11.2.3.1 Removable Media

375

11.2.3.2 Diskette

375

11.2.3.3 Hard Drive

376

11.2.3.4 CD-ROM and DVD-ROM

376

11.2.3.5 Network

376

11.3 File System Protocol

377

11.4 EFI_FILE Protocol

380

EFI_FILE Protocol

380

EFI_FILE.Open()

382

EFI_FILE.Write()

387

EFI_FILE_INFO

393

11.5 DISK_IO Protocol

397

DISK_IO Protocol

397

11.6 BLOCK_IO Protocol

401

BLOCK_IO Protocol

401

EFI_BLOCK_IO.ReadBlocks()

405

EFI_BLOCK_IO.WriteBlocks()

407

UNICODE_COLLATION Protocol

410

0 s1 is equivalent to s2

412

UNICODE_COLLATION.StrLwr()

415

UNICODE_COLLATION.StrUpr()

416

UNICODE_COLLATION.FatToStr()

417

Protocols-PCIBusSupport

419

Core Chipset Components

420

Front Side Bus

420

Device Handle

421

PCI Local Bus

422

PCI Host Bus

422

PCI Root Bridge

422

PCI Segment 0

424

PCI Segment 1

424

0x26 0x08 Address Length

459

Image Handle

464

EFI_LOADED_IMAGE_PROTOCOL

464

12.3.2 PCI Bus Drivers

467

PCI Controller Device Handle

469

12.3.2.2 PCI Enumeration

471

12.3.3 PCI Device Drivers

471

12.4 EFI PCI I/O Protocol

473

EFI_PCI_IO_PROTOCOL

474

to the PCI Root Bridge

483

for the

484

for the width specified by

486

, Width, and Count is not

488

, Width, and Count

495

, Width, and Count is

495

EFI_PCI_IO_PROTOCOL.Map()

496

, and Length

510

12.4.1 PCI Device Paths

512

12.4.2 PCI Option ROMs

514

Byte Length Description

515

to EFI Image

516

to PCIR Data Structure

516

PCI Device Driver Image

517

12.4.3 Nonvolatile Storage

519

12.4.4 PCI Hot-Plug Events

520

EFI_SCSI_PASS_THRU Protocol

521

Protocols - USB Support

541

EFI_USB_HC_PROTOCOL

542

14-4 12/01/02 Version 1.10

544

14.2 USB Driver Model

574

14.2.3 USB Bus Driver

575

14.2.3.3 USB Hot-Plug Event

576

14.2.4 USB Device Driver

577

EFI_USB_IO Protocol

578

Status Code Returned

582

Protocols — USB Support

599

14-62 12/01/02 Version 1.10

602

14.2.6 USB Device Paths

604

EFI_SIMPLE_NETWORK Protocol

607

IN UINTN BufferSize

624

EFI_SIMPLE_NETWORK.Receive()

630

Revision Number

632

15.3 PXE Base Code Protocol

635

EFI_PXE_BASE_CODE Protocol

635

DHCP Packet Data Types

642

IP Receive Filter Settings

644

ARP Cache Entries

644

EFI_PXE_BASE_CODE.Start()

647

EFI_PXE_BASE_CODE.Dhcp()

651

EFI_PXE_BASE_CODE.Discover()

653

EFI_PXE_BASE_CODE.Mtftp()

656

EFI_PXE_BASE_CODE.UdpWrite()

660

EFI_PXE_BASE_CODE.UdpRead()

662

Protocols — Network Support

665

Version 1.10 12/01/02 15-59

665

EFI_BIS.Initialize()

678

EFI_BIS.Shutdown()

682

EFI_BIS.GetSignatureInfo()

688

Digest-Algorithms: SHA-1

697

EFI_BIS.VerifyBootObject()

701

16.1 Overview

715

EFI_DEBUG_SUPPORT_PROTOCOL

717

UINT16 Ds;

721

16.3 EFI Debugport Protocol

728

EFI_DEBUGPORT_PROTOCOL

729

16.3.2 Debugport Device Path

734

16.4.1 Overview

736

16.4.3 EFI Image Info

738

17.2 Data Format

743

Block Header

744

Block Body

744

Table 17-1

745

17.2.3.2 Block Body

747

17.3 Compressor Design

748

17.3.2 String Info Log

749

17.3.2.1 Data Structures

750

17.3.2.2 Searching the Tree

751

17.3.2.3 Adding String Info

751

Figure 17-6. Node Split

752

17.3.3.3 Code Generation

754

17.4 Decompressor Design

755

17.5 Decompress Protocol

756

EFI_DECOMPRESS_PROTOCOL

756

Protocols-DeviceI/OProtocol

761

18.2 DEVICE_IO Protocol

762

DEVICE_IO Protocol

762

DEVICE_IO.Map()

768

DEVICE_IO.AllocateBuffer()

771

19.1 Overview

775

19.1.2 OS Independent

776

19.1.3 EFI Compliant

776

19.1.5 Relocatable Image

776

19.2 Memory Ordering

777

19.4 Natural Indexing

779

19.4.3 Constant

780

19.4.4 Natural Units

780

19.5.1 Direct Operands

781

19.5.2 Indirect Operands

781

19.5.4 Immediate Operands

782

19.6 EBC Instruction Syntax

783

19.7 Instruction Encoding

783

19.8 EBC Instruction Set

785

SYNTAX:

786

DESCRIPTION:

786

OPERATION:

786

BEHAVIORS AND RESTRICTIONS:

786

DESCRIPTION

789

BEHAVIOR AND RESTRICTIONS:

793

OPERATION

822

STORESP

832

19.9.1 Calling Outside VM

835

19.9.2 Calling Inside VM

835

19.9.3 Parameter Passing

835

19.9.4 Return Values

835

19.9.5 Binary Format

835

EFI_EBC_PROTOCOL

837

19.12 EBC Tools

844

19.12.8 Function Returns

845

19.12.10 Thunking

846

19.12.11 EBC Linker

848

19.12.12 Image Loader

848

19.12.13 Debug Support

848

19.13 VM Exception Handling

849

19.14 Option ROM Formats

850

Appendix A

851

GUID and Time Formats

851

A-2 12/01/02 Version 1.10

852

Appendix B

853

Console

853

B.2 SIMPLE_TEXT_OUTPUT

854

SIMPLE_TEXT_OUTPUT

855

Version 1.10 12/01/02 B-4

856

C.1 Example Computer System

857

C.2 Legacy Floppy

858

C.3 IDE Disk

859

C.5 ACPI Terms

862

Device Path Examples

863

Version 1.10 12/01/02 C-7

863

C-8 12/01/02 Version 1.10

864

Appendix D

865

Status Codes

865

Appendix E

867

32/64-Bit UNDI Specification

867

E.1.3 OS Network Stacks

871

Pro Con

872

E.2 Overview

873

E.2.2 UNDI Command Format

879

E.3 UNDI C Definitions

881

E.3.1.3 PXE_BUSTYPE

882

E.3.1.4 PXE_SWAP_UINT16

882

E.3.1.5 PXE_SWAP_UINT32

883

E.3.1.6 PXE_SWAP_UINT64

883

E.3.2 Miscellaneous Macros

884

E.3.2.1 Miscellaneous

884

E.3.3 Portability Types

884

E.3.3.1 PXE_CONST

884

E.3.3.2 PXE_VOLATILE

884

E.3.4 Simple Types

886

E.3.4.1 PXE_BOOL

886

E.3.4.2 PXE_OPCODE

886

E.3.4.3 PXE_OPFLAGS

887

E.3.4.4 PXE_STATFLAGS

892

E.3.4.5 PXE_STATCODE

896

E.3.4.6 PXE_IFNUM

896

E.3.4.7 PXE_CONTROL

897

E.3.4.8 PXE_FRAME_TYPE

897

E.3.4.9 PXE_IPV4

897

E.3.4.10 PXE_IPV6

897

E.3.4.11 PXE_MAC_ADDR

897

E.3.4.12 PXE_IFTYPE

898

E.3.5 Compound Types

899

E.3.5.1 PXE_HW_UNDI

899

E.3.5.2 PXE_SW_UNDI

901

E.3.5.3 PXE_UNDI

901

E.3.5.4 PXE_CDB

902

E.3.5.5 PXE_IP_ADDR

903

E.3.5.6 PXE_DEVICE

903

E.4 UNDI Commands

904

Figure E-7. Linked CDBs

905

Figure E-8. Queued CDBs

906

E.4.2 Get State

907

E.4.2.1 Issuing the Command

907

E.4.3 Start

909

E.4.3.1 Issuing the Command

909

Preparing the CPB

910

E.4.4 Stop

914

E.4.4.1 Issuing the Command

914

E.4.5 Get Init Info

915

E.4.5.1 Issuing the Command

915

StatFlags

916

E.4.6 Get Config Info

919

E.4.6.1 Issuing the Command

919

E.4.7 Initialize

922

E.4.7.1 Issuing the Command

922

Before Using the DB

925

E.4.8 Reset

926

E.4.8.1 Issuing the Command

926

E.4.9 Shutdown

928

E.4.9.1 Issuing the Command

928

E.4.10 Interrupt Enables

930

E.4.11 Receive Filters

932

E.4.12 Station Address

935

E.4.13 Statistics

937

E.4.14 MCast IP To MAC

940

E.4.15 NvData

942

Bulk NvData CPB

943

E.4.16 Get Status

945

Using the DB

947

E.4.17 Fill Header

948

Fragmented Frame

949

E.4.18 Transmit

951

OpFlags

952

Nonfragmented Frame

952

E.4.19 Receive

955

Appendix F

959

Appendix G

961

G-4 12/01/02 Version 1.10

964

Appendix H

965

Compression Source Code

965

Appendix I

993

Decompression Source Code

993

Appendix J

1009

Opcode Summary

1009

Appendix K

1011

Alphabetic Function Lists

1011

RegisterPeriodicCallback()

1016

RegisterExceptionCallback()

1016

References

1043

ACPI Specification

1047

WfM Specification

1047

Glossary

1049

Glossary

1051

Index

1069





Plus de produits et de manuels pour Matériel Intel

Modèles Type de document
IXDP465 Manuel d'utilisateur   Intel IXDP465 User Manual, 22 pages
83C51FA Manuel d'utilisateur   Intel 83C51FA User Manual, 13 pages
WiFi Link 5100 Manuel d'utilisateur   Intel WiFi Link 5100 User Manual, 40 pages
SERVER BOARD SDS2 Manuel d'utilisateur   Intel SERVER BOARD SDS2 User Manual, 145 pages
GA-8IPXDR-E Manuel d'utilisateur   Intel GA-8IPXDR-E User Manual, 70 pages
3945ABG Manuel d'utilisateur   Intel 3945ABG User Manual, 180 pages
D975XBX Manuel d'utilisateur   Intel D975XBX User Manual, 78 pages
LGA775 Manuel d'utilisateur   Intel LGA775 User Manual, 65 pages
GA-G31M-S2L Manuel d'utilisateur   Intel GA-G31M-S2L User Manual, 88 pages
CV702A Manuel d'utilisateur   Intel CV702A User Manual, 63 pages
D865GBF Manuel d'utilisateur   Intel D865GBF User Manual, 94 pages
AW8D Manuel d'utilisateur   Intel AW8D User Manual, 80 pages
GA-8IPE1000 Manuel d'utilisateur   Intel GA-8IPE1000 User Manual, 80 pages
SERVER BOARD S5520HC Manuel d'utilisateur   Intel SERVER BOARD S5520HC User Manual, 30 pages
iEi Motherboard A300 Manuel d'utilisateur   Intel iEi Motherboard A300 User Manual, 192 pages
GA-8I955X ROYAL Manuel d'utilisateur   Intel GA-8I955X ROYAL User Manual, 88 pages
8VM533M-RZ-C Manuel d'utilisateur   Intel 8VM533M-RZ-C User Manual, 36 pages
ENTERPRISE PRINTING SYSTEM (EPS) 4112 Manuel d'utilisateur   Intel ENTERPRISE PRINTING SYSTEM (EPS) 4112 User Manual, 84 pages
41210 Manuel d'utilisateur   Intel 41210 User Manual, 64 pages
Socket 478 AIMB-744 Manuel d'utilisateur   Intel Socket 478 AIMB-744 User Manual, 108 pages