oprom - Man Page

Oprom

Synopsis

Functions

IGSC_EXPORT int igsc_image_oprom_init (IN OUT struct igsc_oprom_image **img, IN const uint8_t *buffer, IN uint32_t buffer_len)
initializes OPROM image handle from the supplied OPROM update image​.
IGSC_EXPORT int igsc_image_oprom_version (IN struct igsc_oprom_image *img, IN enum igsc_oprom_type type, OUT struct igsc_oprom_version *version)
Retrieves the OPROM version from the supplied OPROM update image​.
IGSC_EXPORT int igsc_image_oprom_type (IN struct igsc_oprom_image *img, IN uint32_t *oprom_type)
Retrieves the OPROM type from the provided OPROM update image​.
IGSC_EXPORT int igsc_image_oprom_count_devices (IN struct igsc_oprom_image *img, OUT uint32_t *count)
Retrieves a count of of different devices supported by the OPROM update image associated with the handle​.
IGSC_EXPORT int igsc_image_oprom_supported_devices (IN struct igsc_oprom_image *img, OUT struct igsc_oprom_device_info *devices, IN OUT uint32_t *count)
Retrieves a list of supported devices by the OPROM update image associated with the handle​. The caller supplies allocated buffer devices of count size​. The function returns count filled with actually returned devices​.
IGSC_EXPORT int igsc_image_oprom_match_device (IN struct igsc_oprom_image *img, IN enum igsc_oprom_type request_type, IN struct igsc_device_info *device)
check if oprom image can be applied on the device​.
IGSC_EXPORT int igsc_image_oprom_iterator_reset (IN struct igsc_oprom_image *img)
reset the iterator over supported devices
IGSC_EXPORT int igsc_image_oprom_iterator_next (IN struct igsc_oprom_image *img, OUT struct igsc_oprom_device_info *device)
progress the supported device iterator and return the oprom device info
IGSC_EXPORT int igsc_image_oprom_count_devices_typed (IN struct igsc_oprom_image *img, IN uint32_t request_type, OUT uint32_t *count)
Retrieves a count of of different devices supported by the OPROM update image associated with the handle, based on image type​.
IGSC_EXPORT int igsc_image_oprom_supported_devices_typed (IN struct igsc_oprom_image *img, IN uint32_t request_type, OUT struct igsc_oprom_device_info_4ids *devices, IN OUT uint32_t *count)
Retrieves a list of supported devices based on image type by the OPROM update image associated with the handle​. The caller supplies allocated buffer devices of count size​. The function returns count filled with actually returned devices​.
IGSC_EXPORT int igsc_image_oprom_iterator_reset_typed (IN struct igsc_oprom_image *img, IN uint32_t request_type)
reset the iterator over supported devices based on image type
IGSC_EXPORT int igsc_image_oprom_iterator_next_typed (IN struct igsc_oprom_image *img, IN uint32_t request_type, OUT struct igsc_oprom_device_info_4ids *device)
progress the supported device iterator and return the oprom device info, based on image type
IGSC_EXPORT int igsc_image_oprom_has_4ids_extension (IN struct igsc_oprom_image *img, IN uint32_t request_type, OUT bool *has_4ids_extension)
returns whether the oprom image has 4ids device extension
IGSC_EXPORT int igsc_image_oprom_has_2ids_extension (IN struct igsc_oprom_image *img, OUT bool *has_2ids_extension)
returns whether the oprom image has 2ids device extension
IGSC_EXPORT int igsc_image_oprom_code_devid_enforced (IN struct igsc_hw_config *hw_config, OUT bool *devid_enforced)
returns whether the oprom code config has devId enforcement bit set
IGSC_EXPORT int igsc_image_oprom_release (IN struct igsc_oprom_image *img)
release the OPROM image handle
IGSC_EXPORT uint8_t igsc_oprom_version_compare (const struct igsc_oprom_version *image_ver, const struct igsc_oprom_version *device_ver)
Compares input oprom version to the flash one​.
IGSC_EXPORT int igsc_image_get_type (IN const uint8_t *buffer, IN const uint32_t buffer_len, OUT uint8_t *type)
Determine the type of the provided image​.

Detailed Description

Function Documentation

IGSC_EXPORT int igsc_image_get_type (IN const uint8_t * buffer, IN const uint32_t buffer_len, OUT uint8_t * type)

Determine the type of the provided image​.

Parameters

buffer A pointer to the buffer with the image​.
buffer_len Length of the buffer with the image​.
type Type of the image (enum igsc_image_type)​.

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_code_devid_enforced (IN struct igsc_hw_config * hw_config, OUT bool * devid_enforced)

returns whether the oprom code config has devId enforcement bit set

Parameters

hw_config device hardware configuration​.
devid_enforced true when devId is enforced, false otherwise

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_count_devices (IN struct igsc_oprom_image * img, OUT uint32_t * count)

Retrieves a count of of different devices supported by the OPROM update image associated with the handle​.

Parameters

img OPROM image handle
count the number of devices

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_count_devices_typed (IN struct igsc_oprom_image * img, IN uint32_t request_type, OUT uint32_t * count)

