Changeset 80721 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c
- Timestamp:
- Sep 11, 2019 8:46:37 AM (6 years ago)
- svn:sync-xref-src-repo-rev:
- 133262
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-129237 /vendor/edk2/current 103735-103757,103769-103776,129194-133213
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c
r77662 r80721 5 5 the capsule runtime services are ready. 6 6 7 Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR> 8 This program and the accompanying materials 9 are licensed and made available under the terms and conditions of the BSD License 10 which accompanies this distribution. The full text of the license may be found at 11 http://opensource.org/licenses/bsd-license.php 12 13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 7 Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR> 8 SPDX-License-Identifier: BSD-2-Clause-Patent 15 9 16 10 **/ 17 11 18 #include <Uefi.h> 19 20 #include <Protocol/Capsule.h> 21 #include <Guid/CapsuleVendor.h> 22 #include <Guid/FmpCapsule.h> 23 24 #include <Library/DebugLib.h> 25 #include <Library/PcdLib.h> 26 #include <Library/CapsuleLib.h> 27 #include <Library/UefiDriverEntryPoint.h> 28 #include <Library/UefiBootServicesTableLib.h> 29 #include <Library/UefiRuntimeServicesTableLib.h> 30 #include <Library/UefiRuntimeLib.h> 31 #include <Library/BaseLib.h> 32 #include <Library/PrintLib.h> 33 #include <Library/BaseMemoryLib.h> 12 #include "CapsuleService.h" 13 34 14 // 35 15 // Handle for the installation of Capsule Architecture Protocol. … … 44 24 UINT32 mMaxSizePopulateCapsule = 0; 45 25 UINT32 mMaxSizeNonPopulateCapsule = 0; 46 47 /**48 Create the variable to save the base address of page table and stack49 for transferring into long mode in IA32 PEI.50 **/51 VOID52 SaveLongModeContext (53 VOID54 );55 26 56 27 /** … … 102 73 103 74 // 75 // Check if platform support Capsule In RAM or not. 76 // Platform could choose to drop CapsulePei/CapsuleX64 and do not support Capsule In RAM. 77 // 78 if (!PcdGetBool(PcdCapsuleInRamSupport)) { 79 return EFI_UNSUPPORTED; 80 } 81 82 // 104 83 // Capsule Count can't be less than one. 105 84 // … … 195 174 // Check if the platform supports update capsule across a system reset 196 175 // 197 if (! FeaturePcdGet(PcdSupportUpdateCapsuleReset)) {176 if (!IsPersistAcrossResetCapsuleSupported ()) { 198 177 return EFI_UNSUPPORTED; 199 178 } 179 180 CapsuleCacheWriteBack (ScatterGatherList); 200 181 201 182 // … … 246 227 /** 247 228 Returns if the capsule can be supported via UpdateCapsule(). 229 Notice: When PcdCapsuleInRamSupport is unsupported, even this routine returns a valid answer, 230 the capsule still is unsupported via UpdateCapsule(). 248 231 249 232 @param CapsuleHeaderArray Virtual pointer to an array of virtual pointers to the capsules … … 345 328 //Check if the platform supports update capsule across a system reset 346 329 // 347 if (! FeaturePcdGet(PcdSupportUpdateCapsuleReset)) {330 if (!IsPersistAcrossResetCapsuleSupported ()) { 348 331 return EFI_UNSUPPORTED; 349 332 }
Note:
See TracChangeset
for help on using the changeset viewer.