On Fri, Feb 21, 2014 at 3:58 PM, Laszlo Ersek <ler...@redhat.com> wrote:
> The field name "ModeNumber" in QEMU_VIDEO_MODE_DATA is misleading -- it is
> not immediately obvious whether this field carries a client-visible mode
> number, in the GOP sense, or an internal, card type specific mode index.
> After checking all references, rename the field to "InternalModeIndex".
>
> Also, when filling in the card type independent QEMU_VIDEO_MODE_DATA array
> from the card type specific mode array, distinguish the GOP mode number
> from the internal mode index in the debug message.
>
> This patch effects no functional changes.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> ---
>  OvmfPkg/QemuVideoDxe/Qemu.h       | 11 +++++++++--
>  OvmfPkg/QemuVideoDxe/Gop.c        |  4 ++--
>  OvmfPkg/QemuVideoDxe/Initialize.c | 18 ++++++++++--------
>  3 files changed, 21 insertions(+), 12 deletions(-)
>
> diff --git a/OvmfPkg/QemuVideoDxe/Qemu.h b/OvmfPkg/QemuVideoDxe/Qemu.h
> index 78e182e..098ee77 100644
> --- a/OvmfPkg/QemuVideoDxe/Qemu.h
> +++ b/OvmfPkg/QemuVideoDxe/Qemu.h
> @@ -50,7 +50,7 @@
>  // QEMU Vide Graphical Mode Data
>  //
>  typedef struct {
> -  UINT32  ModeNumber;
> +  UINT32  InternalModeIndex; // points into card-specific mode table
>    UINT32  HorizontalResolution;
>    UINT32  VerticalResolution;
>    UINT32  ColorDepth;
> @@ -107,15 +107,22 @@ typedef struct {
>    UINT64                                OriginalPciAttributes;
>    EFI_GRAPHICS_OUTPUT_PROTOCOL          GraphicsOutput;
>    EFI_DEVICE_PATH_PROTOCOL              *GopDevicePath;
> +
> +  //
> +  // The next three fields match the client-visible
> +  // EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE.Mode and
> +  // EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE.MaxMode fields.
> +  //
>    UINTN                                 CurrentMode;
>    UINTN                                 MaxMode;
>    QEMU_VIDEO_MODE_DATA                  *ModeData;
> +
>    UINT8                                 *LineBuffer;
>    QEMU_VIDEO_VARIANT                    Variant;
>  } QEMU_VIDEO_PRIVATE_DATA;
>
>  ///
> -/// Video Mode structure
> +/// Card-specific Video Mode structures
>  ///
>  typedef struct {
>    UINT32  Width;
> diff --git a/OvmfPkg/QemuVideoDxe/Gop.c b/OvmfPkg/QemuVideoDxe/Gop.c
> index 912947c..2ff4bcf 100644
> --- a/OvmfPkg/QemuVideoDxe/Gop.c
> +++ b/OvmfPkg/QemuVideoDxe/Gop.c
> @@ -180,11 +180,11 @@ Routine Description:
>    switch (Private->Variant) {
>    case QEMU_VIDEO_CIRRUS_5430:
>    case QEMU_VIDEO_CIRRUS_5446:
> -    InitializeCirrusGraphicsMode (Private, 
> &QemuVideoCirrusModes[ModeData->ModeNumber]);
> +    InitializeCirrusGraphicsMode (Private, 
> &QemuVideoCirrusModes[ModeData->InternalModeIndex]);
>      break;
>    case QEMU_VIDEO_BOCHS_MMIO:
>    case QEMU_VIDEO_BOCHS:
> -    InitializeBochsGraphicsMode (Private, 
> &QemuVideoBochsModes[ModeData->ModeNumber]);
> +    InitializeBochsGraphicsMode (Private, 
> &QemuVideoBochsModes[ModeData->InternalModeIndex]);
>      break;
>    default:
>      ASSERT (FALSE);
> diff --git a/OvmfPkg/QemuVideoDxe/Initialize.c 
> b/OvmfPkg/QemuVideoDxe/Initialize.c
> index 3774478..d3d2e2e 100644
> --- a/OvmfPkg/QemuVideoDxe/Initialize.c
> +++ b/OvmfPkg/QemuVideoDxe/Initialize.c
> @@ -182,14 +182,15 @@ QemuVideoCirrusModeSetup (
>    ModeData = Private->ModeData;
>    VideoMode = &QemuVideoCirrusModes[0];
>    for (Index = 0; Index < QEMU_VIDEO_CIRRUS_MODE_COUNT; Index ++) {
> -    ModeData->ModeNumber = Index;
> +    ModeData->InternalModeIndex = Index;
>      ModeData->HorizontalResolution          = VideoMode->Width;
>      ModeData->VerticalResolution            = VideoMode->Height;
>      ModeData->ColorDepth                    = VideoMode->ColorDepth;
>      ModeData->RefreshRate                   = VideoMode->RefreshRate;
>      DEBUG ((EFI_D_INFO,
> -      "Adding Cirrus Video Mode %d: %dx%d, %d-bit, %d Hz\n",
> -      ModeData->ModeNumber,
> +      "Adding Mode %d as Cirrus Internal Mode %d: %dx%d, %d-bit, %d Hz\n",
> +      (INT32) (ModeData - Private->ModeData),
> +      ModeData->InternalModeIndex,
>        ModeData->HorizontalResolution,
>        ModeData->VerticalResolution,
>        ModeData->ColorDepth,
> @@ -199,7 +200,7 @@ QemuVideoCirrusModeSetup (
>      ModeData ++ ;
>      VideoMode ++;
>    }
> -  Private->MaxMode = QEMU_VIDEO_CIRRUS_MODE_COUNT;
> +  Private->MaxMode = ModeData - Private->ModeData;
>
>    return EFI_SUCCESS;
>  }
> @@ -237,14 +238,15 @@ QemuVideoBochsModeSetup (
>    ModeData = Private->ModeData;
>    VideoMode = &QemuVideoBochsModes[0];
>    for (Index = 0; Index < QEMU_VIDEO_BOCHS_MODE_COUNT; Index ++) {
> -    ModeData->ModeNumber = Index;
> +    ModeData->InternalModeIndex = Index;
>      ModeData->HorizontalResolution          = VideoMode->Width;
>      ModeData->VerticalResolution            = VideoMode->Height;
>      ModeData->ColorDepth                    = VideoMode->ColorDepth;
>      ModeData->RefreshRate                   = 60;
>      DEBUG ((EFI_D_INFO,
> -      "Adding Bochs Video Mode %d: %dx%d, %d-bit, %d Hz\n",
> -      ModeData->ModeNumber,
> +      "Adding Mode %d as Bochs Internal Mode %d: %dx%d, %d-bit, %d Hz\n",
> +      (INT32) (ModeData - Private->ModeData),
> +      ModeData->InternalModeIndex,
>        ModeData->HorizontalResolution,
>        ModeData->VerticalResolution,
>        ModeData->ColorDepth,
> @@ -254,7 +256,7 @@ QemuVideoBochsModeSetup (
>      ModeData ++ ;
>      VideoMode ++;
>    }
> -  Private->MaxMode = QEMU_VIDEO_BOCHS_MODE_COUNT;
> +  Private->MaxMode = ModeData - Private->ModeData;

I think this and the corresponding cirrus one above belong in the next
(filter) patch.

With that change, the 8 QemuVideoDxe patches are:
Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com>

(And seemingly could be reposted separate from the rest of this series.)

>
>    return EFI_SUCCESS;
>  }
> --
> 1.8.3.1
>
>
>
> ------------------------------------------------------------------------------
> Managing the Performance of Cloud-Based Applications
> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
> Read the Whitepaper.
> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
Flow-based real-time traffic analytics software. Cisco certified tool.
Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer
Customize your own dashboards, set traffic alerts and generate reports.
Network behavioral analysis & security monitoring. All-in-one tool.
http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to