mirror of https://github.com/acidanthera/audk.git
e2a193b733
With IntelFrameworkModulePkg BDS, the platform code is responsible for
updating console variables (e.g., with BdsLibUpdateConsoleVariable()), and
then connecting them (e.g., with BdsLibConnectAllDefaultConsoles()). This
is usually (although not necessarily) done in PlatformBdsPolicyBehavior().
With MdeModulePkg BDS, the platform is responsible for updating the
console variables in PlatformBootManagerBeforeConsole(). When that
function returns, BdsEntry() will automatically connect the consoles; the
platform is not responsible for the connection.
IntelFrameworkModulePkg MdeModulePkg
BdsEntry BdsEntry
PlatformBdsInit PlatformBootManagerBeforeConsole
+----> EfiBootManagerUpdateConsoleVariable
|
dispatch Driver#### | dispatch Driver####
| +> connect consoles
| |
PlatformBdsPolicyBehavior | | PlatformBootManagerAfterConsole
BdsLibUpdateConsoleVariable <--+ |
BdsLibConnectAllDefaultConsoles <+
display splash screen display splash screen
Thus, move the console variable massaging from the beginning of
PlatformBootManagerAfterConsole() (originally PlatformBdsPolicyBehavior())
to the end of PlatformBootManagerBeforeConsole(), and drop the explicit
BdsLibConnectAllDefaultConsoles() call.
This patch parallels OvmfPkg commit
|
||
---|---|---|
.. | ||
PlatformBm.c | ||
PlatformBm.h | ||
PlatformBootManagerLib.inf | ||
QemuKernel.c |