public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Leif Lindholm <leif.lindholm@linaro.org>
To: evan.lloyd@arm.com
Cc: edk2-devel@lists.01.org
Subject: Re: [PATCH 14/19] ArmPlatformPkg: Add PCD to select pixel format
Date: Wed, 25 Oct 2017 15:27:01 +0100	[thread overview]
Message-ID: <20171025142701.eyebi4qycxnisvue@bivouac.eciton.net> (raw)
In-Reply-To: <20170926201529.11644-15-evan.lloyd@arm.com>

On Tue, Sep 26, 2017 at 09:15:24PM +0100, evan.lloyd@arm.com wrote:
> From: Girish Pathak <girish.pathak@arm.com>
> 
> Current HDLCD and PL111 platform libraries do not support display modes
> with PixelBlueGreenRedReserved8BitPerColor format.  i.e. because of
> historical confusion, they do not support the UEFI default!
> 
> In LcdPlatformLib for PL111, LcdPlatformQueryMode returns the pixel
> format as PixelRedGreenBlueReserved8BitPerColor which is wrong, because
> that does not match the display controller's pixel format which is set
> to BGR in PL111Lcd GOP driver.
> 
> Also it is not possible to configure pixel format as RGB/BGR for the
> display modes for a platform at build time.
> 
> This change adds PcdGopPixelFormat to configure pixel format as
>     PixelRedGreenBlueReserved8BitPerColor    or
>     PixelBlueGreenRedReserved8BitPerColor    or
>     PixelBitMask.
> With this change, pixel format can be selected in the platform specific
> .dsc file for all supported display modes.
> 
> Support for PixelBitMask is not implemented in PL111 or HDLCD
> GOP driver, hence  HDLCD and PL111 platform libraries will return error
> EFI_UNSUPPORTED if PcdGopPixelFormat is set to PixelBitMask.
> Indeed, it is not clear what selecting PixelBitMask might mean, but
> the option is allowed as it might suit a custom platform.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Girish Pathak <girish.pathak@arm.com>
> Signed-off-by: Evan Lloyd <evan.lloyd@arm.com>
> ---
>  ArmPlatformPkg/ArmPlatformPkg.dec                                                       |  9 ++++-
>  ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf       |  1 +
>  ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf |  1 +
>  ArmPlatformPkg/Include/Library/LcdPlatformLib.h                                         |  6 +++-
>  ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c            | 23 ++++++++----
>  ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c      | 37 +++++++++-----------
>  ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/HdLcd.c                                     | 32 +++++++++++------
>  ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111Lcd.c                                  | 16 ++++++++-
>  8 files changed, 83 insertions(+), 42 deletions(-)
> 
> diff --git a/ArmPlatformPkg/ArmPlatformPkg.dec b/ArmPlatformPkg/ArmPlatformPkg.dec
> index b8a6b131632dc6788b73a034a41b9e3176dffafa..548d2b211753275337c6973e05227cee8451c185 100644
> --- a/ArmPlatformPkg/ArmPlatformPkg.dec
> +++ b/ArmPlatformPkg/ArmPlatformPkg.dec
> @@ -1,6 +1,6 @@
>  #/** @file
>  #
> -#  Copyright (c) 2011-2016, ARM Limited. All rights reserved.
> +#  Copyright (c) 2011-2017, ARM Limited. All rights reserved.
>  #  Copyright (c) 2015, Intel Corporation. All rights reserved.
>  #
>  #  This program and the accompanying materials
> @@ -126,6 +126,13 @@ [PcdsFixedAtBuild.common]
>    gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L""|VOID*|0x0000001B
>    gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L""|VOID*|0x0000001C
>  
> +  # Graphics Output Pixel format
> +  # 0 : PixelRedGreenBlueReserved8BitPerColor
> +  # 1 : PixelBlueGreenRedReserved8BitPerColor
> +  # 2 : PixelBitMask
> +  # Default is set to UEFI console font format PixelBlueGreenRedReserved8BitPerColor
> +  gArmPlatformTokenSpaceGuid.PcdGopPixelFormat|0x00000001|UINT32|0x00000040
> +
>  [PcdsFixedAtBuild.common,PcdsDynamic.common]
>    ## PL031 RealTimeClock
>    gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0|UINT32|0x00000024
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf b/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf
> index bba851c9bd6089cee748b45f40599b24c1293785..37756481596c7e978ed9ed0a932eeb2aa0a3b657 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf
> +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf
> @@ -42,3 +42,4 @@ [Protocols]
>  [FixedPcd]
>    gArmVExpressTokenSpaceGuid.PcdPL111LcdMaxMode
>    gArmVExpressTokenSpaceGuid.PcdHdLcdVideoModeOscId
> +  gArmPlatformTokenSpaceGuid.PcdGopPixelFormat
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf b/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf
> index 1a044baf4698aa6bfa5cd6038f01e84f7a633ea9..6f1cb3b55ff814d007718b5597f821dd20100477 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf
> +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf
> @@ -42,3 +42,4 @@ [Protocols]
>  [FixedPcd]
>    gArmVExpressTokenSpaceGuid.PcdPL111LcdMaxMode
>    gArmVExpressTokenSpaceGuid.PcdPL111LcdVideoModeOscId
> +  gArmPlatformTokenSpaceGuid.PcdGopPixelFormat
> diff --git a/ArmPlatformPkg/Include/Library/LcdPlatformLib.h b/ArmPlatformPkg/Include/Library/LcdPlatformLib.h
> index f2f345b18fd15f2cde159fd42d3208a28f598a1f..d357c22c46b62966859793372c447883e12e1e80 100644
> --- a/ArmPlatformPkg/Include/Library/LcdPlatformLib.h
> +++ b/ArmPlatformPkg/Include/Library/LcdPlatformLib.h
> @@ -139,7 +139,6 @@
>  #define LCD_12BPP_444_BLUE_MASK         0x0000000F
>  #define LCD_12BPP_444_RESERVED_MASK     0x0000F000
>  
> -