Retrieves a count of of different devices supported by the OPROM update image associated with the handle, based on image type​.

Parameters

img OPROM image handle
request_type type of oprom device, enum igsc_oprom_type
count the number of devices

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_has_2ids_extension (IN struct igsc_oprom_image * img, OUT bool * has_2ids_extension)

returns whether the oprom image has 2ids device extension

Parameters

img OPROM image handle
has_2ids_extension whether the oprom image has 2ids device extension

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_has_4ids_extension (IN struct igsc_oprom_image * img, IN uint32_t request_type, OUT bool * has_4ids_extension)

returns whether the oprom image has 4ids device extension

Parameters

img OPROM image handle
request_type type of oprom device
has_4ids_extension whether the oprom image has 4ids device extension

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_init (IN OUT struct igsc_oprom_image ** img, IN const uint8_t * buffer, IN uint32_t buffer_len)

initializes OPROM image handle from the supplied OPROM update image​.

Parameters

img OPROM image handle allocated by the function​.
buffer A pointer to the buffer with the OPROM update image​.
buffer_len Length of the buffer with the OPROM update image​.

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_iterator_next (IN struct igsc_oprom_image * img, OUT struct igsc_oprom_device_info * device)

progress the supported device iterator and return the oprom device info

Parameters

img OPROM image handle
device OPROM device information​.

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_iterator_next_typed (IN struct igsc_oprom_image * img, IN uint32_t request_type, OUT struct igsc_oprom_device_info_4ids * device)

progress the supported device iterator and return the oprom device info, based on image type

Parameters

img OPROM image handle
request_type type of oprom device, enum igsc_oprom_type
device OPROM device information​.

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_iterator_reset (IN struct igsc_oprom_image * img)

reset the iterator over supported devices

Parameters

img OPROM image handle

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_iterator_reset_typed (IN struct igsc_oprom_image * img, IN uint32_t request_type)

reset the iterator over supported devices based on image type

Parameters

img OPROM image handle
request_type type of oprom device, enum igsc_oprom_type

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_match_device (IN struct igsc_oprom_image * img, IN enum igsc_oprom_type request_type, IN struct igsc_device_info * device)

check if oprom image can be applied on the device​.

Parameters

img OPROM image handle
request_type type of oprom device to match
device physical device info

Returns
  • IGSC_SUCCESS if device is on the list of supported devices​.
  • IGSC_ERROR_DEVICE_NOT_FOUND otherwise​.

IGSC_EXPORT int igsc_image_oprom_release (IN struct igsc_oprom_image * img)

release the OPROM image handle

Parameters

img OPROM image handle

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_supported_devices (IN struct igsc_oprom_image * img, OUT struct igsc_oprom_device_info * devices, IN OUT uint32_t * count)

Retrieves a list of supported devices by the OPROM update image associated with the handle​. The caller supplies allocated buffer devices of count size​. The function returns count filled with actually returned devices​.

Parameters

img OPROM image handle
devices list of devices supported by the OPROM image
count in the number of devices allocated

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_supported_devices_typed (IN struct igsc_oprom_image * img, IN uint32_t request_type, OUT struct igsc_oprom_device_info_4ids * devices, IN OUT uint32_t * count)

Retrieves a list of supported devices based on image type by the OPROM update image associated with the handle​. The caller supplies allocated buffer devices of count size​. The function returns count filled with actually returned devices​.

Parameters

img OPROM image handle
request_type type of oprom device, enum igsc_oprom_type
devices list of devices supported by the OPROM image
count in the number of devices allocated

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_type (IN struct igsc_oprom_image * img, IN uint32_t * oprom_type)

Retrieves the OPROM type from the provided OPROM update image​.

Parameters

img OPROM image handle
oprom_type The variable to store obtained OPROM image type

See also

enum igsc_oprom_type

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT int igsc_image_oprom_version (IN struct igsc_oprom_image * img, IN enum igsc_oprom_type type, OUT struct igsc_oprom_version * version)

Retrieves the OPROM version from the supplied OPROM update image​.

Parameters

img OPROM image handle
type OPROM image type

See also

enum igsc_oprom_type

Parameters

version The memory to store the obtained OPROM version​.

Returns

IGSC_SUCCESS if successful, otherwise error code​.

IGSC_EXPORT uint8_t igsc_oprom_version_compare (const struct igsc_oprom_version * image_ver, const struct igsc_oprom_version * device_ver)

Compares input oprom version to the flash one​.

Parameters

image_ver pointer to the update image OPROM version
device_ver pointer to the device OPROM version

Returns
  • IGSC_VERSION_NOT_COMPATIBLE if update image is for a different platform
  • IGSC_VERSION_NEWER if update image version is newer than the one on the device
  • IGSC_VERSION_EQUAL if update image version is equal to the one on the device
  • IGSC_VERSION_OLDER if update image version is older than the one on the device
  • IGSC_VERSION_ERROR if NULL parameters were provided

Author

Generated automatically by Doxygen for Intel Graphics System Controller Firmware Update Library from the source code​.

Info

Intel Graphics System Controller Firmware Update Library