mirror of
https://github.com/Dasharo/edk2.git
synced 2026-06-13 10:16:24 -07:00
Add PCDs to control quiet and fast boot in the project
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
This commit is contained in:
@@ -897,36 +897,40 @@ BootMaintRouteConfig (
|
||||
Private->BmmOldFakeNVData.BootTimeOut = NewBmmData->BootTimeOut;
|
||||
}
|
||||
|
||||
if (NewBmmData->QuietBoot != OldBmmData->QuietBoot) {
|
||||
Status = gRT->SetVariable(
|
||||
DASHARO_VAR_QUIET_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
|
||||
sizeof (NewBmmData->QuietBoot),
|
||||
&(NewBmmData->QuietBoot)
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
Offset = OFFSET_OF (BMM_FAKE_NV_DATA, QuietBoot);
|
||||
goto Exit;
|
||||
}
|
||||
if (FixedPcdGetBool (PcdQuietBootFeatureEnabled)) {
|
||||
if (NewBmmData->QuietBoot != OldBmmData->QuietBoot) {
|
||||
Status = gRT->SetVariable(
|
||||
DASHARO_VAR_QUIET_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
|
||||
sizeof (NewBmmData->QuietBoot),
|
||||
&(NewBmmData->QuietBoot)
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
Offset = OFFSET_OF (BMM_FAKE_NV_DATA, QuietBoot);
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
Private->BmmOldFakeNVData.QuietBoot = NewBmmData->QuietBoot;
|
||||
Private->BmmOldFakeNVData.QuietBoot = NewBmmData->QuietBoot;
|
||||
}
|
||||
}
|
||||
|
||||
if (NewBmmData->FastBoot != OldBmmData->FastBoot) {
|
||||
Status = gRT->SetVariable(
|
||||
DASHARO_VAR_FAST_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
|
||||
sizeof (NewBmmData->FastBoot),
|
||||
&(NewBmmData->FastBoot)
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
Offset = OFFSET_OF (BMM_FAKE_NV_DATA, FastBoot);
|
||||
goto Exit;
|
||||
}
|
||||
if (FixedPcdGetBool (PcdFastBootFeatureEnabled)) {
|
||||
if (NewBmmData->FastBoot != OldBmmData->FastBoot) {
|
||||
Status = gRT->SetVariable(
|
||||
DASHARO_VAR_FAST_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
|
||||
sizeof (NewBmmData->FastBoot),
|
||||
&(NewBmmData->FastBoot)
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
Offset = OFFSET_OF (BMM_FAKE_NV_DATA, FastBoot);
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
Private->BmmOldFakeNVData.FastBoot = NewBmmData->FastBoot;
|
||||
Private->BmmOldFakeNVData.FastBoot = NewBmmData->FastBoot;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
@@ -1586,30 +1590,38 @@ InitializeBmmConfig (
|
||||
CallbackData->BmmFakeNvData.BootTimeOut = PcdGet16 (PcdPlatformBootTimeOut);
|
||||
}
|
||||
|
||||
DataSize = sizeof(QuietBoot);
|
||||
CallbackData->BmmFakeNvData.HideQuietBoot = !FixedPcdGetBool (PcdQuietBootFeatureEnabled);
|
||||
CallbackData->BmmFakeNvData.QuietBoot = FALSE;
|
||||
Status = gRT->GetVariable(
|
||||
DASHARO_VAR_QUIET_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
NULL,
|
||||
&DataSize,
|
||||
&QuietBoot
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
CallbackData->BmmFakeNvData.QuietBoot = QuietBoot;
|
||||
|
||||
if (FixedPcdGetBool (PcdQuietBootFeatureEnabled)) {
|
||||
DataSize = sizeof(QuietBoot);
|
||||
Status = gRT->GetVariable(
|
||||
DASHARO_VAR_QUIET_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
NULL,
|
||||
&DataSize,
|
||||
&QuietBoot
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
CallbackData->BmmFakeNvData.QuietBoot = QuietBoot;
|
||||
}
|
||||
}
|
||||
|
||||
DataSize = sizeof(FastBoot);
|
||||
CallbackData->BmmFakeNvData.HideFastBoot = !FixedPcdGetBool (PcdFastBootFeatureEnabled);
|
||||
CallbackData->BmmFakeNvData.FastBoot = FALSE;
|
||||
Status = gRT->GetVariable(
|
||||
DASHARO_VAR_FAST_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
NULL,
|
||||
&DataSize,
|
||||
&FastBoot
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
CallbackData->BmmFakeNvData.FastBoot = FastBoot;
|
||||
|
||||
if (FixedPcdGetBool (PcdFastBootFeatureEnabled)) {
|
||||
DataSize = sizeof(FastBoot);
|
||||
Status = gRT->GetVariable(
|
||||
DASHARO_VAR_FAST_BOOT,
|
||||
&gDasharoSystemFeaturesGuid,
|
||||
NULL,
|
||||
&DataSize,
|
||||
&FastBoot
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
CallbackData->BmmFakeNvData.FastBoot = FastBoot;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -51,19 +51,23 @@ formset
|
||||
step = 0,
|
||||
endnumeric;
|
||||
|
||||
checkbox varid = BmmData.QuietBoot,
|
||||
questionid = FORM_QUIET_BOOT_ID,
|
||||
prompt = STRING_TOKEN(STR_QUIET_BOOT_PROMPT),
|
||||
help = STRING_TOKEN(STR_QUIET_BOOT_HELP),
|
||||
flags = RESET_REQUIRED,
|
||||
endcheckbox;
|
||||
disableif ideqval BmmData.HideQuietBoot == 1;
|
||||
checkbox varid = BmmData.QuietBoot,
|
||||
questionid = FORM_QUIET_BOOT_ID,
|
||||
prompt = STRING_TOKEN(STR_QUIET_BOOT_PROMPT),
|
||||
help = STRING_TOKEN(STR_QUIET_BOOT_HELP),
|
||||
flags = RESET_REQUIRED,
|
||||
endcheckbox;
|
||||
endif;
|
||||
|
||||
checkbox varid = BmmData.FastBoot,
|
||||
questionid = FORM_FAST_BOOT_ID,
|
||||
prompt = STRING_TOKEN(STR_FAST_BOOT_PROMPT),
|
||||
help = STRING_TOKEN(STR_FAST_BOOT_HELP),
|
||||
flags = RESET_REQUIRED,
|
||||
endcheckbox;
|
||||
disableif ideqval BmmData.HideFastBoot == 1;
|
||||
checkbox varid = BmmData.FastBoot,
|
||||
questionid = FORM_FAST_BOOT_ID,
|
||||
prompt = STRING_TOKEN(STR_FAST_BOOT_PROMPT),
|
||||
help = STRING_TOKEN(STR_FAST_BOOT_HELP),
|
||||
flags = RESET_REQUIRED,
|
||||
endcheckbox;
|
||||
endif;
|
||||
|
||||
endform;
|
||||
|
||||
|
||||
@@ -94,6 +94,8 @@
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn ## CONSUMES
|
||||
gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut ## CONSUMES
|
||||
gEfiMdePkgTokenSpaceGuid.PcdFastBootFeatureEnabled ## CONSUMES
|
||||
gEfiMdePkgTokenSpaceGuid.PcdQuietBootFeatureEnabled ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutColumn ## CONSUMES
|
||||
|
||||
@@ -104,6 +104,8 @@ typedef struct {
|
||||
UINT32 BootNext;
|
||||
BOOLEAN QuietBoot;
|
||||
BOOLEAN FastBoot;
|
||||
BOOLEAN HideQuietBoot;
|
||||
BOOLEAN HideFastBoot;
|
||||
|
||||
//
|
||||
// This is the COM1 Attributes value storage
|
||||
|
||||
Reference in New Issue
Block a user