Spurious whitespace change adding an extra hunk to the patch, please drop.

>  // The enumeration indexes maps the PL111 LcdBpp values used in the LCD Control Register
>  typedef enum {
>    LCD_BITS_PER_PIXEL_1 = 0,
> @@ -165,6 +164,10 @@ typedef struct {
>    * @param IN Handle               Handle to the LCD device instance.
>    *
>    * @retval EFI_SUCCESS            Platform initialization success.
> +  * @retval EFI_UNSUPPORTED        PcdGopPixelFormat must be
> +  *                                PixelRedGreenBlueReserved8BitPerColor OR
> +  *                                PixelBlueGreenRedReserved8BitPerColor
> +  *                                any other format is not supported.
>    * @retval !(EFI_SUCCESS)         Other errors.
>  **/
>  EFI_STATUS
> @@ -216,6 +219,7 @@ LcdPlatformSetMode (
>    *                                 (on success).
>    *
>    * @retval EFI_SUCCESS             Success if the requested mode is found.
> +  * @retval EFI_INVALID_PARAMETER   Info is NULL.
>    * @retval EFI_INVALID_PARAMETER   Requested mode not found.
>  **/
>  EFI_STATUS
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c b/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
> index 2401cdb30cb7252964ce1f363aa26d99933c09be..07730ed0d7a84b3fb64047bd1013fbc97301db53 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
> +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
> @@ -15,7 +15,6 @@
>  #include <PiDxe.h>
>  
>  #include <Library/ArmPlatformSysConfigLib.h>
> -#include <Library/IoLib.h>
>  #include <Library/PcdLib.h>
>  #include <Library/DebugLib.h>
>  #include <Library/DxeServicesTableLib.h>
> @@ -91,6 +90,10 @@ EFI_EDID_ACTIVE_PROTOCOL      mEdidActive = {
>  /** HDLCD Platform specific initialization function.
>    *
>    * @retval EFI_SUCCESS            Plaform library initialization success.
> +  * @retval EFI_UNSUPPORTED        PcdGopPixelFormat must be
> +  *                                PixelRedGreenBlueReserved8BitPerColor OR
> +  *                                PixelBlueGreenRedReserved8BitPerColor
> +  *                                any other format is not supported.
>    * @retval !(EFI_SUCCESS)         Other errors.
>  **/
>  EFI_STATUS
> @@ -99,6 +102,7 @@ LcdPlatformInitializeDisplay (
>    )
>  {
>    EFI_STATUS  Status;
> +  EFI_GRAPHICS_PIXEL_FORMAT PixelFormat;
>  
>    /* Set the FPGA multiplexer to select the video output from the
>     * motherboard or the daughterboard */
> @@ -120,6 +124,16 @@ LcdPlatformInitializeDisplay (
>                    NULL
>                    );
>  
> +  // PixelBitMask and PixelBltOnly pixel formats are not supported
> +  PixelFormat = FixedPcdGet32 (PcdGopPixelFormat);
> +  if (PixelFormat != PixelRedGreenBlueReserved8BitPerColor
> +    && PixelFormat != PixelBlueGreenRedReserved8BitPerColor) {
> +
> +    ASSERT (PixelFormat == PixelRedGreenBlueReserved8BitPerColor
> +      ||  PixelFormat == PixelBlueGreenRedReserved8BitPerColor);
> +   return EFI_UNSUPPORTED;
> +  }
> +

This block looks identical to a similar block in the next file.
Could this be a shared helper function?

>    return Status;
>  }
>  
> @@ -282,12 +296,7 @@ LcdPlatformQueryMode (
>    Info->VerticalResolution = mDisplayModes[ModeNumber].Vertical.Resolution;
>    Info->PixelsPerScanLine = mDisplayModes[ModeNumber].Horizontal.Resolution;
>  
> -  /* Bits per Pixel is always LCD_BITS_PER_PIXEL_24 */
> -  Info->PixelFormat                   = PixelRedGreenBlueReserved8BitPerColor;
> -  Info->PixelInformation.RedMask      = LCD_24BPP_RED_MASK;
> -  Info->PixelInformation.GreenMask    = LCD_24BPP_GREEN_MASK;
> -  Info->PixelInformation.BlueMask     = LCD_24BPP_BLUE_MASK;
> -  Info->PixelInformation.ReservedMask = LCD_24BPP_RESERVED_MASK;
> +  Info->PixelFormat = FixedPcdGet32 (PcdGopPixelFormat);
>  
>    return EFI_SUCCESS;
>  }
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c b/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
> index 753c5b615361f83625cdd4f0506909721da014b6..31d5e037e42a51f1c08e5bf2fa22eeb7be23e45f 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
> +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
> @@ -149,6 +149,10 @@ EFI_EDID_ACTIVE_PROTOCOL      mEdidActive = {
>  /** PL111 Platform specific initialization function.
>    *
>    * @retval EFI_SUCCESS            Plaform library initialization success.
> +  * @retval EFI_UNSUPPORTED        PcdGopPixelFormat must be
> +  *                                PixelRedGreenBlueReserved8BitPerColor OR
> +  *                                PixelBlueGreenRedReserved8BitPerColor
> +  *                                any other format is not supported
>    * @retval !(EFI_SUCCESS)         Other errors.
>  **/
>  EFI_STATUS
> @@ -157,6 +161,7 @@ LcdPlatformInitializeDisplay (
>    )
>  {
>    EFI_STATUS  Status;
> +  EFI_GRAPHICS_PIXEL_FORMAT PixelFormat;
>  
>    // Set the FPGA multiplexer to select the video output from the motherboard or the daughterboard
>    Status = ArmPlatformSysConfigSet (SYS_CFG_MUXFPGA, PL111_CLCD_SITE);
> @@ -172,6 +177,16 @@ LcdPlatformInitializeDisplay (
>                      );
>    }
>  
> +  // PixelBitMask and PixelBltOnly pixel formats are not supported
> +  PixelFormat = FixedPcdGet32 (PcdGopPixelFormat);
> +  if (PixelFormat != PixelRedGreenBlueReserved8BitPerColor
> +    && PixelFormat != PixelBlueGreenRedReserved8BitPerColor) {
> +
> +    ASSERT (PixelFormat == PixelRedGreenBlueReserved8BitPerColor
> +      ||  PixelFormat == PixelBlueGreenRedReserved8BitPerColor);
> +   return EFI_UNSUPPORTED;
> +  }
> +

(This one.)

>    return Status;
>  }
>  
> @@ -366,27 +381,7 @@ LcdPlatformQueryMode (
>    Info->VerticalResolution = mDisplayModes[ModeNumber].Vertical.Resolution;
>    Info->PixelsPerScanLine = mDisplayModes[ModeNumber].Horizontal.Resolution;
>  
> -  switch (mDisplayModes[ModeNumber].Bpp) {
> -    case LCD_BITS_PER_PIXEL_24:
> -      Info->PixelFormat                   = PixelRedGreenBlueReserved8BitPerColor;
> -      Info->PixelInformation.RedMask      = LCD_24BPP_RED_MASK;
> -      Info->PixelInformation.GreenMask    = LCD_24BPP_GREEN_MASK;
> -      Info->PixelInformation.BlueMask     = LCD_24BPP_BLUE_MASK;
> -      Info->PixelInformation.ReservedMask = LCD_24BPP_RESERVED_MASK;
> -      break;
> -
> -    case LCD_BITS_PER_PIXEL_16_555:
> -    case LCD_BITS_PER_PIXEL_16_565:
> -    case LCD_BITS_PER_PIXEL_12_444:
> -    case LCD_BITS_PER_PIXEL_8:
> -    case LCD_BITS_PER_PIXEL_4:
> -    case LCD_BITS_PER_PIXEL_2:
> -    case LCD_BITS_PER_PIXEL_1:
> -    default:
> -      // These are not supported
> -      ASSERT (FALSE);
> -      break;
> -  }
> +  Info->PixelFormat = FixedPcdGet32 (PcdGopPixelFormat);
>  
>    return EFI_SUCCESS;
>  }
> diff --git a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/HdLcd.c b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/HdLcd.c
> index 03153c06d314cb497c91889386ca6075c0c9f718..3ea7feca439e7ae9a610b6b3139ddbfad3ac6f9c 100644
> --- a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/HdLcd.c
> +++ b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/HdLcd.c
> @@ -22,6 +22,8 @@
>  
>  #include "LcdGraphicsOutputDxe.h"
>  
> +#define BYTES_PER_PIXEL 4
> +
>  /**********************************************************************
>   *
>   *  This file contains all the bits of the Lcd that are
> @@ -66,10 +68,6 @@ LcdInitialize (
>      HDLCD_LITTLE_ENDIAN | HDLCD_4BYTES_PER_PIXEL
>      );
>  
> -  MmioWrite32 (HDLCD_REG_RED_SELECT,   (0 << 16 | 8 << 8 | 0));
> -  MmioWrite32 (HDLCD_REG_GREEN_SELECT, (0 << 16 | 8 << 8 | 8));
> -  MmioWrite32 (HDLCD_REG_BLUE_SELECT,  (0 << 16 | 8 << 8 | 16));
> -
>    return EFI_SUCCESS;
>  }
>  
> @@ -77,7 +75,8 @@ LcdInitialize (
>    *
>    * @param  ModeNumber             Display mode number.
>    * @retval EFI_SUCCESS            Display set mode success.
> -  * @retval EFI_DEVICE_ERROR       If mode not found/supported.
> +  * @retval EFI_DEVICE_ERROR       Mode not found/supported.
> +  * @retval !EFI_SUCCESS           Other errors.
>  **/
>  EFI_STATUS
>  LcdSetMode (
> @@ -87,9 +86,8 @@ LcdSetMode (
>    EFI_STATUS          Status;
>    CONST SCAN_TIMINGS *Horizontal;
>    CONST SCAN_TIMINGS *Vertical;
> -  UINT32              BytesPerPixel;
> -  LCD_BPP             LcdBpp;
>  
> +  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  ModeInfo;
>  
>    // Set the video mode timings and other relevant information
>    Status = LcdPlatformGetTimings (
> @@ -104,13 +102,22 @@ LcdSetMode (
>    ASSERT (Horizontal != NULL);
>    ASSERT (Vertical != NULL);
>  
> -  Status = LcdPlatformGetBpp (ModeNumber, &LcdBpp);
> +  // Get the pixel format information.
> +  Status = LcdPlatformQueryMode (ModeNumber, &ModeInfo);
>    if (EFI_ERROR (Status)) {
>      ASSERT_EFI_ERROR (Status);
>      return Status;
>    }
>  
> -  BytesPerPixel = GetBytesPerPixel (LcdBpp);
> +  if (ModeInfo.PixelFormat == PixelBlueGreenRedReserved8BitPerColor) {
> +    MmioWrite32 (HDLCD_REG_RED_SELECT,  (8 << 8 | 16));
> +    MmioWrite32 (HDLCD_REG_BLUE_SELECT, (8 << 8 | 0));
> +  } else {
> +    MmioWrite32 (HDLCD_REG_BLUE_SELECT, (8 << 8 | 16));
> +    MmioWrite32 (HDLCD_REG_RED_SELECT,  (8 << 8 | 0));
> +  }
> +
> +  MmioWrite32 (HDLCD_REG_GREEN_SELECT, (8 << 8 | 8));

Could we have some parentheses above, to clarify (intended) precedence?

>  
>    // Disable the controller
>    MmioWrite32 (HDLCD_REG_COMMAND, HDLCD_DISABLE);
> @@ -118,10 +125,13 @@ LcdSetMode (
>    // Update the frame buffer information with the new settings
>    MmioWrite32 (
>      HDLCD_REG_FB_LINE_LENGTH,
> -    Horizontal->Resolution * BytesPerPixel
> +    Horizontal->Resolution * BYTES_PER_PIXEL
>      );
>  
> -  MmioWrite32 (HDLCD_REG_FB_LINE_PITCH, Horizontal->Resolution * BytesPerPixel);
> +  MmioWrite32 (
> +    HDLCD_REG_FB_LINE_PITCH,
> +    Horizontal->Resolution * BYTES_PER_PIXEL
> +    );
>  
>    MmioWrite32 (HDLCD_REG_FB_LINE_COUNT, Vertical->Resolution - 1);
>  
> diff --git a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111Lcd.c b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111Lcd.c
> index 6de60491e9fd0c5bca71e743aac2862ff85f6e7e..4bad2367982e16d5d23c4eab2e6d91bf7db1c031 100644
> --- a/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111Lcd.c
> +++ b/ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111Lcd.c
> @@ -80,6 +80,7 @@ LcdInitialize (
>    * @param  ModeNumber             Display mode number.
>    * @retval EFI_SUCCESS            Display set mode success.
>    * @retval EFI_DEVICE_ERROR       If mode not found/supported.
> +    @retval !EFI_SUCCESS           Other errors.
>  **/
>  EFI_STATUS
>  LcdSetMode (
> @@ -92,6 +93,8 @@ LcdSetMode (
>    UINT32              LcdControl;
>    LCD_BPP             LcdBpp;
>  
> +  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  ModeInfo;
> +
>    // Set the video mode timings and other relevant information
>    Status = LcdPlatformGetTimings (
>               ModeNumber,
> @@ -111,6 +114,13 @@ LcdSetMode (
>      return Status;
>    }
>  
> +  // Get the pixel format information.
> +  Status = LcdPlatformQueryMode (ModeNumber, &ModeInfo);
> +  if (EFI_ERROR (Status)) {
> +    ASSERT_EFI_ERROR (Status);
> +    return Status;
> +  }
> +
>    // Disable the CLCD_LcdEn bit
>    MmioAnd32 (PL111_REG_LCD_CONTROL, ~PL111_CTRL_LCD_EN);
>  
> @@ -144,7 +154,11 @@ LcdSetMode (
>  
>    // PL111_REG_LCD_CONTROL
>    LcdControl = PL111_CTRL_LCD_EN | PL111_CTRL_LCD_BPP (LcdBpp)
> -               | PL111_CTRL_LCD_TFT | PL111_CTRL_BGR;
> +                 | PL111_CTRL_LCD_TFT;

This is not a function call, so I do not believe the continuation line
should be indented.

/
    Leif

> +
> +  if (ModeInfo.PixelFormat == PixelBlueGreenRedReserved8BitPerColor) {
> +    LcdControl |= PL111_CTRL_BGR;
> +  }
>  
>    MmioWrite32 (PL111_REG_LCD_CONTROL, LcdControl);
>  
> -- 
> Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")
> 


  reply	other threads:[~2017-10-25 14:23 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-26 20:15 [PATCH 00/19] ArmPlatformPkg: Update GOP evan.lloyd
2017-09-26 20:15 ` [PATCH 01/19] ArmPlatformPkg: Tidy LcdGraphicsOutputDxe code: Coding standard evan.lloyd
2017-10-12 18:45   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 02/19] ArmPlatformPkg: Tidy LcdGraphicsOutputDxe code: Added comments evan.lloyd
2017-10-12 19:02   ` Leif Lindholm
2017-12-05 18:55     ` Evan Lloyd
2017-12-05 19:58       ` Leif Lindholm
2017-12-05 22:06         ` Evan Lloyd
2017-09-26 20:15 ` [PATCH 03/19] ArmPlatformPkg: PL111 and HDLCD: add const qualifier evan.lloyd
2017-10-12 19:07   ` Leif Lindholm
2017-10-12 19:47   ` Ard Biesheuvel
2017-12-01 16:17     ` Evan Lloyd
2017-12-01 17:31       ` Ard Biesheuvel
2017-12-05 20:35         ` Evan Lloyd
2017-12-05 20:54           ` Ard Biesheuvel
2017-09-26 20:15 ` [PATCH 04/19] ArmPlatformPkg: LcdGraphicsOurputDxe: Add debug asserts evan.lloyd
2017-10-12 19:32   ` Leif Lindholm
2017-10-13  7:33   ` Ard Biesheuvel
2017-12-01 16:33     ` Evan Lloyd
2017-12-01 17:34       ` Ard Biesheuvel
2017-12-01 17:58         ` Leif Lindholm
2017-12-05 20:46         ` Evan Lloyd
2017-12-07 14:55           ` Alexei Fedorov
2017-12-07 15:10             ` Ard Biesheuvel
2017-12-07 16:53               ` Alexei Fedorov
2017-12-08 21:39                 ` Ard Biesheuvel
2017-09-26 20:15 ` [PATCH 05/19] ArmPlatformPkg: PL111LcdArmVExpressLib: Minor code cleanup evan.lloyd
2017-10-12 19:33   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 06/19] ArmPlatformPkg: PL111Lcd: Replace magic number with macro evan.lloyd
2017-10-12 19:34   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 07/19] ArmPlatformPkg: PL111LcdArmVExpressLib: Use FixedPcdGet32 evan.lloyd
2017-10-12 19:35   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 08/19] ArmPlatformPkg: PL11LcdArmVExpressLib: Improvement conditional evan.lloyd
2017-10-12 19:36   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 09/19] ArmPlatformPkg: HdLcdArmVExpressLib: Use FixedPcdGet32 evan.lloyd
2017-10-12 19:38   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 10/19] ArmPlatformPkg: HdLcdArmVExpressLib: Remove status check EFI_TIMEOUT evan.lloyd
2017-10-12 19:40   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 11/19] ArmPlatformPkg: Implement LcdIdentify function for HDLCD GOP evan.lloyd
2017-10-12 19:43   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 12/19] ArmPlatformPkg: Redefine LcdPlatformGetTimings function evan.lloyd
2017-10-13  7:49   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 13/19] ArmPlatformPkg: HdLcd Remove redundant Bpp evan.lloyd
2017-10-13  7:53   ` Leif Lindholm
2017-10-17 14:32     ` Evan Lloyd
2017-10-17 15:40       ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 14/19] ArmPlatformPkg: Add PCD to select pixel format evan.lloyd
2017-10-25 14:27   ` Leif Lindholm [this message]
2017-09-26 20:15 ` [PATCH 15/19] ArmPlatformPkg: PCD to swap red/blue format for HDLCD evan.lloyd
2017-10-25 14:33   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 16/19] ArmPlatformPkg: Reorganize Lcd Graphics Output evan.lloyd
2017-10-25 14:44   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 17/19] ArmPlatformPkg: Additional display modes evan.lloyd
2017-10-25 14:45   ` Leif Lindholm
2017-09-26 20:15 ` [PATCH 18/19] ArmPlatformPkg: Reserving framebuffer at build evan.lloyd
2017-10-25 14:51   ` Leif Lindholm
2017-10-25 18:10   ` Ard Biesheuvel
2017-12-01 16:56     ` Evan Lloyd
2017-12-01 17:38       ` Ard Biesheuvel
2017-09-26 20:15 ` [PATCH 19/19] ArmPlatformPkg: New DP500/DP550/DP650 GOP driver evan.lloyd
2017-10-25 15:31   ` Leif Lindholm
2017-11-28 18:17   ` Ard Biesheuvel
2017-12-01 13:12     ` Evan Lloyd
2017-12-01 17:18       ` Ard Biesheuvel
2017-12-05 20:03         ` Evan Lloyd
2017-12-05 21:27           ` Ard Biesheuvel
2017-12-07 20:21             ` Evan Lloyd
2017-12-07 21:10               ` Ard Biesheuvel
2017-12-01 17:29       ` Leif Lindholm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171025142701.eyebi4qycxnisvue@bivouac.eciton.net \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox