X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=IntelFrameworkModulePkg%2FUniversal%2FFirmwareVolume%2FFwVolDxe%2FFwVolWrite.c;fp=IntelFrameworkModulePkg%2FUniversal%2FFirmwareVolume%2FFwVolDxe%2FFwVolWrite.c;h=e95b75326c6edf71379d9e2489876ddb5d7b0d22;hp=99385e0f579b3eebe04df6aa011404c45493fcb5;hb=67a6cf6dcaaab8ddd4e7dc6a7fe929b752461102;hpb=e411f8ca3845aafacefe88321fdde340c88c1beb diff --git a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolWrite.c b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolWrite.c index 99385e0f57..e95b75326c 100644 --- a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolWrite.c +++ b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolWrite.c @@ -1,7 +1,7 @@ /** @file Implements write firmware file. - Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -202,9 +202,11 @@ FvFileAttrib2FfsFileAttrib ( { UINT8 FvFileAlignment; UINT8 FfsFileAlignment; + UINT8 FfsFileAlignment2; FvFileAlignment = (UINT8) (FvFileAttrib & EFI_FV_FILE_ATTRIB_ALIGNMENT); FfsFileAlignment = 0; + FfsFileAlignment2 = 0; switch (FvFileAlignment) { case 0: @@ -289,9 +291,42 @@ FvFileAttrib2FfsFileAttrib ( case 16: FfsFileAlignment = 7; break; + + case 17: + FfsFileAlignment = 0; + FfsFileAlignment2 = 1; + break; + case 18: + FfsFileAlignment = 1; + FfsFileAlignment2 = 1; + break; + case 19: + FfsFileAlignment = 2; + FfsFileAlignment2 = 1; + break; + case 20: + FfsFileAlignment = 3; + FfsFileAlignment2 = 1; + break; + case 21: + FfsFileAlignment = 4; + FfsFileAlignment2 = 1; + break; + case 22: + FfsFileAlignment = 5; + FfsFileAlignment2 = 1; + break; + case 23: + FfsFileAlignment = 6; + FfsFileAlignment2 = 1; + break; + case 24: + FfsFileAlignment = 7; + FfsFileAlignment2 = 1; + break; } - *FfsFileAttrib = (UINT8) (FfsFileAlignment << 3); + *FfsFileAttrib = (UINT8) ((FfsFileAlignment << 3) | (FfsFileAlignment2 << 1)); return ; }