12.7 Porting to UEFI HII functionality

HII allows the platform's existing browser to be used to display and manage forms for user input. In doing so, HII functionality replaces or supplements older protocols:

  • Driver Configuration Protocol and Driver Configuration 2 Protocol:. If a UEFI Driver is required to only be compatible with the UEFI 2.1 Specification or higher, then replace the use of these protocols with HII functionality.

  • Simple Text Input Protocol, Simple Text Output Protocol: UEFI Drivers, in general, are not allowed to use UEFI console protocols. The one exception is the Driver Configuration Protocol SetOptions() service. If a UEFI Driver is required to only be compatible with UEFI 2.1 Specification or higher, the Driver Configuration Protocols are not required and the Simple Text Input Protocol and Simple Text Output Protocol should not be used.

  • Convert strings used by Driver Configuration Protocol SetOptions() to a .uni file.

  • Convert questions and other user interactions in Driver Configuration Protocol SetOptions() to a .vfr file. Only use HII callbacks if absolutely required.

  • Convert Driver Configuration Protocol ForceDefaults() functionality into .vfr sources.

  • Convert Driver Configuration Protocol OptionsValid() functionality into .vfr sources.