diff options
Diffstat (limited to 'Lessons/Lesson_29/UefiLessonsPkg/PCDLesson')
| -rw-r--r-- | Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.c | 43 | ||||
| -rw-r--r-- | Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.inf | 39 | 
2 files changed, 82 insertions, 0 deletions
diff --git a/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.c b/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.c new file mode 100644 index 0000000..9e0aae0 --- /dev/null +++ b/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.c @@ -0,0 +1,43 @@ +#include <Library/UefiBootServicesTableLib.h> +#include <Library/UefiLib.h> + +#include <Library/PcdLib.h> + +EFI_STATUS +EFIAPI +UefiMain ( +  IN EFI_HANDLE        ImageHandle, +  IN EFI_SYSTEM_TABLE  *SystemTable +  ) +{ +  Print(L"PcdMyVar32=%d\n", FixedPcdGet32(PcdMyVar32)); +  Print(L"PcdMyVar32_1=%d\n", FixedPcdGet32(PcdMyVar32_1)); +  Print(L"PcdMyVar32_2=%d\n", FixedPcdGet32(PcdMyVar32_2)); + +  Print(L"PcdMyVar32=%d\n", PcdGet32(PcdMyVar32)); + +  Print(L"PcdMyPatchableVar32=0x%x\n", PcdGet32(PcdMyPatchableVar32)); +  RETURN_STATUS PcdStatus = PcdSet32S(PcdMyPatchableVar32, 44); +  Print(L"PcdStatus=%r\n", PcdStatus); +  Print(L"PcdMyPatchableVar32=%d\n", PcdGet32(PcdMyPatchableVar32)); +  PatchPcdSet32(PcdMyPatchableVar32, 45); +  Print(L"PcdMyPatchableVar32=%d\n", PatchPcdGet32(PcdMyPatchableVar32)); + + +  Print(L"PcdMyFeatureFlagVar=%d\n", FeaturePcdGet(PcdMyFeatureFlagVar)); +  Print(L"PcdMyFeatureFlagVar=%d\n", PcdGetBool(PcdMyFeatureFlagVar)); +  Print(L"PcdMyVarBool=%d\n", FixedPcdGetBool(PcdMyVarBool)); +  Print(L"PcdMyVarBool=%d\n", PcdGetBool(PcdMyVarBool)); +   + + + +  Print(L"PcdMyDynamicExVar32=%x\n", PcdGet32(PcdMyDynamicExVar32)); +  PcdSet32S(PcdMyDynamicExVar32, 52); +  Print(L"PcdMyDynamicExVar32=%x\n", PcdGet32(PcdMyDynamicExVar32)); + +  Print(L"PcdMyDynamicVar32=%x\n", PcdGet32(PcdMyDynamicVar32)); +  PcdSet32S(PcdMyDynamicVar32, 52); +  Print(L"PcdMyDynamicVar32=%x\n", PcdGet32(PcdMyDynamicVar32)); +  return EFI_SUCCESS; +} diff --git a/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.inf b/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.inf new file mode 100644 index 0000000..cfd39d2 --- /dev/null +++ b/Lessons/Lesson_29/UefiLessonsPkg/PCDLesson/PCDLesson.inf @@ -0,0 +1,39 @@ +[Defines] +  INF_VERSION                    = 1.25 +  BASE_NAME                      = PCDLesson +  FILE_GUID                      = 8c1a6b71-0c4b-4497-aaad-07404edf142c +  MODULE_TYPE                    = UEFI_APPLICATION +  VERSION_STRING                 = 1.0 +  ENTRY_POINT                    = UefiMain + +[Sources] +  PCDLesson.c + +[Packages] +  MdePkg/MdePkg.dec +  UefiLessonsPkg/UefiLessonsPkg.dec   + +[LibraryClasses] +  UefiApplicationEntryPoint +  UefiLib + +[FixedPcd] +  gUefiLessonsPkgTokenSpaceGuid.PcdMyVar32  +  gUefiLessonsPkgTokenSpaceGuid.PcdMyVar32_1|43  +  gUefiLessonsPkgTokenSpaceGuid.PcdMyVar32_2|43  +  gUefiLessonsPkgTokenSpaceGuid.PcdMyVarBool  + +[PatchPcd] +  gUefiLessonsPkgTokenSpaceGuid.PcdMyPatchableVar32  + +[FeaturePcd] +  gUefiLessonsPkgTokenSpaceGuid.PcdMyFeatureFlagVar + +[Pcd] +  gUefiLessonsPkgTokenSpaceGuid.PcdMyDynamicVar32 +  gUefiLessonsPkgTokenSpaceGuid.PcdMyDynamicVar32_1 + +[PcdEx] +  gUefiLessonsPkgTokenSpaceGuid.PcdMyDynamicExVar32 + +  | 
