Re: [edk2-CCodingStandardsSpecification PATCH 1/1] Fix URLs on the Introduction page
Michael D Kinney
toggle quoted messageShow quoted text
-----Original Message-----
|
|
Re: [edk2-CCodingStandardsSpecification PATCH 1/1] Function example in Chapter 5 C Programming has extraneous semicolon
Michael D Kinney
toggle quoted messageShow quoted text
-----Original Message-----
|
|
Re: [edk2-CCodingStandardsSpecification PATCH 1/1] Update Chapter 5 Source Files examples to follow the coding standard
Michael D Kinney
toggle quoted messageShow quoted text
-----Original Message-----
|
|
Re: [PATCH v5 0/6] jansson edk2 port
Michael D Kinney
Abner,
toggle quoted messageShow quoted text
Feedback below. Mike
-----Original Message-----Why not? The package DEC file can list include paths. For example, the RedFishPkg DEC file currently has the following [Includes] section: [Includes] Include I could be updated to: [Includes] Include Library\JsonLib\jansson\src This would allow libs/modules that want to directly use the jansson services to use #include <janson.h> If you wanted to limit the use of <janson.h> to only libs/modules in the RedfishPkg, then you could use the private include feature: [Includes] Include [Includes.Common.Private] Library\JsonLib\jansson\src In fact, this exact pattern is used in the UnitTestFrameworkPkg to allow comonponents to use the standard includes from the cmocka submodule: [Includes] Library/CmockaLib/cmocka/include [Includes.Common.Private] PrivateInclude Library/CmockaLib/cmocka/include/cmockery Please evaluate this approach and see of the JassonJsoonMapping.h file can be removed. Thus we need an wrapper for these jansson applications. That JanssonJsonMapping.h defines the EDK2 style API for mapping
|
|
[PATCH v1 1/1] Silicon/Qemu/Sbsa: sbsa-wdt interrupt id update
Shashi Mallela
The previous value of interrupt id used was causing
conflict with a different device of sbsa-ref platform. This was preventing the watchdog interrupt from getting identified.Updated SBSA-wdt interrupt id in Gtdt table to rectify the issue. Cc: Leif Lindholm <leif@nuviainc.com> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com> Cc: Graeme Gregory <graeme@nuviainc.com> Signed-off-by: Shashi Mallela <shashi.mallela@linaro.org> --- Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc b/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc index a010b908c434..14733a37183d 100644 --- a/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc +++ b/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc @@ -36,7 +36,7 @@ #define SBSAQEMU_WDT_REFRESH_FRAME_BASE 0x50010000 #define SBSAQEMU_WDT_CONTROL_FRAME_BASE 0x50011000 -#define SBSAQEMU_WDT_IRQ 44 +#define SBSAQEMU_WDT_IRQ 48 #define GTDT_WDTIMER_EDGE_TRIGGERED EFI_ACPI_6_3_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_MODE #define GTDT_WDTIMER_LEVEL_TRIGGERED 0 -- 2.27.0
|
|
[PATCH v1 0/1] sbsa-wdt interrupt id update
Shashi Mallela
This patch contains an update to interrupt id value of
sbsa wdt,since the previous value of interrupt id used was causing conflict with a different device of sbsa-ref platform.This was preventing the watchdog interrupt from getting identified. Shashi Mallela (1): Silicon/Qemu/Sbsa: sbsa-wdt interrupt id update Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.27.0
|
|
Re: [RFC PATCH 0/5] support CPU hot-unplug
Igor Mammedov
On Thu, 10 Dec 2020 12:08:13 -0800
"Ankur Arora" <ankur.a.arora@oracle.com> wrote: On 2020-12-10 1:21 a.m., Laszlo Ersek wrote:Hi Ankur,Thanks for letting me know. I empathize with not wanting to context - Qemu marks the hot-unplug when QEMU_CPUHP_STAT_EJECTED is set and defers itI don't like implementing workarounds on hw side for guest software sake. (it's occasionally done but only if there is no way to fix guest side, for example closed sources OS. So there shall be very good reason to do so) AFAICS, both ought to work. But, assuming it works (I haven't tried it out yet)
|
|
Re: [edk2-platforms][PATCH 29/34] Platform/Ampere: Add LinuxBoot image
Leif Lindholm
Hi Nhi,
toggle quoted messageShow quoted text
Well, that simplifies things, so sure. Please hold back on the v2 until I either comment on somethign requring substantial changes or tell you I'm done with this set. It is a big one, so I probably won't finish today. When you do send a v2, please cc people on all the patches, not just the cover letter. Best Regards, Leif
On Fri, Dec 11, 2020 at 09:38:02 +0700, Nhi Pham wrote:
Hi Leif,
|
|
Re: [PATCH v2 0/4] Add extra pci roots support for Arm
Ni, Ray
toggle quoted messageShow quoted text
-----Original Message-----How is 0x3FFFFFF calculated? 0x3FFFFFF = 0x8000000 / 2 - 1, and 0x8000000 is the minimum value that's power of 2 and bigger than 0x6000000. Is my understanding correct? I don't understand why this calculation method is chosen. It seems a kernel bug to me. I thought Linux doesn't handle the pci resource assignment but just use what was assigned by firmware. Hotplug padding is supported through HotPlugInit protocol in edk2.
|
|
[PATCH V2] UefiCpuPkg/CpuFeature: reduce time complexty to calc CpuInfo.First
Ni, Ray
CpuInfo.First stores whether the current thread belongs to the first
package in the platform, first core in a package, first thread in a core. But the time complexity of original algorithm to calculate the CpuInfo.First is O (n) * O (p) * O (c). n: number of processors p: number of packages c: number of cores per package The patch trades time with space by storing the first package, first core per package, first thread per core in an array. The time complexity becomes O (n). Signed-off-by: Ray Ni <ray.ni@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Yun Lou <yun.lou@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> --- .../CpuFeaturesInitialize.c | 96 +++++++++---------- 1 file changed, 47 insertions(+), 49 deletions(-) diff --git a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitializ= e.c b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c index d4a576385f..a1e972b1a2 100644 --- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c +++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c @@ -105,7 +105,10 @@ CpuInitDataInitialize ( EFI_CPU_PHYSICAL_LOCATION *Location;=0D UINT32 PackageIndex;=0D UINT32 CoreIndex;=0D - UINT32 First;=0D + UINTN Pages;=0D + UINT32 FirstPackage;=0D + UINT32 *FirstCore;=0D + UINT32 *FirstThread;=0D ACPI_CPU_DATA *AcpiCpuData;=0D CPU_STATUS_INFORMATION *CpuStatus;=0D UINT32 *ThreadCountPerPackage;=0D @@ -236,74 +239,69 @@ CpuInitDataInitialize ( =0D //=0D // Initialize CpuFeaturesData->InitOrder[].CpuInfo.First=0D + // Use AllocatePages () instead of AllocatePool () because pool cannot b= e freed in PEI phase but page can.=0D //=0D + Pages =3D EFI_SIZE_TO_PAGES (CpuStatus->PackageCount * sizeof (UINT3= 2) + CpuStatus->PackageCount * CpuStatus->MaxCoreCount * sizeof (UINT32));= =0D + FirstCore =3D AllocatePages (Pages);=0D + ASSERT (FirstCore !=3D NULL);=0D + FirstThread =3D FirstCore + CpuStatus->PackageCount;=0D =0D //=0D - // Set First.Package for each thread belonging to the first package.=0D + // Set FirstPackage, FirstCore[], FirstThread[] to maximum package ID, c= ore ID, thread ID.=0D //=0D - First =3D MAX_UINT32;=0D + FirstPackage =3D MAX_UINT32;=0D + SetMem32 (FirstCore, CpuStatus->PackageCount * sizeof (UINT32), MAX_UI= NT32);=0D + SetMem32 (FirstThread, CpuStatus->PackageCount * CpuStatus->MaxCoreCount= * sizeof (UINT32), MAX_UINT32);=0D +=0D for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; ProcessorNum= ber++) {=0D Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.Proc= essorInfo.Location;=0D - First =3D MIN (Location->Package, First);=0D +=0D + //=0D + // Save the minimum package ID in the platform.=0D + //=0D + FirstPackage =3D MIN (Location->Package, FirstPackage)= ;=0D + =0D + //=0D + // Save the minimum core ID per package.=0D + //=0D + FirstCore[Location->Package] =3D MIN (Location->Core, FirstCore[Locati= on->Package]);=0D + =0D + //=0D + // Save the minimum thread ID per core.=0D + //=0D + FirstThread[Location->Package * CpuStatus->MaxCoreCount + Location->Co= re] =3D MIN (=0D + Location->Thread,=0D + FirstThread[Location->Package * CpuStatus->MaxCoreCount + Location->= Core]=0D + );=0D }=0D +=0D + //=0D + // Update the First field.=0D + //=0D for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; ProcessorNum= ber++) {=0D Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.Proc= essorInfo.Location;=0D - if (Location->Package =3D=3D First) {=0D +=0D + if (Location->Package =3D=3D FirstPackage) {=0D CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Package = =3D 1;=0D }=0D - }=0D =0D - //=0D - // Set First.Die/Tile/Module for each thread assuming:=0D - // single Die under each package, single Tile under each Die, single Mo= dule under each Tile=0D - //=0D - for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; ProcessorNum= ber++) {=0D + //=0D + // Set First.Die/Tile/Module for each thread assuming:=0D + // single Die under each package, single Tile under each Die, single = Module under each Tile=0D + //=0D CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Die =3D 1;=0D CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Tile =3D 1;= =0D CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Module =3D 1= ;=0D - }=0D =0D - for (PackageIndex =3D 0; PackageIndex < CpuStatus->PackageCount; Package= Index++) {=0D - //=0D - // Set First.Core for each thread in the first core of each package.=0D - //=0D - First =3D MAX_UINT32;=0D - for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; ProcessorN= umber++) {=0D - Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.Pr= ocessorInfo.Location;=0D - if (Location->Package =3D=3D PackageIndex) {=0D - First =3D MIN (Location->Core, First);=0D - }=0D + if (Location->Core =3D=3D FirstCore[Location->Package]) {=0D + CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Core =3D 1= ;=0D }=0D -=0D - for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; ProcessorN= umber++) {=0D - Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.Pr= ocessorInfo.Location;=0D - if (Location->Package =3D=3D PackageIndex && Location->Core =3D=3D F= irst) {=0D - CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Core =3D= 1;=0D - }=0D + if (Location->Thread =3D=3D FirstThread[Location->Package * CpuStatus-= MaxCoreCount + Location->Core]) {=0D+ CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Thread =3D= 1;=0D }=0D }=0D =0D - for (PackageIndex =3D 0; PackageIndex < CpuStatus->PackageCount; Package= Index++) {=0D - for (CoreIndex =3D 0; CoreIndex < CpuStatus->MaxCoreCount; CoreIndex++= ) {=0D - //=0D - // Set First.Thread for the first thread of each core.=0D - //=0D - First =3D MAX_UINT32;=0D - for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; Processo= rNumber++) {=0D - Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.= ProcessorInfo.Location;=0D - if (Location->Package =3D=3D PackageIndex && Location->Core =3D=3D= CoreIndex) {=0D - First =3D MIN (Location->Thread, First);=0D - }=0D - }=0D -=0D - for (ProcessorNumber =3D 0; ProcessorNumber < NumberOfCpus; Processo= rNumber++) {=0D - Location =3D &CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.= ProcessorInfo.Location;=0D - if (Location->Package =3D=3D PackageIndex && Location->Core =3D=3D= CoreIndex && Location->Thread =3D=3D First) {=0D - CpuFeaturesData->InitOrder[ProcessorNumber].CpuInfo.First.Thread= =3D 1;=0D - }=0D - }=0D - }=0D - }=0D + FreePages (FirstCore, Pages);=0D }=0D =0D /**=0D --=20 2.27.0.windows.1
|
|
[PATCH v2 1/1] ArmPlatformPkg: Fix Ecc error 8005
PierreGondois
From: Pierre Gondois <Pierre.Gondois@arm.com>
This patch fixes the following Ecc reported error: Variable name does not follow the rules: 1. First character should be upper case 2. Must contain lower case characters 3. No white space characters 4. Global variable name must start with a 'g' Indeed, according to the EDK II C Coding Standards Specification, s5.6.2.2 "Enumerated Types" and s4.3.4 Function and Data Names, elements of an enumerated type shoud be a mixed upper- and lower-case text. A max element is also added, as adviced by s5.6.2.2.3 of the same document. Reference: https://edk2-docs.gitbook.io/edk-ii-c-coding-standards-specification/ Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> --- The changes can be seen at: https://github.com/PierreARM/edk2/tree/pg/1537_Ecc_ArmPlatformPkg_v2 Notes: v2: -Rename enum ELcd... to Lcd... [asked by Ard] .../LcdGraphicsOutputBlt.c | 80 +++++++++---------- .../LcdGraphicsOutputDxe.c | 16 ++-- .../Include/Library/LcdPlatformLib.h | 19 ++--- 3 files changed, 58 insertions(+), 57 deletions(-) diff --git a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputBlt.c b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputBlt.c index 07d2cb0d5dec..f91f4706ecbc 100644 --- a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputBlt.c +++ b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputBlt.c @@ -61,7 +61,7 @@ VideoCopyNoHorizontalOverlap ( switch (BitsPerPixel) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: WidthInBytes = Width * 4; @@ -79,9 +79,9 @@ VideoCopyNoHorizontalOverlap ( } break; - case LCD_BITS_PER_PIXEL_16_555: - case LCD_BITS_PER_PIXEL_16_565: - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_16_555: + case LcdBitsPerPixel_16_565: + case LcdBitsPerPixel_12_444: WidthInBytes = Width * 2; @@ -99,10 +99,10 @@ VideoCopyNoHorizontalOverlap ( } break; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: default: // Can't handle this case DEBUG((DEBUG_ERROR, "ArmVeGraphics_Blt: EfiBltVideoToVideo: INVALID Number of Bits Per Pixel: %d\n", BitsPerPixel)); @@ -149,7 +149,7 @@ VideoCopyHorizontalOverlap ( switch (BitsPerPixel) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: // Allocate a temporary buffer PixelBuffer32bit = (UINT32 *) AllocatePool((Height * Width) * sizeof(UINT32)); @@ -191,9 +191,9 @@ VideoCopyHorizontalOverlap ( break; - case LCD_BITS_PER_PIXEL_16_555: - case LCD_BITS_PER_PIXEL_16_565: - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_16_555: + case LcdBitsPerPixel_16_565: + case LcdBitsPerPixel_12_444: // Allocate a temporary buffer PixelBuffer16bit = (UINT16 *) AllocatePool((Height * Width) * sizeof(UINT16)); @@ -236,10 +236,10 @@ VideoCopyHorizontalOverlap ( break; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: default: // Can't handle this case DEBUG((DEBUG_ERROR, "ArmVeGraphics_Blt: EfiBltVideoToVideo: INVALID Number of Bits Per Pixel: %d\n", BitsPerPixel)); @@ -287,7 +287,7 @@ BltVideoFill ( LcdPlatformGetBpp (This->Mode->Mode,&BitsPerPixel); switch (BitsPerPixel) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: WidthInBytes = Width * 4; // Copy the SourcePixel into every pixel inside the target rectangle @@ -303,7 +303,7 @@ BltVideoFill ( } break; - case LCD_BITS_PER_PIXEL_16_555: + case LcdBitsPerPixel_16_555: // Convert the EFI pixel at the start of the BltBuffer(0,0) into a video display pixel Pixel16bit = (UINT16) ( ( (EfiSourcePixel->Red << 7) & PixelInformation->RedMask ) @@ -330,7 +330,7 @@ BltVideoFill ( } break; - case LCD_BITS_PER_PIXEL_16_565: + case LcdBitsPerPixel_16_565: // Convert the EFI pixel at the start of the BltBuffer(0,0) into a video display pixel Pixel16bit = (UINT16) ( ( (EfiSourcePixel->Red << 8) & PixelInformation->RedMask ) @@ -356,7 +356,7 @@ BltVideoFill ( } break; - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_12_444: // Convert the EFI pixel at the start of the BltBuffer(0,0) into a video display pixel Pixel16bit = (UINT16) ( ( (EfiSourcePixel->Red >> 4) & PixelInformation->RedMask ) @@ -382,10 +382,10 @@ BltVideoFill ( } break; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: default: // Can't handle this case DEBUG((DEBUG_ERROR, "LcdGraphicsBlt: EfiBltVideoFill: INVALID Number of Bits Per Pixel: %d\n", BitsPerPixel)); @@ -443,7 +443,7 @@ BltVideoToBltBuffer ( LcdPlatformGetBpp (This->Mode->Mode,&BitsPerPixel); switch (BitsPerPixel) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: WidthInBytes = Width * 4; // Access each line inside the Video Memory @@ -460,7 +460,7 @@ BltVideoToBltBuffer ( } break; - case LCD_BITS_PER_PIXEL_16_555: + case LcdBitsPerPixel_16_555: // Access each pixel inside the Video Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -487,7 +487,7 @@ BltVideoToBltBuffer ( } break; - case LCD_BITS_PER_PIXEL_16_565: + case LcdBitsPerPixel_16_565: // Access each pixel inside the Video Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -515,7 +515,7 @@ BltVideoToBltBuffer ( } break; - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_12_444: // Access each pixel inside the Video Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -542,10 +542,10 @@ BltVideoToBltBuffer ( } break; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: default: // Can't handle this case DEBUG((DEBUG_ERROR, "LcdGraphicsBlt: EfiBltVideoToBltBuffer: INVALID Number of Bits Per Pixel: %d\n", BitsPerPixel)); @@ -601,7 +601,7 @@ BltBufferToVideo ( LcdPlatformGetBpp (This->Mode->Mode,&BitsPerPixel); switch (BitsPerPixel) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: WidthInBytes = Width * 4; // Access each pixel inside the BltBuffer Memory @@ -618,7 +618,7 @@ BltBufferToVideo ( } break; - case LCD_BITS_PER_PIXEL_16_555: + case LcdBitsPerPixel_16_555: // Access each pixel inside the BltBuffer Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -645,7 +645,7 @@ BltBufferToVideo ( } break; - case LCD_BITS_PER_PIXEL_16_565: + case LcdBitsPerPixel_16_565: // Access each pixel inside the BltBuffer Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -672,7 +672,7 @@ BltBufferToVideo ( } break; - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_12_444: // Access each pixel inside the BltBuffer Memory for (SourceLine = SourceY, DestinationLine = DestinationY; SourceLine < SourceY + Height; @@ -699,10 +699,10 @@ BltBufferToVideo ( } break; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: default: // Can't handle this case DEBUG((DEBUG_ERROR, "LcdGraphicsBlt: EfiBltBufferToVideo: INVALID Number of Bits Per Pixel: %d\n", BitsPerPixel)); diff --git a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputDxe.c b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputDxe.c index bfd03d8f8425..ba83ecf700d6 100644 --- a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputDxe.c +++ b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputDxe.c @@ -374,18 +374,18 @@ GetBytesPerPixel ( ) { switch (Bpp) { - case LCD_BITS_PER_PIXEL_24: + case LcdBitsPerPixel_24: return 4; - case LCD_BITS_PER_PIXEL_16_565: - case LCD_BITS_PER_PIXEL_16_555: - case LCD_BITS_PER_PIXEL_12_444: + case LcdBitsPerPixel_16_565: + case LcdBitsPerPixel_16_555: + case LcdBitsPerPixel_12_444: return 2; - case LCD_BITS_PER_PIXEL_8: - case LCD_BITS_PER_PIXEL_4: - case LCD_BITS_PER_PIXEL_2: - case LCD_BITS_PER_PIXEL_1: + case LcdBitsPerPixel_8: + case LcdBitsPerPixel_4: + case LcdBitsPerPixel_2: + case LcdBitsPerPixel_1: return 1; default: diff --git a/ArmPlatformPkg/Include/Library/LcdPlatformLib.h b/ArmPlatformPkg/Include/Library/LcdPlatformLib.h index ba24487073bb..7d67e848f3a0 100644 --- a/ArmPlatformPkg/Include/Library/LcdPlatformLib.h +++ b/ArmPlatformPkg/Include/Library/LcdPlatformLib.h @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2011-2018, ARM Ltd. All rights reserved.<BR> + Copyright (c) 2011-2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -197,14 +197,15 @@ Register **/ typedef enum { - LCD_BITS_PER_PIXEL_1 = 0, - LCD_BITS_PER_PIXEL_2, - LCD_BITS_PER_PIXEL_4, - LCD_BITS_PER_PIXEL_8, - LCD_BITS_PER_PIXEL_16_555, - LCD_BITS_PER_PIXEL_24, - LCD_BITS_PER_PIXEL_16_565, - LCD_BITS_PER_PIXEL_12_444 + LcdBitsPerPixel_1 = 0, + LcdBitsPerPixel_2, + LcdBitsPerPixel_4, + LcdBitsPerPixel_8, + LcdBitsPerPixel_16_555, + LcdBitsPerPixel_24, + LcdBitsPerPixel_16_565, + LcdBitsPerPixel_12_444, + LcdBitsPerPixel_Max } LCD_BPP; // Display timing settings. -- 2.17.1
|
|
Re: [PATCH] UefiCpuPkg/CpuFeature: reduce time complexty to calc CpuInfo.First
Ni, Ray
Yes. it could. I thought the for loop is more readable. Maybe it doesn't help a lot+ FirstPackage = MAX_UINT32;Could this code block be replaced by a SetMem32(xxx, xxx, MAX_UINT32) call? on the code readability. Let me send an updated version to use SetMem32.
|
|
[PATCH v2 edk2-platforms 2/2] Platform/ARM: Fix Ecc error 8005
PierreGondois
From: Pierre Gondois <Pierre.Gondois@arm.com>
Following the Ecc reported error in the edk2 repository, an enum and its elements have been renamed in: ArmPlatformPkg/Include/Library/LcdPlatformLib.h The Ecc error reported in edk2 is: Variable name does not follow the rules: 1. First character should be upper case 2. Must contain lower case characters 3. No white space characters 4. Global variable name must start with a 'g' Indeed, according to the EDK II C Coding Standards Specification, s5.6.2.2 "Enumerated Types" and s4.3.4 Function and Data Names, elements of an enumerated type "shoud be a mixed upper- and lower-case text". Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> --- The changes can be seen at: https://github.com/PierreARM/edk2-platforms/tree/pg/1537_Ecc_ArmPlatformPkg_v2 Notes: v2: -Rename enum ELcd... to Lcd... [asked by Ard] .../Library/HdLcdArmJunoLib/HdLcdArmJuno.c | 4 +-- .../Library/HdLcdArmSgiLib/HdLcdArmSgi.c | 4 +-- .../Library/ArmMaliDpLib/ArmMaliDpLib.c | 4 +-- .../HdLcdArmVExpressLib/HdLcdArmVExpress.c | 4 +-- .../PL111LcdArmVExpress.c | 34 +++++++++---------- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/Platform/ARM/JunoPkg/Library/HdLcdArmJunoLib/HdLcdArmJuno.c b/Platform/ARM/JunoPkg/Library/HdLcdArmJunoLib/HdLcdArmJuno.c index 4b961b7a9f7f..30558878f068 100644 --- a/Platform/ARM/JunoPkg/Library/HdLcdArmJunoLib/HdLcdArmJuno.c +++ b/Platform/ARM/JunoPkg/Library/HdLcdArmJunoLib/HdLcdArmJuno.c @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2013-2018, ARM Ltd. All rights reserved. + Copyright (c) 2013 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent @@ -543,7 +543,7 @@ LcdPlatformGetBpp ( ASSERT (Bpp != NULL); - *Bpp = LCD_BITS_PER_PIXEL_24; + *Bpp = LcdBitsPerPixel_24; return EFI_SUCCESS; } diff --git a/Platform/ARM/SgiPkg/Library/HdLcdArmSgiLib/HdLcdArmSgi.c b/Platform/ARM/SgiPkg/Library/HdLcdArmSgiLib/HdLcdArmSgi.c index 6f747d2545db..561f3f6747e8 100644 --- a/Platform/ARM/SgiPkg/Library/HdLcdArmSgiLib/HdLcdArmSgi.c +++ b/Platform/ARM/SgiPkg/Library/HdLcdArmSgiLib/HdLcdArmSgi.c @@ -1,6 +1,6 @@ /** @file * -* Copyright (c) 2018, ARM Limited. All rights reserved. +* Copyright (c) 2018 - 2020, Arm Limited. All rights reserved.<BR> * * SPDX-License-Identifier: BSD-2-Clause-Patent * @@ -245,7 +245,7 @@ LcdPlatformGetBpp ( ASSERT (Bpp != NULL); - *Bpp = LCD_BITS_PER_PIXEL_24; + *Bpp = LcdBitsPerPixel_24; return EFI_SUCCESS; } diff --git a/Platform/ARM/VExpressPkg/Library/ArmMaliDpLib/ArmMaliDpLib.c b/Platform/ARM/VExpressPkg/Library/ArmMaliDpLib/ArmMaliDpLib.c index aa55bc2e5bee..a62dce1331d9 100644 --- a/Platform/ARM/VExpressPkg/Library/ArmMaliDpLib/ArmMaliDpLib.c +++ b/Platform/ARM/VExpressPkg/Library/ArmMaliDpLib/ArmMaliDpLib.c @@ -2,7 +2,7 @@ The file contains Arm Mali DP platform specific implementation. - Copyright (c) 2017-2018, Arm Limited. All rights reserved. + Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent @@ -375,7 +375,7 @@ LcdPlatformGetBpp ( return EFI_INVALID_PARAMETER; } - *Bpp = LCD_BITS_PER_PIXEL_24; + *Bpp = LcdBitsPerPixel_24; return EFI_SUCCESS; } diff --git a/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c b/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c index c4b163d35f18..919ef30019ec 100644 --- a/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c +++ b/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2012-2018, ARM Ltd. All rights reserved. + Copyright (c) 2012 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent @@ -361,7 +361,7 @@ LcdPlatformGetBpp ( return EFI_INVALID_PARAMETER; } - *Bpp = LCD_BITS_PER_PIXEL_24; + *Bpp = LcdBitsPerPixel_24; return EFI_SUCCESS; } diff --git a/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c b/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c index b7396a87bd05..87b82e9f97dc 100644 --- a/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c +++ b/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2011-2018, ARM Ltd. All rights reserved.<BR> + Copyright (c) 2011 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -33,97 +33,97 @@ typedef struct { **/ STATIC DISPLAY_MODE mDisplayModes[] = { { // Mode 0 : VGA : 640 x 480 x 24 bpp - VGA, LCD_BITS_PER_PIXEL_24, + VGA, LcdBitsPerPixel_24, VGA_OSC_FREQUENCY, {VGA_H_RES_PIXELS, VGA_H_SYNC, VGA_H_BACK_PORCH, VGA_H_FRONT_PORCH}, {VGA_V_RES_PIXELS, VGA_V_SYNC, VGA_V_BACK_PORCH, VGA_V_FRONT_PORCH} }, { // Mode 1 : SVGA : 800 x 600 x 24 bpp - SVGA, LCD_BITS_PER_PIXEL_24, + SVGA, LcdBitsPerPixel_24, SVGA_OSC_FREQUENCY, {SVGA_H_RES_PIXELS, SVGA_H_SYNC, SVGA_H_BACK_PORCH, SVGA_H_FRONT_PORCH}, {SVGA_V_RES_PIXELS, SVGA_V_SYNC, SVGA_V_BACK_PORCH, SVGA_V_FRONT_PORCH} }, { // Mode 2 : XGA : 1024 x 768 x 24 bpp - XGA, LCD_BITS_PER_PIXEL_24, + XGA, LcdBitsPerPixel_24, XGA_OSC_FREQUENCY, {XGA_H_RES_PIXELS, XGA_H_SYNC, XGA_H_BACK_PORCH, XGA_H_FRONT_PORCH}, {XGA_V_RES_PIXELS, XGA_V_SYNC, XGA_V_BACK_PORCH, XGA_V_FRONT_PORCH} }, { // Mode 3 : SXGA : 1280 x 1024 x 24 bpp - SXGA, LCD_BITS_PER_PIXEL_24, + SXGA, LcdBitsPerPixel_24, (SXGA_OSC_FREQUENCY/2), {SXGA_H_RES_PIXELS, SXGA_H_SYNC, SXGA_H_BACK_PORCH, SXGA_H_FRONT_PORCH}, {SXGA_V_RES_PIXELS, SXGA_V_SYNC, SXGA_V_BACK_PORCH, SXGA_V_FRONT_PORCH} }, { // Mode 4 : UXGA : 1600 x 1200 x 24 bpp - UXGA, LCD_BITS_PER_PIXEL_24, + UXGA, LcdBitsPerPixel_24, (UXGA_OSC_FREQUENCY/2), {UXGA_H_RES_PIXELS, UXGA_H_SYNC, UXGA_H_BACK_PORCH, UXGA_H_FRONT_PORCH}, {UXGA_V_RES_PIXELS, UXGA_V_SYNC, UXGA_V_BACK_PORCH, UXGA_V_FRONT_PORCH} }, { // Mode 5 : HD : 1920 x 1080 x 24 bpp - HD, LCD_BITS_PER_PIXEL_24, + HD, LcdBitsPerPixel_24, (HD_OSC_FREQUENCY/2), {HD_H_RES_PIXELS, HD_H_SYNC, HD_H_BACK_PORCH, HD_H_FRONT_PORCH}, {HD_V_RES_PIXELS, HD_V_SYNC, HD_V_BACK_PORCH, HD_V_FRONT_PORCH} }, { // Mode 6 : VGA : 640 x 480 x 16 bpp (565 Mode) - VGA, LCD_BITS_PER_PIXEL_16_565, + VGA, LcdBitsPerPixel_16_565, VGA_OSC_FREQUENCY, {VGA_H_RES_PIXELS, VGA_H_SYNC, VGA_H_BACK_PORCH, VGA_H_FRONT_PORCH}, {VGA_V_RES_PIXELS, VGA_V_SYNC, VGA_V_BACK_PORCH, VGA_V_FRONT_PORCH} }, { // Mode 7 : SVGA : 800 x 600 x 16 bpp (565 Mode) - SVGA, LCD_BITS_PER_PIXEL_16_565, + SVGA, LcdBitsPerPixel_16_565, SVGA_OSC_FREQUENCY, {SVGA_H_RES_PIXELS, SVGA_H_SYNC, SVGA_H_BACK_PORCH, SVGA_H_FRONT_PORCH}, {SVGA_V_RES_PIXELS, SVGA_V_SYNC, SVGA_V_BACK_PORCH, SVGA_V_FRONT_PORCH} }, { // Mode 8 : XGA : 1024 x 768 x 16 bpp (565 Mode) - XGA, LCD_BITS_PER_PIXEL_16_565, + XGA, LcdBitsPerPixel_16_565, XGA_OSC_FREQUENCY, {XGA_H_RES_PIXELS, XGA_H_SYNC, XGA_H_BACK_PORCH, XGA_H_FRONT_PORCH}, {XGA_V_RES_PIXELS, XGA_V_SYNC, XGA_V_BACK_PORCH, XGA_V_FRONT_PORCH} }, { // Mode 9 : VGA : 640 x 480 x 15 bpp - VGA, LCD_BITS_PER_PIXEL_16_555, + VGA, LcdBitsPerPixel_16_555, VGA_OSC_FREQUENCY, {VGA_H_RES_PIXELS, VGA_H_SYNC, VGA_H_BACK_PORCH, VGA_H_FRONT_PORCH}, {VGA_V_RES_PIXELS, VGA_V_SYNC, VGA_V_BACK_PORCH, VGA_V_FRONT_PORCH} }, { // Mode 10 : SVGA : 800 x 600 x 15 bpp - SVGA, LCD_BITS_PER_PIXEL_16_555, + SVGA, LcdBitsPerPixel_16_555, SVGA_OSC_FREQUENCY, {SVGA_H_RES_PIXELS, SVGA_H_SYNC, SVGA_H_BACK_PORCH, SVGA_H_FRONT_PORCH}, {SVGA_V_RES_PIXELS, SVGA_V_SYNC, SVGA_V_BACK_PORCH, SVGA_V_FRONT_PORCH} }, { // Mode 11 : XGA : 1024 x 768 x 15 bpp - XGA, LCD_BITS_PER_PIXEL_16_555, + XGA, LcdBitsPerPixel_16_555, XGA_OSC_FREQUENCY, {XGA_H_RES_PIXELS, XGA_H_SYNC, XGA_H_BACK_PORCH, XGA_H_FRONT_PORCH}, {XGA_V_RES_PIXELS, XGA_V_SYNC, XGA_V_BACK_PORCH, XGA_V_FRONT_PORCH} }, { // Mode 12 : XGA : 1024 x 768 x 15 bpp - All the timing info is derived from Linux Kernel Driver Settings - XGA, LCD_BITS_PER_PIXEL_16_555, + XGA, LcdBitsPerPixel_16_555, 63500000, {XGA_H_RES_PIXELS, XGA_H_SYNC, XGA_H_BACK_PORCH, XGA_H_FRONT_PORCH}, {XGA_V_RES_PIXELS, XGA_V_SYNC, XGA_V_BACK_PORCH, XGA_V_FRONT_PORCH} }, { // Mode 13 : VGA : 640 x 480 x 12 bpp (444 Mode) - VGA, LCD_BITS_PER_PIXEL_12_444, + VGA, LcdBitsPerPixel_12_444, VGA_OSC_FREQUENCY, {VGA_H_RES_PIXELS, VGA_H_SYNC, VGA_H_BACK_PORCH, VGA_H_FRONT_PORCH}, {VGA_V_RES_PIXELS, VGA_V_SYNC, VGA_V_BACK_PORCH, VGA_V_FRONT_PORCH} }, { // Mode 14 : SVGA : 800 x 600 x 12 bpp (444 Mode) - SVGA, LCD_BITS_PER_PIXEL_12_444, + SVGA, LcdBitsPerPixel_12_444, SVGA_OSC_FREQUENCY, {SVGA_H_RES_PIXELS, SVGA_H_SYNC, SVGA_H_BACK_PORCH, SVGA_H_FRONT_PORCH}, {SVGA_V_RES_PIXELS, SVGA_V_SYNC, SVGA_V_BACK_PORCH, SVGA_V_FRONT_PORCH} }, { // Mode 15 : XGA : 1024 x 768 x 12 bpp (444 Mode) - XGA, LCD_BITS_PER_PIXEL_12_444, + XGA, LcdBitsPerPixel_12_444, XGA_OSC_FREQUENCY, {XGA_H_RES_PIXELS, XGA_H_SYNC, XGA_H_BACK_PORCH, XGA_H_FRONT_PORCH}, {XGA_V_RES_PIXELS, XGA_V_SYNC, XGA_V_BACK_PORCH, XGA_V_FRONT_PORCH} -- 2.17.1
|
|
[PATCH v2 edk2-platforms 1/2] Platform/ARM/VExpressPkg: Remove LcdPlatformLib.h
PierreGondois
From: Pierre Gondois <Pierre.Gondois@arm.com>
LcdPlatformLib.h was introduced by 8ad58788b5c3 as a duplicate of the edk2 original file at: edk2/ArmPlatformPkg/Include/Library/LcdPlatformLib.h The list of files in edk2-plarforms currently using LcdPlatformLib.h is the following: Platform/ARM/SgiPkg/Library/HdLcdArmSgiLib/HdLcdArmSgi.c:11 Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c Platform/ARM/VExpressPkg/Library/ArmMaliDpLib/ArmMaliDpLib.c Platform/ARM/JunoPkg/Library/HdLcdArmJunoLib/HdLcdArmJuno.c They are all using the SCAN_TIMINGS structure. However, this structure is only defined in the original file in the edk2 repository. Thus, the edk2-platforms is un-used and can be safely removed. The build system prefers the edk2 version of the file over its edk2-platforms copy due to the .dec files order in each .inf file where the the library is used. Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> --- The changes can be seen at: https://github.com/PierreARM/edk2-platforms/tree/pg/1537_Ecc_ArmPlatformPkg_v2 Notes: v2: -Remove reference to LcdPlatformLib.h in .dec file [asked by Ard] Platform/ARM/VExpressPkg/ArmVExpressPkg.dec | 3 +- .../Include/Library/LcdPlatformLib.h | 215 ------------------ 2 files changed, 1 insertion(+), 217 deletions(-) delete mode 100644 Platform/ARM/VExpressPkg/Include/Library/LcdPlatformLib.h diff --git a/Platform/ARM/VExpressPkg/ArmVExpressPkg.dec b/Platform/ARM/VExpressPkg/ArmVExpressPkg.dec index f78c5ce7c764..848510bff17e 100644 --- a/Platform/ARM/VExpressPkg/ArmVExpressPkg.dec +++ b/Platform/ARM/VExpressPkg/ArmVExpressPkg.dec @@ -1,7 +1,7 @@ #/** @file # Arm Versatile Express package. # -# Copyright (c) 2012-2018, ARM Limited. All rights reserved. +# Copyright (c) 2012-2020, Arm Limited. All rights reserved.<BR> # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -27,7 +27,6 @@ [Includes.common] [LibraryClasses] ArmPlatformSysConfigLib|Include/Library/ArmPlatformSysConfigLib.h - LcdPlatformLib|Include/Library/LcdPlatformLib.h [Guids.common] gArmVExpressTokenSpaceGuid = { 0x9c0aaed4, 0x74c5, 0x4043, { 0xb4, 0x17, 0xa3, 0x22, 0x38, 0x14, 0xce, 0x76 } } diff --git a/Platform/ARM/VExpressPkg/Include/Library/LcdPlatformLib.h b/Platform/ARM/VExpressPkg/Include/Library/LcdPlatformLib.h deleted file mode 100644 index 5591147313ac..000000000000 --- a/Platform/ARM/VExpressPkg/Include/Library/LcdPlatformLib.h +++ /dev/null @@ -1,215 +0,0 @@ -/** @file - - Copyright (c) 2011, ARM Ltd. All rights reserved.<BR> - SPDX-License-Identifier: BSD-2-Clause-Patent - - **/ - -#ifndef __LCDPLATFORMLIB_H -#define __LCDPLATFORMLIB_H - -#include <Protocol/GraphicsOutput.h> - -#define LCD_VRAM_SIZE SIZE_8MB - -// -// Modes definitions -// -#define VGA 0 -#define SVGA 1 -#define XGA 2 -#define SXGA 3 -#define WSXGA 4 -#define UXGA 5 -#define HD 6 - -// -// VGA Mode: 640 x 480 -// -#define VGA_H_RES_PIXELS 640 -#define VGA_V_RES_PIXELS 480 -#define VGA_OSC_FREQUENCY 23750000 /* 0x016A6570 */ - -#define VGA_H_SYNC ( 80 - 1) -#define VGA_H_FRONT_PORCH ( 16 - 1) -#define VGA_H_BACK_PORCH ( 64 - 1) - -#define VGA_V_SYNC ( 4 - 1) -#define VGA_V_FRONT_PORCH ( 3 - 1) -#define VGA_V_BACK_PORCH ( 13 - 1) - -// -// SVGA Mode: 800 x 600 -// -#define SVGA_H_RES_PIXELS 800 -#define SVGA_V_RES_PIXELS 600 -#define SVGA_OSC_FREQUENCY 38250000 /* 0x0247A610 */ - -#define SVGA_H_SYNC ( 80 - 1) -#define SVGA_H_FRONT_PORCH ( 32 - 1) -#define SVGA_H_BACK_PORCH (112 - 1) - -#define SVGA_V_SYNC ( 4 - 1) -#define SVGA_V_FRONT_PORCH ( 3 - 1) -#define SVGA_V_BACK_PORCH ( 17 - 1) - -// -// XGA Mode: 1024 x 768 -// -#define XGA_H_RES_PIXELS 1024 -#define XGA_V_RES_PIXELS 768 -#define XGA_OSC_FREQUENCY 63500000 /* 0x03C8EEE0 */ - -#define XGA_H_SYNC (104 - 1) -#define XGA_H_FRONT_PORCH ( 48 - 1) -#define XGA_H_BACK_PORCH (152 - 1) - -#define XGA_V_SYNC ( 4 - 1) -#define XGA_V_FRONT_PORCH ( 3 - 1) -#define XGA_V_BACK_PORCH ( 23 - 1) - -// -// SXGA Mode: 1280 x 1024 -// -#define SXGA_H_RES_PIXELS 1280 -#define SXGA_V_RES_PIXELS 1024 -#define SXGA_OSC_FREQUENCY 109000000 /* 0x067F3540 */ - -#define SXGA_H_SYNC (136 - 1) -#define SXGA_H_FRONT_PORCH ( 80 - 1) -#define SXGA_H_BACK_PORCH (216 - 1) - -#define SXGA_V_SYNC ( 7 - 1) -#define SXGA_V_FRONT_PORCH ( 3 - 1) -#define SXGA_V_BACK_PORCH ( 29 - 1) - -// -// WSXGA+ Mode: 1680 x 1050 -// -#define WSXGA_H_RES_PIXELS 1680 -#define WSXGA_V_RES_PIXELS 1050 -#define WSXGA_OSC_FREQUENCY 147000000 /* 0x08C30AC0 */ - -#define WSXGA_H_SYNC (170 - 1) -#define WSXGA_H_FRONT_PORCH (104 - 1) -#define WSXGA_H_BACK_PORCH (274 - 1) - -#define WSXGA_V_SYNC ( 5 - 1) -#define WSXGA_V_FRONT_PORCH ( 4 - 1) -#define WSXGA_V_BACK_PORCH ( 41 - 1) - -// -// UXGA Mode: 1600 x 1200 -// -#define UXGA_H_RES_PIXELS 1600 -#define UXGA_V_RES_PIXELS 1200 -#define UXGA_OSC_FREQUENCY 161000000 /* 0x0998AA40 */ - -#define UXGA_H_SYNC (168 - 1) -#define UXGA_H_FRONT_PORCH (112 - 1) -#define UXGA_H_BACK_PORCH (280 - 1) - -#define UXGA_V_SYNC ( 4 - 1) -#define UXGA_V_FRONT_PORCH ( 3 - 1) -#define UXGA_V_BACK_PORCH ( 38 - 1) - -// -// HD Mode: 1920 x 1080 -// -#define HD_H_RES_PIXELS 1920 -#define HD_V_RES_PIXELS 1080 -#define HD_OSC_FREQUENCY 165000000 /* 0x09D5B340 */ - -#define HD_H_SYNC ( 79 - 1) -#define HD_H_FRONT_PORCH (128 - 1) -#define HD_H_BACK_PORCH (328 - 1) - -#define HD_V_SYNC ( 5 - 1) -#define HD_V_FRONT_PORCH ( 3 - 1) -#define HD_V_BACK_PORCH ( 32 - 1) - -// -// Colour Masks -// - -#define LCD_24BPP_RED_MASK 0x00FF0000 -#define LCD_24BPP_GREEN_MASK 0x0000FF00 -#define LCD_24BPP_BLUE_MASK 0x000000FF -#define LCD_24BPP_RESERVED_MASK 0xFF000000 - -#define LCD_16BPP_555_RED_MASK 0x00007C00 -#define LCD_16BPP_555_GREEN_MASK 0x000003E0 -#define LCD_16BPP_555_BLUE_MASK 0x0000001F -#define LCD_16BPP_555_RESERVED_MASK 0x00000000 - -#define LCD_16BPP_565_RED_MASK 0x0000F800 -#define LCD_16BPP_565_GREEN_MASK 0x000007E0 -#define LCD_16BPP_565_BLUE_MASK 0x0000001F -#define LCD_16BPP_565_RESERVED_MASK 0x00008000 - -#define LCD_12BPP_444_RED_MASK 0x00000F00 -#define LCD_12BPP_444_GREEN_MASK 0x000000F0 -#define LCD_12BPP_444_BLUE_MASK 0x0000000F -#define LCD_12BPP_444_RESERVED_MASK 0x0000F000 - - -// The enumeration indexes maps the PL111 LcdBpp values used in the LCD Control Register -typedef enum { - LCD_BITS_PER_PIXEL_1 = 0, - LCD_BITS_PER_PIXEL_2, - LCD_BITS_PER_PIXEL_4, - LCD_BITS_PER_PIXEL_8, - LCD_BITS_PER_PIXEL_16_555, - LCD_BITS_PER_PIXEL_24, - LCD_BITS_PER_PIXEL_16_565, - LCD_BITS_PER_PIXEL_12_444 -} LCD_BPP; - - -EFI_STATUS -LcdPlatformInitializeDisplay ( - IN EFI_HANDLE Handle - ); - -EFI_STATUS -LcdPlatformGetVram ( - OUT EFI_PHYSICAL_ADDRESS* VramBaseAddress, - OUT UINTN* VramSize - ); - -UINT32 -LcdPlatformGetMaxMode ( - VOID - ); - -EFI_STATUS -LcdPlatformSetMode ( - IN UINT32 ModeNumber - ); - -EFI_STATUS -LcdPlatformQueryMode ( - IN UINT32 ModeNumber, - OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info - ); - -EFI_STATUS -LcdPlatformGetTimings ( - IN UINT32 ModeNumber, - OUT UINT32* HRes, - OUT UINT32* HSync, - OUT UINT32* HBackPorch, - OUT UINT32* HFrontPorch, - OUT UINT32* VRes, - OUT UINT32* VSync, - OUT UINT32* VBackPorch, - OUT UINT32* VFrontPorch - ); - -EFI_STATUS -LcdPlatformGetBpp ( - IN UINT32 ModeNumber, - OUT LCD_BPP* Bpp - ); - -#endif -- 2.17.1
|
|
[PATCH v2 edk2-platforms 0/2] Fix Ecc reported errors from ArmPlatformPkg
PierreGondois
From: Pierre Gondois <Pierre.Gondois@arm.com>
The Ecc tools available in the BaseTools package checks for good practice coding standards. Some errors reported while running Ecc on edk2/ArmPlatformPkg require modifications in the edk2-platforms. This patch set has a dependency over a similar patch set named "Fix Ecc reported errors in ArmPlatformPkg" for edk2 and should not be merged independently. The changes can be seen at: https://github.com/PierreARM/edk2-platforms/tree/pg/1537_Ecc_ArmPlatformPkg_v2 Pierre Gondois (2): Platform/ARM/VExpressPkg: Remove LcdPlatformLib.h Platform/ARM: Fix Ecc error 8005 .../Library/HdLcdArmJunoLib/HdLcdArmJuno.c | 4 +- .../Library/HdLcdArmSgiLib/HdLcdArmSgi.c | 4 +- Platform/ARM/VExpressPkg/ArmVExpressPkg.dec | 3 +- .../Include/Library/LcdPlatformLib.h | 215 ------------------ .../Library/ArmMaliDpLib/ArmMaliDpLib.c | 4 +- .../HdLcdArmVExpressLib/HdLcdArmVExpress.c | 4 +- .../PL111LcdArmVExpress.c | 34 +-- 7 files changed, 26 insertions(+), 242 deletions(-) delete mode 100644 Platform/ARM/VExpressPkg/Include/Library/LcdPlatformLib.h -- 2.17.1
|
|
Re: [PATCH] UefiCpuPkg RegisterCpuFeaturesLib: Use AllocatePages() for InitOrder
Ni, Ray
Reviewed-by: Ray Ni <ray.ni@intel.com>
toggle quoted messageShow quoted text
-----Original Message-----
|
|
[PATCH 2/2] MdeModulePkg/AtaAtapiPassThru: Add support for drives in RAID mode
Vitaly Cheptsov
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3118
This resolves the problem of using drivers connected to Intel G33 builtin SATA controller when run from DuetPkg when it can only be configured in RAID mode through the firmware settings. Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Mateusz Albecki <mateusz.albecki@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Vitaly Cheptsov <cheptsov@ispras.ru> --- MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c b/M= deModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c index 86fe9d954f..5892508aef 100644 --- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c +++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c @@ -620,7 +620,7 @@ AtaAtapiPassThruSupported ( return EFI_UNSUPPORTED; } =20 - if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData)) { + if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData) || IS_PCI_RAID = (&PciData)) { return EFI_SUCCESS; } =20 @@ -1208,6 +1208,12 @@ EnumerateAttachedDevice ( goto Done; } break; + case PCI_CLASS_MASS_STORAGE_RAID : + Instance->AtaPassThruMode.Attributes &=3D ~EFI_ATA_PASS_THRU_ATTRI= BUTES_PHYSICAL; + Instance->ExtScsiPassThruMode.Attributes &=3D ~EFI_EXT_SCSI_PASS_T= HRU_ATTRIBUTES_PHYSICAL; + // + // Fall through to AHCI + // case PCI_CLASS_MASS_STORAGE_SATADPA : // // The ATA controller is working at AHCI mode --=20 2.24.3 (Apple Git-128)
|
|
[PATCH 1/2] MdeModulePkg/SataControllerDxe: Add support for drives in RAID mode
Vitaly Cheptsov
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3118
This resolves the problem of using drivers connected to Intel G33 builtin SATA controller when run from DuetPkg when it can only be configured in RAID mode through the firmware settings. Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Mateusz Albecki <mateusz.albecki@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Vitaly Cheptsov <cheptsov@ispras.ru> --- MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c b/Md= eModulePkg/Bus/Pci/SataControllerDxe/SataController.c index ab06e2833c..301335c967 100644 --- a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c +++ b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c @@ -324,7 +324,7 @@ SataControllerSupported ( return EFI_UNSUPPORTED; } =20 - if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData)) { + if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData) || IS_PCI_RAID = (&PciData)) { return EFI_SUCCESS; } =20 @@ -465,7 +465,7 @@ SataControllerStart ( if (IS_PCI_IDE (&PciData)) { Private->IdeInit.ChannelCount =3D IDE_MAX_CHANNEL; Private->DeviceCount =3D IDE_MAX_DEVICES; - } else if (IS_PCI_SATADPA (&PciData)) { + } else if (IS_PCI_SATADPA (&PciData) || IS_PCI_RAID (&PciData)) { // // Read Ports Implemented(PI) to calculate max port number (0 based)= . // --=20 2.24.3 (Apple Git-128)
|
|
EDK II CI Working - Resume normal activities
Michael D Kinney
|
|
Re: EDK II CI failing - Do not submit PRs with "push" label set
Michael D Kinney
The issue is resolved.
toggle quoted messageShow quoted text
PRs are being processed correctly now. Mike
-----Original Message-----
|
|