diff --git a/EmbeddedPkg/EmbeddedPkg.dec b/EmbeddedPkg/EmbeddedPkg.dec index 341ef5e6a6..94dc3c9b76 100644 --- a/EmbeddedPkg/EmbeddedPkg.dec +++ b/EmbeddedPkg/EmbeddedPkg.dec @@ -183,3 +183,8 @@ # Selection between DT and ACPI as a default # gEmbeddedTokenSpaceGuid.PcdDefaultDtPref|TRUE|BOOLEAN|0x0000059 + + # + # Expected Overflow Android Kernel Command Line Characters + # + gEmbeddedTokenSpaceGuid.PcdAndroidKernelCommandLineOverflow|0|UINT32|0x000005C diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index f63648e60d..d16929f2bb 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -335,7 +335,7 @@ AndroidBootImgUpdateArgs ( return Status; } - NewKernelArgSize = ANDROID_BOOTIMG_KERNEL_ARGS_SIZE; + NewKernelArgSize = ANDROID_BOOTIMG_KERNEL_ARGS_SIZE + PcdGet32 (PcdAndroidKernelCommandLineOverflow); *KernelArgs = AllocateZeroPool (sizeof (CHAR16) * NewKernelArgSize); if (*KernelArgs == NULL) { DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n")); diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf index 8eefeef4f9..9754664df5 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf @@ -45,5 +45,6 @@ gEfiAcpiTableGuid gFdtTableGuid -[FeaturePcd] +[Pcd] gEmbeddedTokenSpaceGuid.PcdAndroidBootLoadFile2 + gEmbeddedTokenSpaceGuid.PcdAndroidKernelCommandLineOverflow