PCD_PROTOCOL.SetPtr()

Summary

Sets a value of a specified size for a given PCD token.

Prototype

typedef
EFI_STATUS
(EFIAPI *PCD_PROTOCOL_SET_POINTER) (
  IN UINTN      TokenNumber,
  IN OUT UINTN  *SizeOfValue,
  IN VOID       *Buffer
  );

Parameters

TokenNumber

The PCD token number.

SizeOfValue

A pointer to the length of the value being set for the PCD token. On input, if the SizeOfValue is greater than the maximum size supported for this TokenNumber then the output value of SizeOfValue will reflect the maximum size supported for this TokenNumber.

Buffer

A pointer to the buffer containing the value to set.

Description

When the PCD service sets a value, it will check to ensure that the size of the value being set is compatible with the Token's existing definition. If it is not, an error will be returned.

Status Codes Returned

Status Code Description
EFI_SUCCESS The PCD service has set the value requested
EFI_INVALID_PARAMETER The PCD service determined that the size of the data being set was incompatible with a call to this function. Use GetSize() to retrieve the size of the target data.
EFI_NOT_FOUND The PCD service could not find the requested token number.