SetupDesignGuide.pdf - Firmware Encoding Index
SetupDesignGuide.pdf - Firmware Encoding Index
SetupDesignGuide.pdf - Firmware Encoding Index
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Setup Design Guide<br />
DRAFT<br />
7.2.2 EFI_FORM_CONFIGURATION_PROTOCOL.SendMessage()<br />
Summary<br />
This function allows the caller to put data into the configuration driver’s internal mailbox. This has the<br />
effect of allowing data to be posted as a key/value pair and have information be updated as an out-ofband<br />
transaction.<br />
Prototype<br />
EFI_STATUS<br />
(EFIAPI *EFI_SEND_MESSAGE) (<br />
IN EFI_FORM_CONFIGURATION_PROTOCOL *This,<br />
IN UINT16<br />
MessageKey,<br />
IN VOID<br />
*MessageData,<br />
IN UINTN<br />
MessageDataLength<br />
);<br />
Parameters<br />
This<br />
MessageKey<br />
MessageData<br />
MessageDataLength<br />
A pointer to the EFI_FORM_CONFIGURATION_PROTOCOL<br />
instance.<br />
A unique value which will have be associated with a particular opcode.<br />
The messaging services are typically to be used in an<br />
Interactive or Dynamic mode situation where a periodic event may<br />
occur that requires certain pieces of data to be updated. For<br />
instance, temperature sensor data might get dynamically updated<br />
based on events from the calling driver.<br />
A pointer to the data associated with the MessageKey.<br />
The length of the data in MessageData.<br />
Related Definitions<br />
The MessageData format will be based on the op-code type that the<br />
MessageKey references.<br />
If OneOf command:<br />
An array of option encodings.<br />
Each encoding is as follows:<br />
typedef struct _EFI_IFR_OP_HEADER {<br />
UINT8<br />
OpCode;<br />
UINT8<br />
Length;<br />
} EFI_IFR_OP_HEADER;<br />
typedef struct {<br />
EFI_IFR_OP_HEADER<br />
Header;<br />
70