15.03.2015 Views

SetupDesignGuide.pdf - Firmware Encoding Index

SetupDesignGuide.pdf - Firmware Encoding Index

SetupDesignGuide.pdf - Firmware Encoding Index

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Setup Design Guide<br />

DRAFT<br />

Human Interface Infrastructure<br />

Database<br />

Consists of IFR/String/Font<br />

Which has been submitted by varying EFI drivers<br />

EFI Driver<br />

VFR Sample<br />

text text = CPU_STRING,<br />

text = DERIVED_CPU_FREQUENCY,<br />

flags = DYNAMIC,<br />

key = CPU_FREQUENCY_KEY;<br />

This sample shows an example of the programming language used in the EFI Setup<br />

infrastructure. In this case, a DYNAMIC flag signifies that when this code is exported to<br />

the database a callback will be done for this operation to fill in the second text entry.<br />

The behavior and operands will vary based on which type of op-code is thus flagged.<br />

String Tokens – Prior to Callback<br />

ENG<br />

CPU_STRING<br />

“CPU Frequency”<br />

DERIVED_CPU_FREQUENCY “”<br />

SPA<br />

CPU_STRING<br />

“Frecuencia del CPU”<br />

DERIVED_CPU_FREQUENCY “”<br />

String Tokens – After Callback<br />

ENG<br />

CPU_STRING<br />

DERIVED_CPU_FREQUENCY<br />

SPA<br />

CPU_STRING<br />

DERIVED_CPU_FREQUENCY<br />

“CPU Frequency”<br />

“2.2 Ghz”<br />

“Frecuencia del CPU”<br />

“2.2 Ghz”<br />

2.6.2 Multiple Iteration Hardware Interaction<br />

An EFI driver that uses the EFI setup infrastructure will typically carry both IFR and string data. In<br />

some cases, not all the information that is needed is included at build time. For example, a user might<br />

need to add a boot option and to do this they need to select the file from a file system. In this case, the<br />

information is obviously not available at build time, so the information has to be retrieved.<br />

Unlike the previous section which had hardware interaction completed prior to the user ever having<br />

seen any data, this example requires hardware interaction at the user level. In the example of searching<br />

for a file, the driver will have the op-code labeled with a DYNAMIC and INTERACTIVE flag. When<br />

the data is exported to the EFI configuration driver, it calls back to the driver to get the additional data.<br />

21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!