mirror of https://github.com/acidanthera/audk.git
IntelSiliconPkg VTdPmrPei: Add PcdVTdPeiDmaBufferSize(S3)
Add PcdVTdPeiDmaBufferSize(S3) to replace the hard coded value TOTAL_DMA_BUFFER_SIZE and TOTAL_DMA_BUFFER_SIZE_S3 in IntelVTdPmrPei. Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
This commit is contained in:
parent
abe63fa7dc
commit
339cb0af96
|
@ -29,9 +29,6 @@
|
||||||
|
|
||||||
#include "IntelVTdPmrPei.h"
|
#include "IntelVTdPmrPei.h"
|
||||||
|
|
||||||
#define TOTAL_DMA_BUFFER_SIZE SIZE_4MB
|
|
||||||
#define TOTAL_DMA_BUFFER_SIZE_S3 SIZE_1MB
|
|
||||||
|
|
||||||
EFI_GUID mVTdInfoGuid = {
|
EFI_GUID mVTdInfoGuid = {
|
||||||
0x222f5e30, 0x5cd, 0x49c6, { 0x8a, 0xc, 0x36, 0xd6, 0x58, 0x41, 0xe0, 0x82 }
|
0x222f5e30, 0x5cd, 0x49c6, { 0x8a, 0xc, 0x36, 0xd6, 0x58, 0x41, 0xe0, 0x82 }
|
||||||
};
|
};
|
||||||
|
@ -798,9 +795,9 @@ IntelVTdPmrInitialize (
|
||||||
PeiServicesGetBootMode (&BootMode);
|
PeiServicesGetBootMode (&BootMode);
|
||||||
|
|
||||||
if (BootMode == BOOT_ON_S3_RESUME) {
|
if (BootMode == BOOT_ON_S3_RESUME) {
|
||||||
DmaBufferInfo->DmaBufferSize = TOTAL_DMA_BUFFER_SIZE_S3;
|
DmaBufferInfo->DmaBufferSize = PcdGet32 (PcdVTdPeiDmaBufferSizeS3);
|
||||||
} else {
|
} else {
|
||||||
DmaBufferInfo->DmaBufferSize = TOTAL_DMA_BUFFER_SIZE;
|
DmaBufferInfo->DmaBufferSize = PcdGet32 (PcdVTdPeiDmaBufferSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
Status = PeiServicesNotifyPpi (&mVTdInfoNotifyDesc);
|
Status = PeiServicesNotifyPpi (&mVTdInfoNotifyDesc);
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
# This driver initializes VTd engine based upon EDKII_VTD_INFO_PPI
|
# This driver initializes VTd engine based upon EDKII_VTD_INFO_PPI
|
||||||
# and provide DMA protection in PEI.
|
# and provide DMA protection in PEI.
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2017 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||||
# This program and the accompanying materials
|
# This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# are licensed and made available under the terms and conditions of the BSD License
|
||||||
# which accompanies this distribution. The full text of the license may be found at
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
|
@ -54,6 +54,8 @@
|
||||||
|
|
||||||
[Pcd]
|
[Pcd]
|
||||||
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask ## CONSUMES
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask ## CONSUMES
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSize ## CONSUMES
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSizeS3 ## CONSUMES
|
||||||
|
|
||||||
[Depex]
|
[Depex]
|
||||||
gEfiPeiMasterBootModePpiGuid AND
|
gEfiPeiMasterBootModePpiGuid AND
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
# This package provides common open source Intel silicon modules.
|
# This package provides common open source Intel silicon modules.
|
||||||
#
|
#
|
||||||
# Copyright (c) 2016 - 2017, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||||
# This program and the accompanying materials are licensed and made available under
|
# This program and the accompanying materials are licensed and made available under
|
||||||
# the terms and conditions of the BSD License that accompanies this distribution.
|
# the terms and conditions of the BSD License that accompanies this distribution.
|
||||||
# The full text of the license may be found at
|
# The full text of the license may be found at
|
||||||
|
@ -61,3 +61,19 @@
|
||||||
# @Prompt The policy for VTd driver behavior.
|
# @Prompt The policy for VTd driver behavior.
|
||||||
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask|1|UINT8|0x00000002
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask|1|UINT8|0x00000002
|
||||||
|
|
||||||
|
## Declares VTd PEI DMA buffer size.<BR><BR>
|
||||||
|
# When this PCD value is referred by platform to calculate the required
|
||||||
|
# memory size for PEI (InstallPeiMemory), the PMR alignment requirement
|
||||||
|
# needs be considered to be added with this PCD value for alignment
|
||||||
|
# adjustment need by AllocateAlignedPages.
|
||||||
|
# @Prompt The VTd PEI DMA buffer size.
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSize|0x00400000|UINT32|0x00000003
|
||||||
|
|
||||||
|
## Declares VTd PEI DMA buffer size for S3.<BR><BR>
|
||||||
|
# When this PCD value is referred by platform to calculate the required
|
||||||
|
# memory size for PEI S3 (InstallPeiMemory), the PMR alignment requirement
|
||||||
|
# needs be considered to be added with this PCD value for alignment
|
||||||
|
# adjustment need by AllocateAlignedPages.
|
||||||
|
# @Prompt The VTd PEI DMA buffer size for S3.
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSizeS3|0x00200000|UINT32|0x00000004
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue