[edk2] [patch] BaseTools: Add missing license and copyright info

2019-03-15 Thread Dandan Bi
Cc: Bob Feng Cc: Liming Gao Cc: Michael D Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Conf/Empty_Package_Information_Data_File.ini | 12 1 file changed, 12 insertions(+) diff --git a/BaseTools/Conf

[edk2] [patch v2 0/2] Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 V2: Keep Microsoft copyright in patch 0001, which is deleted by mistake in V1. Cc: Michael D Kinney Cc: Liming Gao Dandan Bi (2): SecurityPkg: Remove duplicated BSD license Vlv2TbltDevicePkg: Remove duplicated BSD license .../Ppi

[edk2] [patch v2 2/2] Vlv2TbltDevicePkg: Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 V2 is the same with V1. Cc: Zailiang Sun Cc: Yi Qian Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi Reviewed-by: Zailiang Sun --- Vlv2TbltDevicePkg/Library/I2CLib

[edk2] [patch v2 1/2] SecurityPkg: Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 V2: Keep Microsoft copyright, which is deleted by mistake in V1. Cc: Chao Zhang Cc: Jian Wang Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Ppi

[edk2] [patch 2/2] Vlv2TbltDevicePkg: Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 Cc: Zailiang Sun Cc: Yi Qian Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- Vlv2TbltDevicePkg/Library/I2CLib/I2CLibNull.inf | 10 +- 1 file changed, 1

[edk2] [patch 1/2] SecurityPkg: Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 Cc: Chao Zhang Cc: Jian Wang Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Ppi/FirmwareVolumeInfoPrehashedFV.h | 26 --- 1 file

[edk2] [patch 0/2] Remove duplicated BSD license

2019-03-11 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1612 Cc: Michael D Kinney Cc: Liming Gao Dandan Bi (2): SecurityPkg: Remove the duplicated BSD license Vlv2TbltDevicePkg: Remove the duplicated BSD license .../Ppi/FirmwareVolumeInfoPrehashedFV.h | 26

[edk2] [patch V4] MdeModulePkg/ReportStatusCodeLib: Avoid using AllocatePool if possible

2019-02-18 Thread Dandan Bi
Cc: Jian J Wang Cc: Hao Wu Cc: Michael Turner Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../ReportStatusCodeLib.c | 45 +-- .../ReportStatusCodeLib.c | 14 +++--- 2 files changed,

[edk2] [patch edk2-wiki] Update ECC wiki page

2019-02-17 Thread Dandan Bi
Update ECC wiki page to record how to solve the problem “ModuleNotFoundError: No module named 'antlr4'” when run ECC tool with python3.x. Cc: Liming Gao Cc: Bob Feng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ECC-tool.md | 15 --- 1 file

[edk2] [patch V3] MdeModulePkg/ReportStatusCodeLib: Avoid using AllocatePool if possible

2019-02-17 Thread Dandan Bi
Cc: Michael Turner Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeReportStatusCodeLib/ReportStatusCodeLib.c | 15 +-- .../ReportStatusCodeLib.c | 9 +++-- 2 files changed, 16 insertions(+),

[edk2] [patch 0/2] Report error status when fail to load/start boot option

2019-02-15 Thread Dandan Bi
: Liming Gao Cc: Laszlo Ersek Cc: Sean Brogan Dandan Bi (2): MdePkg/StatusCodeDataTypeId.h: Add new definition per PI1.7 Spec MdeModulePkg/BmBoot: Report status when fail to load/start boot option .../Library/UefiBootManagerLib/BmBoot.c | 22 ++- MdePkg/Include/Guid

[edk2] [patch 1/2] MdePkg/StatusCodeDataTypeId.h: Add new definition per PI1.7 Spec

2019-02-15 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1398 According to PI1.7 Spec, add the new definition EFI_RETURN_STATUS_EXTENDED_DATA in StatusCodeDataTypeId.h Cc: Michael D Kinney Cc: Liming Gao Cc: Laszlo Ersek Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan

[edk2] [patch 2/2] MdeModulePkg/BmBoot: Report status when fail to load/start boot option

2019-02-15 Thread Dandan Bi
: Jian J Wang Cc: Hao Wu Cc: Ruiyu Ni Cc: Laszlo Ersek Cc: Sean Brogan Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/UefiBootManagerLib/BmBoot.c | 22 ++- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git

[edk2] [patch V2] MdeModulePkg/ReportStatusCodeLib: Avoid using AllocatePool if possible

2019-02-13 Thread Dandan Bi
to avoid using AllocatePool. Cc: Jian J Wang Cc: Hao Wu Cc: Michael Turner Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c | 9 +++-- .../RuntimeDxeReportStatusCodeLib/ReportStatus

[edk2] [patch] MdeModulePkg/ReportStatusCodeLib: Avoid using AllocatePool if possible

2019-02-02 Thread Dandan Bi
to avoid using AllocatePool. Cc: Jian J Wang Cc: Hao Wu Cc: Michael Turner Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c | 9 +++-- .../RuntimeDxeReportStatusCodeLib

[edk2] [patch 2/2] MdePkg: Fix coding style issues

2019-01-31 Thread Dandan Bi
bution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/StandaloneMmDriverEntryPoint.h | 16 .../StandaloneMmDriverEntryPoint.c | 4 ++-- .../StandaloneMmServicesTableLib.c | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff

[edk2] [patch 1/2] MdeModulePkg: Fix coding style issues

2019-01-31 Thread Dandan Bi
-by: Dandan Bi --- .../FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h | 4 ++-- .../FaultTolerantWriteDxe/FaultTolerantWriteStandaloneMm.c | 2 +- .../FaultTolerantWriteDxe/FaultTolerantWriteTraditionalMm.c | 2 +- .../Universal/Variable/RuntimeDxe/PrivilegePolymorphic.h| 4

[edk2] [patch 0/2] Fix coding style issues in MdeModulePkg and MdePkg

2019-01-31 Thread Dandan Bi
Cc: Ard Biesheuvel Cc: Liming Gao Cc: Jian J Wang Cc: Hao Wu Dandan Bi (2): MdeModulePkg: Fix coding style issues MdePkg: Fix coding style issues .../FaultTolerantWriteSmmCommon.h| 4 ++-- .../FaultTolerantWriteStandaloneMm.c | 2

[edk2] [patch] ShellPkg/UefiShellAcpiViewCommandLib: Fix VS tool chain build failure

2019-01-27 Thread Dandan Bi
rsers\Pptt\PpttParser.c(193): warning C4244: '=': conversion from 'UINT32' to 'UINT8', possible loss of data Cc: Krzysztof Koch Cc: Jaben Carsey Cc: Ray Ni Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttParser.c

[edk2] [patch] MdePkg/BasePeCoffLib: Correct the address of RelocBaseEnd

2019-01-18 Thread Dandan Bi
>Size - 1 not ImageBase + RelocDir->VirtualAddress + RelocDir->Size This patch is to fix this issue when call PeCoffLoaderImageAddress function to calculate the address of RelocBaseEnd. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed

[edk2] [patch v2] MdePkg/BasePeCoffLib: Add more check for relocation data

2019-01-14 Thread Dandan Bi
sideration, it's not safe enough. So this patch is to replace the same code logic with function PeCoffLoaderImageAddress which will cover more validation. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdePkg/Library/Bas

[edk2] [patch] MdePkg/BasePeCoffLib: Add more check for relocation data

2019-01-04 Thread Dandan Bi
PeCoffLoaderImageAddress which will cover more check and validation. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdePkg/Library/BasePeCoffLib/BasePeCoff.c | 29 +++ 1 file changed, 24 insertions(+), 5 deletions

[edk2] [patch] MdeModulePkg/NonDiscoverablePciDevice: Remove the redundant check

2019-01-01 Thread Dandan Bi
e not 0. So we can remove the redundant check "if (Attributes)". Cc: Vladimir Olovyannikov Cc: Jian J Wang Cc: Hao Wu Cc: Ard Biesheuvel Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi Reviewed-by: Star Zeng --- .../NonDiscoverablePciDeviceIo.c

[edk2] [patch] MdeModulePkg/NonDiscoverable: Use compare operator for comparison

2018-12-28 Thread Dandan Bi
Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c| 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c b/MdeModulePkg/Bus/Pci

[edk2] [patch] BaseTools/VfrCompile: report error for Integer overflow

2018-12-28 Thread Dandan Bi
1.1 Signed-off-by: Dandan Bi --- BaseTools/Source/C/VfrCompile/VfrError.cpp | 2 +- BaseTools/Source/C/VfrCompile/VfrError.h | 2 +- BaseTools/Source/C/VfrCompile/VfrSyntax.g | 10 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/BaseTools/Source/C/VfrCompile

[edk2] [patch] MdePkg: check Length para before use in DevPathToTextUsbWWID

2018-11-18 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1336 In function DevPathToTextUsbWWID, the Length parameter is used without check. This patch is to add check before using it. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan

[edk2] [patch] MdePkg: Check input Ptrs in GetSectionFromAnyFvByFileType

2018-11-18 Thread Dandan Bi
ing Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdePkg/Library/DxeServicesLib/DxeServicesLib.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/MdePkg/Library/DxeServicesLib/DxeServicesLib.c b/MdePkg/Library/DxeServicesLib/DxeServicesLib.c index d4

[edk2] [patch] MdePkg: Fix incorrect check for DisplayOnly text format in AcpiEx

2018-11-08 Thread Dandan Bi
-by: Dandan Bi --- MdePkg/Library/UefiDevicePathLib/DevicePathToText.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c b/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c index cdcdb3623a..97d279eeb2 100644 --- a/MdePkg/Library

[edk2] [patch] MdeModulePkg/DisplayEngine: Remove useless NULL ptr check for NewPos

2018-11-07 Thread Dandan Bi
-by: Dandan Bi --- MdeModulePkg/Universal/DisplayEngineDxe/FormDisplay.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MdeModulePkg/Universal/DisplayEngineDxe/FormDisplay.c b/MdeModulePkg/Universal/DisplayEngineDxe/FormDisplay.c index 7390f954b6..44f087fe01 100644

[edk2] [patch 0/2] MdeModulePkg/HiiDatabaseDxe: Make sure database update behaviors are atomic

2018-10-12 Thread Dandan Bi
function in patch 2. Patch 2 is to add EfiAcquireLock/EfiReleaseLock function to make sure the HiiDatabse update operations atomic. Cc: Liming Gao Cc: Eric Dong Dandan Bi (2): MdeModulePkg/HiiDB: Reorganize codes of exporting HII settings MdeModulePkg/HiiDB: Make sure database update

[edk2] [patch 2/2] MdeModulePkg/HiiDB: Make sure database update behaviors are atomic

2018-10-12 Thread Dandan Bi
interrupt another. This commit is to make the HiiDatabase update behaviors atomic by adding EfiAcquireLock/EfiReleaseLock function. Cc: Liming Gao Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Universal/HiiDatabaseDxe/Database.c | 53

[edk2] [patch 3/3] MdePkg: Handle AcpiExp device path when optional para is not specified

2018-10-11 Thread Dandan Bi
is AcpiExp(HID,,UIDSTR)/AcpiExp(HID,0,UIDSTR) ToText: when the CID is 0 in the node structure This commit is to do the enhancement. Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../UefiDevicePathLib

[edk2] [patch 2/3] MdePkg: Handle USBxxx device path when optional para is not specified

2018-10-11 Thread Dandan Bi
para is not specified Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../UefiDevicePathLib/DevicePathFromText.c| 30 +++ 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/MdePkg

[edk2] [patch 1/3] MdePkg: Handle Sata device path when optional para is not specified

2018-10-11 Thread Dandan Bi
optional para is not specified. Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git

[edk2] [patch 0/3] MdePkg/UefiDevicePathLib: Enahncement for Sata/Usbxx/AcpiExp device path

2018-10-11 Thread Dandan Bi
https://bugzilla.tianocore.org/show_bug.cgi?id=1243 This pacth series is mainly to do the enahncement for Sata/Usbxx/AcpiExp device path to handle the cases when some optional paremeter is not specified in the text device path. Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Dandan Bi (3

[edk2] [patch 3/5] MdePkg: Correct condition check for AcpiExp text format

2018-10-07 Thread Dandan Bi
AcpiEx format. This patch is to correct the condition check to follow UEFI Spec when convert the device path node to the AcpiExp text format. Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi --- MdePkg/Library

[edk2] [patch 4/5] MdePkg: Add PciRoot/PcieRoot text for ACPI Expanded Device Path

2018-10-07 Thread Dandan Bi
as: PcieRoot(UID|UIDSTR). But current code miss the code logic. This commit is to do the enhancement. Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi --- .../UefiDevicePathLib/DevicePathToText.c | 21

[edk2] [patch 2/5] MdePkg: Correct the string order of ACPI Expanded Device Path

2018-10-07 Thread Dandan Bi
: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi --- MdePkg/Library/UefiDevicePathLib/DevicePathToText.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c b/MdePkg/Library

[edk2] [patch 5/5] MdePkg: Use VENDOR_DEVICE_PATH structure for Debug Port device path

2018-10-07 Thread Dandan Bi
Header; EFI_GUIDGuid; } VENDOR_DEVICE_PATH; Cc: Ruiyu Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi --- MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c | 6 +++--- 1 file changed, 3

[edk2] [patch 1/5] MdePkg: Correct the string expression of UTF8 vendor device path

2018-10-07 Thread Dandan Bi
Ni Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi --- MdePkg/Library/UefiDevicePathLib/DevicePathToText.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c

[edk2] [patch] MdeModulePkg/HiiDB: Fix incorrect structure convention for checkbox

2018-10-07 Thread Dandan Bi
is to fix this bug. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Universal/HiiDatabaseDxe/Database.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe

[edk2] [patch 3/3] MdeModulePkg: Avoid key notification called more than once

2018-09-10 Thread dandan bi
From: Dandan Bi REF: https://bugzilla.tianocore.org/show_bug.cgi?id=996 Issue: In current code logic, when a key is pressed, it will search the whole NotifyList to find whether a notification has been registered with the keystroke. if yes, it will en-queue the key for notification execution

[edk2] [patch 1/3] EmbeddedPkg/VirtualKeyboard: Avoid notification called more than once

2018-09-10 Thread dandan bi
From: Dandan Bi REF: https://bugzilla.tianocore.org/show_bug.cgi?id=996 Issue: In current code logic, when a key is pressed, it will search the whole NotifyList to find whether a notification has been registered with the keystroke. if yes, it will en-queue the key for notification execution

[edk2] [patch 2/3] IntelFrameworkModulePkg: Avoid key notification called more than once

2018-09-10 Thread dandan bi
From: Dandan Bi REF: https://bugzilla.tianocore.org/show_bug.cgi?id=996 Issue: In current code logic, when a key is pressed, it will search the whole NotifyList to find whether a notification has been registered with the keystroke. if yes, it will en-queue the key for notification execution

[edk2] [patch] BaseTools/PatchCheck.py: Fix error when run with Python3

2018-09-05 Thread Dandan Bi
eError: a bytes-like object is required, not 'str' This issue was introduce by commit:5ac4548cdf654. This patch is to convert the str object of "fatal" to byte object to fix this failure. Cc: Liming Gao Cc: Jaben Carsey Cc: Yonghong Zhu Contributed-under: TianoCore Contribution Agreemen

[edk2] [patch V3] ShellPkg/SmbiosView: Update SmbiosView for SMBIOS3.2.0

2018-08-29 Thread Dandan Bi
Ruiyu Ni Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../SmbiosView/PrintInfo.c | 86 ++--- .../SmbiosView/QueryTable.c| 135 - .../SmbiosView

[edk2] [V2 patch] ShellPkg/SmbiosView: Update SmbiosView for SMBIOS3.2.0

2018-08-28 Thread Dandan Bi
the InterfaceTypeSpecificData in Type 42. Cc: Jaben Carsey Cc: Ruiyu Ni Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../SmbiosView/PrintInfo.c | 88 +++--- .../SmbiosView/QueryTable.c| 135

[edk2] [patch] MdeModulePkg/Setup: Fix incorrect size used in AllocateCopyPool

2018-08-27 Thread Dandan Bi
here when backup the buffer value and copy the size of "Statement->StorageWidth + sizeof(CHAR16)" is incorrect. This patch is to fix this issue. Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Universal/SetupBrowserDxe/Pr

[edk2] [patch] ShellPkg/SmbiosView: Update SmbiosView for SMBIOS3.2.0

2018-08-27 Thread Dandan Bi
https://bugzilla.tianocore.org/show_bug.cgi?id=1099 Update SmbiosView to parse the new definitions which are introduced in SMBIOS3.2.0 Cc: Jaben Carsey Cc: Ruiyu Ni Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../SmbiosView/PrintInfo.c

[edk2] [patch] MdeModulePkg/SmmCorePerfLib: Add DxeServicesLib library class in INF

2018-08-21 Thread Dandan Bi
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1100 SmmCorePerformanceLib consume the DxeServicesLib, but miss to add the library class in INF file. This patch is to fix this issue. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan

[edk2] [patch 1/2] MdeModulePkg: Add definition of Boot Performance Table protocol

2018-07-30 Thread Dandan Bi
Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Include/Guid/FirmwareBootPerformanceTable.h| 47 ++ MdeModulePkg/MdeModulePkg.dec | 4 ++ 2 files changed, 51 insertions(+) create mode 100644 MdeModulePkg/Include/Guid/FirmwareBootPerformanceTable.h

[edk2] [patch 0/2] Enahnce Perf data transfer between Dxe Perf Lib and driver

2018-07-30 Thread Dandan Bi
Kinney Cc: Liming Gao Cc: Star Zeng Dandan Bi (2): MdeModulePkg: Add definition of Boot Performance Table protocol MdeModulePkg: Implement/use Boot Performance Table protocol .../Include/Guid/FirmwareBootPerformanceTable.h| 47 ++ .../DxeCorePerformanceLib

[edk2] [patch 2/2] MdeModulePkg: Implement/use Boot Performance Table protocol

2018-07-30 Thread Dandan Bi
-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 74 ++ .../DxeCorePerformanceLib.inf | 6 +- .../DxeCorePerformanceLibInternal.h| 15

[edk2] [patch 2/3] MdeModulePkg/PeiPerformanceLib: Produce the new PerformancePpi

2018-07-30 Thread Dandan Bi
Enhance the PeiPerformanceLib to produce the Performance Measurement PPI. Cc: Dmitry Antipov Cc: Michael D Kinney Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/PeiPerformanceLib/PeiPerformanceLib.c | 81

[edk2] [patch 3/3] MdeModulePkg/PeiPerformancePpiLib: Add PeiPerformancePpiLib

2018-07-30 Thread Dandan Bi
in PEI phase to keep the compatibility. Cc: Dmitry Antipov Cc: Michael D Kinney Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../PeiPerformancePpiLib/PeiPerformancePpiLib.c| 420 + .../PeiPerformancePpiLib/PeiP

[edk2] [patch 0/3] Add PeiPerformancePpiLib

2018-07-30 Thread Dandan Bi
mance data for PEIMs. It also can link the PeiPerformanceLib in PEI phase to keep the compatibility. Cc: Dmitry Antipov Cc: Michael D Kinney Cc: Liming Gao Cc: Star Zeng Dandan Bi (3): MdeModulePkg: Add the definition of performance measurement PPI MdeModulePkg/PeiPerformance

[edk2] [patch 1/3] MdeModulePkg: Add the definition of performance measurement PPI

2018-07-30 Thread Dandan Bi
Cc: Dmitry Antipov Cc: Michael D Kinney Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Include/Guid/PerformanceMeasurement.h | 14 ++ MdeModulePkg/MdeModulePkg.dec | 1 + 2 files

[edk2] [patch 3/4] ShellPkg: Remove DxeSmmPerformanceLib

2018-07-29 Thread Dandan Bi
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/ShellPkg.dsc | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/ShellPkg/ShellPkg.dsc b/ShellPkg/ShellPkg.dsc index cb2a2422ed..59dd07e0ae 100644 --- a/ShellPkg/ShellPkg.dsc +++ b/ShellPkg

[edk2] [patch 2/4] Vlv2TbltDevicePkg: Remove DxeSmmPerformanceLib

2018-07-29 Thread Dandan Bi
-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc | 2 -- Vlv2TbltDevicePkg/PlatformPkgIA32.dsc | 2 -- Vlv2TbltDevicePkg/PlatformPkgX64.dsc| 2 -- 3 files changed, 6 deletions(-) diff --git a/Vlv2TbltDevicePkg/PlatformPkgGccX64

[edk2] [patch 0/4] Remove DxeSmmPerformanceLib

2018-07-29 Thread Dandan Bi
by mistake. Dandan Bi (4): QuarkPlatformPkg: Remove DxeSmmPerformanceLib Vlv2TbltDevicePkg: Remove DxeSmmPerformanceLib ShellPkg: Remove DxeSmmPerformanceLib MdeModulePkg: Remove DxeSmmPerformanceLib .../DxeSmmPerformanceLib/DxeSmmPerformanceLib.c| 866

[edk2] [patch 4/4] MdeModulePkg: Remove DxeSmmPerformanceLib

2018-07-29 Thread Dandan Bi
by mistake. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeSmmPerformanceLib/DxeSmmPerformanceLib.c| 866 - .../DxeSmmPerformanceLib/DxeSmmPerformanceLib.inf | 68 -- .../DxeSmmPerformanceLib

[edk2] [patch 1/4] QuarkPlatformPkg: Remove DxeSmmPerformanceLib

2018-07-29 Thread Dandan Bi
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- QuarkPlatformPkg/Quark.dsc| 2 -- QuarkPlatformPkg/QuarkMin.dsc | 4 +--- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/QuarkPlatformPkg/Quark.dsc b/QuarkPlatformPkg/Quark.dsc index 14142087bd

[edk2] [patch 4/4] ShellPkg/UefiShellAcpiViewCommandLib: Fix GCC build failure

2018-07-29 Thread Dandan Bi
Ni cc: Jaben Carsey Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Srat/SratParser.c | 2 ++ .../Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.c | 1 + 2 files changed, 3 insertions(+) di

[edk2] [patch 2/4] ShellPkg/UefiShellAcpiViewCommandLib: Fix VS2012 build failure

2018-07-29 Thread Dandan Bi
y Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.c | 2 +- .../Library/UefiShellAcpiViewCommandLib/Parsers/Dbg2/Dbg2Parser.c | 2 +- .../Library/UefiShellAcpiViewCommandLib/Parsers/Mad

[edk2] [patch 3/4] ShellPkg/UefiShellAcpiViewCommandLib: Fix VS build failure

2018-07-29 Thread Dandan Bi
'UINT32' to 'UINT16', possible loss of data 2. xxx\XsdtParser.c(99): warning C4457: declaration of 'Ptr' hides function parameter cc: Alexei Fedorov cc: Ruiyu Ni cc: Jaben Carsey Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../UefiShellAcpiViewCommandLib

[edk2] [patch 1/4] ShellPkg/UefiShellAcpiViewCommandLib: Fix VS2012 build failure

2018-07-29 Thread Dandan Bi
) : error C2065: 'OriginalAttribute' : undeclared identifier .. cc: Alexei Fedorov cc: Ruiyu Ni cc: Jaben Carsey Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.c | 2 +- 1 file changed, 1 insertion

[edk2] [patch 0/4] ShellPkg/UefiShellAcpiViewCommandLib: Fix build issues

2018-07-29 Thread Dandan Bi
Fix VS and GCC build failure issues cc: Alexei Fedorov cc: Ruiyu Ni cc: Jaben Carsey Dandan Bi (4): ShellPkg/UefiShellAcpiViewCommandLib: Fix VS2012 build failure ShellPkg/UefiShellAcpiViewCommandLib: Fix VS2012 build failure ShellPkg/UefiShellAcpiViewCommandLib: Fix VS build failure

[edk2] [patch] ShellPkg/Dp: Cumulate the perf data of "DB:Stop"

2018-07-19 Thread Dandan Bi
: Ruiyu Ni Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c b/ShellPkg/DynamicCommand/DpDynamicCommand

[edk2] [patch 2/2] SecurityPkg/Tcg: Add use case for new Perf macro

2018-07-19 Thread Dandan Bi
Add an example case for the usage of PERF_CALLBACK_BEGIN/PERF_CALLBACK_END Cc: Liming Gao Cc: Chao Zhang Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c | 4 SecurityPkg/Tcg/TcgPei/TcgPei.c | 5 + SecurityPkg

[edk2] [patch 1/2] MdeModulePkg/DxeLoadFunc: Add use case for new Perf macro

2018-07-19 Thread Dandan Bi
Add an example case for the usage of PERF_EVENT_SIGNAL_BEGIN/PERF_EVENT_SIGNAL_END Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Core/DxeIplPeim/DxeIpl.h | 3 ++- MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf

[edk2] [patch] UefiCpuPkg/MpInitLib: Fix VS2012 build failure

2018-07-18 Thread Dandan Bi
Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- UefiCpuPkg/Library/MpInitLib/Microcode.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/UefiCpuPkg/Library/MpInitLib/Microcode.c b/UefiCpuPkg/Library/MpInitLib/Microcode.c index efda143e67

[edk2] [patch] MdeModulePkg/PerformanceMeasurement.h: Correct the license

2018-07-12 Thread Dandan Bi
Corrected to use the BSD license. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Include/Guid/PerformanceMeasurement.h | 31 +++--- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git

[edk2] [patch] MdeModulePkg/SmmCorePerformanceLib: Update mPerformanceLength

2018-07-01 Thread Dandan Bi
the mPerformanceLength to fix this issue: updated mPerformanceLength = FPDT table header length + existing FPDT records length. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Library/SmmCorePerformanceLib/SmmCorePerformanceLib.c | 8

[edk2] [patch] MdeModulePkg/PiSmmCore: Remove SMM Perf entry

2018-06-27 Thread Dandan Bi
The perf measurement entry in SmmEntryPoint function doesn't have significant meaning. So remove it now. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Core/PiSmmCore/PiSmmCore.c | 4 1 file changed, 4

[edk2] [patch] MdeModulePkg/PerformanceLib: Add NULL pointer check

2018-06-27 Thread Dandan Bi
Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 18 -- .../Library/PeiPerformanceLib/PeiPerformanceLib.c | 13 - .../SmmCorePerformanceLib/SmmCorePerformanceLib.c | 18 -- 3 files changed, 32

[edk2] [patch] ShellPkg/DP: Add more check for input parameters

2018-06-25 Thread Dandan Bi
New added checkers includes: 1. Too many invalid parameters 2. Too few parameter 3. Invalid number parameter for -n and -t flag 4. Conflict parameter of -A and -R. Cc: Liming Gao Cc: Ruiyu Ni Cc: Jaben Carsey Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi

[edk2] [patch] MdeModulePkg/CapsuleRuntimeDxe: Fix ECC issue

2018-06-24 Thread Dandan Bi
Add guard macro for new added header file. Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Universal/CapsuleRuntimeDxe/Arm/CapsuleReset.c | 2 +- MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.h | 5 + 2 files

[edk2] [patch V2 8/9] SecurityPkg: Use new added Perf macros

2018-06-22 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Chao Zhang Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeRsa2048Sha256GuidedSectionExtractLib.c| 16 .../PeiRsa2048Sha256GuidedSectionExtractLib.c

[edk2] [patch V2 9/9] UefiCpuPkg: Use new added Perf macros

2018-06-22 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff

[edk2] [patch V2 7/9] MdeModulePkg: Use new added Perf macros

2018-06-22 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Star Zeng Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Core/Dxe/Dispatcher/Dispatcher.c | 7 + MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c

[edk2] [patch V2 6/9] ShellPkg/dp: Update dp tool to parse new Perf record

2018-06-22 Thread Dandan Bi
: Liming Gao Cc: Ruiyu Ni Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c | 75 +++--- ShellPkg/DynamicCommand/DpDynamicCommand/Dp.h | 1 + .../DynamicCommand/DpDynamicCommand/DpInternal.h

[edk2] [patch V2 5/9] MdeModulePkg: Update performance library instances

2018-06-22 Thread Dandan Bi
Agreement 1.1 Signed-off-by: Dandan Bi --- .../Include/Guid/ExtendedFirmwarePerformance.h | 6 - .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 864 +++-- .../DxeCorePerformanceLib.inf | 1 + .../DxeCorePerformanceLibInternal.h| 1

[edk2] [patch V2 2/9] MdeModulePkg: Update Performance instances to use new protocol

2018-06-22 Thread Dandan Bi
Update Performance instances in MdeModulePkg to use new PerformanceMeasurement protocol. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 325

[edk2] [patch V2 3/9] MdePkg/PerformanceLib.h: Add new Perf macros

2018-06-22 Thread Dandan Bi
1. Add new Perf macros for performance measurement and related APIs and definitions in Performance library class. 2. Update NULL performance library instance in MdePkg. Cc: Liming Gao Cc: Michael Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi

[edk2] [patch V2 4/9] MdeModulePkg/ExtendedFirmwarePerf: Remove PerfId definitions

2018-06-22 Thread Dandan Bi
Remove the definitions of performance identifier since they have been added into PerformanceLib.h. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Include/Guid/ExtendedFirmwarePerformance.h | 25

[edk2] [patch V2 0/9] Add new Perf macros

2018-06-22 Thread Dandan Bi
: Patch 5: Share the common logics of creating FPDT record for new added Perf macros and existing Perf macros. Cc: Liming Gao Cc: Star Zeng Cc: Michael Kinney Dandan Bi (9): MdeModulePkg: Add PERFORMANCE_MEASUREMENT_PROTOCOL MdeModulePkg: Update Performance instances to use new protocol MdePkg

[edk2] [patch V2 1/9] MdeModulePkg: Add PERFORMANCE_MEASUREMENT_PROTOCOL

2018-06-22 Thread Dandan Bi
Add PerformanceMeasurement protocol to log performance info. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Include/Guid/PerformanceMeasurement.h | 91 ++ MdeModulePkg/MdeModulePkg.dec

[edk2] [patch] SignedCapsulePkg/SystemFirmwareUpdateDxe: Fix ECC issues

2018-06-19 Thread Dandan Bi
Make function comments align with functions. Cc: Star Zeng Cc: Michael D Kinney Cc: Jiewen Yao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.c | 5 + 1 file changed, 5 insertions

[edk2] [patch 9/9] UefiCpuPkg: Use new added Perf macros

2018-06-19 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff

[edk2] [patch 8/9] SecurityPkg: Use new added Perf macros

2018-06-19 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Chao Zhang Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeRsa2048Sha256GuidedSectionExtractLib.c| 16 .../PeiRsa2048Sha256GuidedSectionExtractLib.c

[edk2] [patch 5/9] MdeModulePkg: Update performance library instances

2018-06-19 Thread Dandan Bi
Update the performance library instances in MdeModulePkg to implement the APIs used for new added Perf macros. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 664

[edk2] [patch 7/9] MdeModulePkg: Use new added Perf macros

2018-06-19 Thread Dandan Bi
Replace old Perf macros with the new added ones. Cc: Liming Gao Cc: Star Zeng Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Core/Dxe/Dispatcher/Dispatcher.c | 7 + MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c

[edk2] [patch 6/9] ShellPkg/dp: Update dp tool to parse new Perf record

2018-06-19 Thread Dandan Bi
: Liming Gao Cc: Ruiyu Ni Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c | 75 +++ ShellPkg/DynamicCommand/DpDynamicCommand/Dp.h | 1 + 2 files changed, 66 insertions(+), 10 deletions(-) diff

[edk2] [patch 4/9] MdeModulePkg/ExtendedFirmwarePerf: Remove PerfId definitions

2018-06-19 Thread Dandan Bi
Remove the definitions of performance identifier since they have been added into PerformanceLib.h. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../Include/Guid/ExtendedFirmwarePerformance.h | 25

[edk2] [patch 1/9] MdeModulePkg: Add PERFORMANCE_MEASUREMENT_PROTOCOL

2018-06-19 Thread Dandan Bi
Add PerformanceMeasurement protocol to log performance info. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdeModulePkg/Include/Guid/PerformanceMeasurement.h | 91 ++ MdeModulePkg/MdeModulePkg.dec

[edk2] [patch 3/9] MdePkg/PerformanceLib.h: Add new Perf macros

2018-06-19 Thread Dandan Bi
1. Add new Perf macros for performance measurement and related APIs and definitions in Performance library class. 2. Update NULL performance library instance in MdePkg. Cc: Liming Gao Cc: Michael Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi

[edk2] [patch 2/9] MdeModulePkg: Update Performance instances to use new protocol

2018-06-19 Thread Dandan Bi
Update Update Performance instances in MdeModulePkg to use new PerformanceMeasurement protocol. Cc: Liming Gao Cc: Star Zeng Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 325

[edk2] [patch 0/9] Add new Perf macros

2018-06-19 Thread Dandan Bi
: Liming Gao Cc: Star Zeng Cc: Michael Kinney Dandan Bi (9): MdeModulePkg: Add PERFORMANCE_MEASUREMENT_PROTOCOL MdeModulePkg: Update Performance instances to use new protocol MdePkg/PerformanceLib.h: Add new Perf macros MdeModulePkg/ExtendedFirmwarePerf: Remove PerfId definitions

[edk2] [patch V2 1/3] ShellPkg/Dp: make sure memory is freed before exit

2018-06-11 Thread Dandan Bi
-by: Dandan Bi Reviewed-by: Ruiyu Ni --- ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c | 70 ++- 1 file changed, 37 insertions(+), 33 deletions(-) diff --git a/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c b/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c index aa9c2cdf7a8

[edk2] [RFC] MdePkg/PerformanceLib.h: Add new Perf macros

2018-06-06 Thread Dandan Bi
updating. Cc: Liming Gao Cc: Michael Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi --- MdePkg/Include/Library/PerformanceLib.h | 407 +++- MdePkg/MdePkg.dec | 9 +- 2 files changed, 414 insertions(+), 2

  1   2   3   4   5   6   7   >