CFG_GetCodeVersions

CFG_GetCodeVersions returns a list of versions for all firmware components as well as the version of the BIOS. Returned Versions could be in the form:

Component Description Text

Version Format

“Flash”

XX.YY.ZZZZ
where X, Y, Z are decimal digits

Reported in Intel AMT Release 2.0 and up and Intel AMT Release 1.0.

“Netstack”

XX.YY.ZZZZ
where X, Y, Z are decimal digits

Reported in Intel AMT Release 2.0 and up and Intel AMT Release 1.0.

“AMTApps”

XX.YY.ZZZZ
where X, Y, Z are decimal digits

Reported in Intel AMT Release 2.0 and up and Intel AMT Release 1.0.

“AMT”

XX.YY.ZZZZ
where X, Y, Z are decimal digits

Reported in Intel AMT Release 2.0 and up.

“Sku”

For Intel AMT 2.0, Intel AMT 2.1 and Intel AMT 2.2

X

where X is a value of:

0 = AMT + ASF + iQST SKU

1 = ASF + iQST SKU

2 = iQST SKU

 

For Intel AMT 2.5 and above

X

Where X is a value of the following bitmap

Bit 0: Reserved

Bit 1: iQST

Bit 2: ASF

Bit 3: AMT

Bit 4..31 – Reserved

 

Example 0x0C = AMT + ASF

“VendorID”

Identifier of Vendor ID.
For example:
“8086” = Intel Corp.
“04b3” =  IBM Corp.

Reported in Intel AMT Release 2.0 and up.

“Build Number”

XXXX
Where X is a decimal digit.
Describes the build number of the current build:

Reported in Intel AMT Release 2.0 and up.

“Recovery Version”

XX.YY.ZZZZ
Where X, Y, Z are decimal digits.

Describes the version of the recovery partition.
The reported version might also be “unknown” if recovery partition update fails.

Reported in Intel AMT Release 2.0 and up.

“Recovery Build Num”

XXXX
Where X is a decimal digit.

Describes the build number of the recovery partition. The reported number might also be “unknown” if recovery partition update fails.

Reported in Intel AMT Release 2.0 and up.

CFG_GetCodeVersions Request

typedef struct _CFG_GET_CODE_VERSIONS_REQUEST

{

    PTHI_MESSAGE_HEADER     Header;

} CFG_GET_CODE_VERSIONS_REQUEST;

 

Field

Description

Header.Version

Major and minor interface version.

Header.Reserved

0000h

Header.Command

0400001Ah

Header.Length

Message Length, excluding the message header.

CFG_GetCodeVersions Response

typedef struct _CFG_GET_CODE_VERSIONS_RESPONSE

{

    PTHI_MESSAGE_HEADER     Header;

    AMT_STATUS              Status;

    UINT8                   BiosVersion[65];

    UINT32                  VersionsCount;

    AMT_FW_VERSION_TYPE     Versions[];

} CFG_GET_CODE_VERSIONS_RESPONSE;

 

Field

Description

Header.Version

Major and minor interface version.

Header.Reserved

0000h

Header.Command

0480001Ah

Header.Length

Message Length, excluding the message header.

Status

A status code returned in a response message that indicates whether the operation specified in the corresponding request message succeeded or failed. If the operation failed, this code indicates the specific reason for failure.

BiosVersion

Version of BIOS

VersionsCount

Number of components with their versions returned in this struct (for Intel AMT Release 1.0, should be 6).

Versions

Array of the components versions (see table above)

 

 

note-icon Note:

The Versions parameter is an array of AMT_FW_VERSION_TYPE, which consists of two AMT_UNICODE_STRING. In this array, all the strings have a fixed length of 20 bytes. The “Length” parameter holds the actual string size (excluding the terminating NULL).

If Patch does not exist in current image, Patch version will be 0.0.0

All versions are encoded as UTF-8 strings.

CFG_GetCodeVersions Status Codes

Status

Description

AMT_STATUS_SUCCESS

Request succeeded.

AMT_STATUS_INTERNAL_ERROR

An internal error in the Intel AMT device has occurred

AMT_STATUS_NOT_READY

Management controller has not progressed far enough in its initialization to process the command.

AMT_STATUS_INVALID_MESSAGE_LENGTH

Length field of header is invalid.

Copyright © 2006-2022, Intel Corporation. All rights reserved.