Anda di halaman 1dari 22

UEFI Specification Work Group (USWG)

4/9/2007

The contents of this presentation


is a summary of the differences
between UEFI 2.0 and UEFI 2.1.
This data should be considered
informative and should not be
construed as normative material.

For normative material, refer to


the UEFI 2.1 Specification.
UEFI Specification Workgroup
(USWG)

4/9/2007

Human Interface Infrastructure.


Standard means of describing platform configuration and
user interface infrastructure. See the appropriate
chapters for details.
Also deprecates the previous Driver Configuration
Protocol.
Hardware Error Record Support.
Adds new variable attribute to signify a variable is a
hardware error record.
Adds new variable name to signify that Hardware Error
Record Support exists on this platform (i.e.
HwErrRecSupport).
Adds new variable name to indicate a hardware error
record (i.e. HwErrRec####)
Common Platform Error Record.
Established a standard error record format for
representing platform hardware errors.

UEFI Specification Workgroup


(USWG)

4/9/2007

Add Platform to driver configuration protocol.


Allows ability to have configuration data seeded
in a repository so that it can be retrieved prior
to a driver having its Start() function launched.
Add return code to SetVariable.
Added EFI_NOT_FOUND for SetVariable to be used
when trying to update or delete a variable which
does not exist.
Update to WIN_CERTIFICATE_EFI_PKCS1_15.
The HashType enumeration in the certificate
structure was never set. Replaced with
HashAlgorithm which is an EFI_GUID to match the
rest of security chapter content.
Add instance handle to IP4/TCP4 variable data.
Can now more simply associate an IP4/TCP4
instance with its parent hardware driver.

UEFI Specification Workgroup


(USWG)

4/9/2007

Driver Supported EFI Version Protocol.


Mechanism to determine what version of UEFI a driver
has been built for.
LoadImage() Update.
LoadImage will recognize an EFI driver image which has
an HII resource section embedded in it and install a
protocol on the drivers image handle.
Extended Simple Text Input.
SimpleTextInputEx was created so that added input data
could be returned such as shift state, hot keys, etc.
Application Registration Support.
Provides a way for 3rd party applications to register
themselves for launch by the Boot Manager based on
either user selection or a hot key.

UEFI Specification Workgroup


(USWG)

4/9/2007

Authenticated Variable Support.


Adds a capability for a platform owner to ensure that
variables are only updated in an owner-authorized
fashion. Authorization occurs via authentication of the
caller.
PCI Attribute change.
Current PCI Bus driver behavior is that the initial
state of memory, I/O, and bus master PCI_IO attributes
is disabled. During Stop() the bus driver changes
attributes back to disabled. We changed this so that
the bus driver sets the initial attributes are set to a
safe value for the system. During Stop() the bus
driver will restore values back to their initial safe
state.
Extended SCSI Pass Thru update.
Allows some of the buffers in the SCSI Request Packet
in the Extended SCSI Pass Thru Protocol to be optional
for those types of SCSI commands that do not require
the buffers.

UEFI Specification Workgroup


(USWG)

4/9/2007

Graphics Output Updates.


An EFI Graphics Output Protocol Mode structure
field was adjusted from **Info to *Info.
The EFI Graphics Output Protocol Query Mode Info
field was adjusted from *Info to **Info.
The EFI EDID Discovered Protocol had the Edid
field changed from Edid to *Edid.
Signaling on configuration change.
Added information in Event services which
describes that upon update of the EFI
Configuration Table, an event will occur to
signal a change has occurred for a particular
entry in the table.
Adding Absolute Pointer Support.
See EFI_ABSOLUTE_POINTER_PROTOCOL

UEFI Specification Workgroup


(USWG)

4/9/2007

Allow use of runtime services


with interrupts enabled.
IA-32

UEFI Specification Workgroup


(USWG)

4/9/2007

Allow use of runtime services


with interrupts enabled.
IPF

UEFI Specification Workgroup


(USWG)

4/9/2007

Allow use of runtime services


with interrupts enabled.
x64

UEFI Specification Workgroup


(USWG)

4/9/2007

10

Allow use of runtime services


with interrupts enabled.
Updated the Runtime Services
Rules and Restrictions (Table
27)
Reserve a range of status codes
for PI specification.

UEFI Specification Workgroup


(USWG)

4/9/2007

11

Remove dependency of PXE Base Code protocol on


Simple Network Protocol.
PXE will now layer on top of the Managed Network
Protocol.
New return code for DHCP->Parse function.
Add an EFI_OUT_OF_RESOURCES return code to the
Parse function.
Also Clarify the function description.
Add return code for DHCP->TransmitReceive function.
The ability to return EFI_NOT_SUPPORTED has been
added to this function.
Remove return code from IP4->Poll function.
Removed EFI_NO_MAPPING as possible return code.

UEFI Specification Workgroup


(USWG)

4/9/2007

12

Add support for EHCI controller


port ownership.

UEFI Specification Workgroup


(USWG)

4/9/2007

13

Define Firmware Storage Device


Path for PIWG

UEFI Specification Workgroup


(USWG)

4/9/2007

14

Correct name/GUID of the EFI Component Name


Protocol.
New GUID is: 0x6a7a5cff, 0xe8d9, 0x4f70, 0xba, 0xda, 0x75,
0xab, 0x30, 0x25, 0xce

Name is now EFI_COMPONENT_NAME2_PROTOCOL


Correct the GUID for the EFI ISCSI Initiator
Name Protocol.
New GUID is: 0x59324945, 0xec44, 0x4c0d, 0xb1, 0xcd, 0x9d, 0xb1,

0x39, 0xdf, 0x7, 0xc

Adding EFI_UNSUPPORTED as possibility for some


USB APIs.

EFI_USB2_HC_PROTCOL.IsochronousTransfer
EFI_USB2_HC_PROTCOL.AsyncIsochronousTransfer
EFI_USB_IO_PROTCOL.IsochronousTransfer
EFI_USB_IO_PROTCOL.AsyncIsochronousTransfer

UEFI Specification Workgroup


(USWG)

4/9/2007

15

SATA Device Path Update

UEFI Specification Workgroup


(USWG)

4/9/2007

16

Update SCSI IO Protocols ExecuteScsiCommand() with new


return code.
Instead of EFI_WARN_BUFFER_TOO_SMALL, this function
will now use EFI_BAD_BUFFER_SIZE.

UEFI Specification Workgroup


(USWG)

4/9/2007

17

Capsule Update.
Various clarifications and update in
language in the UpdateCapsule() section.
Installing ACPI Tables.
Add TPL restriction stating the ACPI
Table Protocol < TPL_NOTIFY
Tape I/O Clarifications.
Changed timeout values from a fixed 60
second value to implementation specific.
Correct Boot Services Table.
In initial 2.0 spec, inadvertently left
off a *Reserved field. 2.1 spec restored
it.
UEFI Specification Workgroup
(USWG)

4/9/2007

18

Updates to Device Path Protocol.


The function types named in the
protocol structure definition
were not consistent with the
function definitions.

Many instances of changing


EFI_DEVICE_PATH_FunctionName to
EFI_DEVICE_PATH_UTILS_FunctionName.
Change EFI_DEVICE_PATH_FROM_TEXT_NODE->ConvertDeviceNodeToText
to EFI_DEVICE_PATH_FROM_TEXT_NODE->ConvertTextToDeviceNode, and
EFI_DEVICE_PATH_FROM_TEXT_NODE->ConvertDevicePathToText to
EFI_DEVICE_PATH_FROM_TEXT_NODE->ConvertTextToDevicePath.
UEFI Specification Workgroup
(USWG)

4/9/2007

19

Various Cosmetic Inconsistencies

Minor cosmetic text corrections

Missing typedef definitions

Correcting poorly constructed typedef prototypes. (e.g. Replacing


comma with semi-colon, etc)
Usage Clarifications

Minor clarifications on GetMemoryMap() API language.

Minor clarifications on return codes in network stack.


Clarify Byte Order in ARP/DHCP Protocol

Clarify that incoming and outgoing ARP packets are in network byte
order and all other parameters or structures are in host byte order.
Clarify EFI Configuration Table Pointer Interpretation.

Whether this pointer is a physical address or a virtual address


during runtime is determined by the VendorGuid. The VendorGuid
associated with a given VendorTable pointer defines whether or not a
particular address gets fixed up when a call to
SetVirtualAddressMap() is made.

UEFI Specification Workgroup


(USWG)

4/9/2007

20

Clarify QueryVariableInfo() function..


Cleared up some details on interpreting the returned
MaximumVariableSize from this API.
Clarify cacheability of ACPI tables.
ACPI tables loaded at runtime must be contained in
memory of type EfiACPIMemoryNVS. The cacheability
attributes for ACPI tables loaded at runtime should be
defined in the EFI memory map. If no information about
the table location exists in the UEFI memory map,
cacheability attributes may be obtained from ACPI
memory descriptors. If no information about the table
location exists in the UEFI memory map or ACPI memory
descriptors, the table is assumed to be non-cached.
Various clarifications to the Device Node Table (Table 77)
Clarifications are in support of the Device Path
From/To Text Protocols.
WIN Certificate update.
Clarify the structure definition so that the
bCertificate field is shown as a comment.
UEFI Specification Workgroup
(USWG)

4/9/2007

21

UEFI Specification Workgroup


(USWG)

4/9/2007

22

Anda mungkin juga menyukai