On 04/16/20 01:09, Rebecca Cran wrote:
> bhyve uses the older VESA BIOS Extensions 2.0, so add the mode info
> structure to IndustryStandard/LegacyVgaBios.h
> 
> Signed-off-by: Rebecca Cran <rebe...@bsdio.com>
> ---
>  .../Include/IndustryStandard/LegacyVgaBios.h  | 39 +++++++++++++++++++
>  1 file changed, 39 insertions(+)

This header file currently only exists in support of
"OvmfPkg/QemuVideoDxe/VbeShim.c".

But, I still agree that VBE2_MODE_INFO belongs here. So it's OK.

> diff --git a/OvmfPkg/Include/IndustryStandard/LegacyVgaBios.h 
> b/OvmfPkg/Include/IndustryStandard/LegacyVgaBios.h
> index 317dac3a56..016ff95a5d 100644
> --- a/OvmfPkg/Include/IndustryStandard/LegacyVgaBios.h
> +++ b/OvmfPkg/Include/IndustryStandard/LegacyVgaBios.h
> @@ -88,4 +88,43 @@ typedef struct {
>  } VBE_MODE_INFO;
>  #pragma pack ()
>  
> +typedef struct {
> +  UINT16 ModeAttr;
> +  UINT8  WindowAAttr;
> +  UINT8  WindowBAttr;
> +  UINT16 WindowGranularityKB;
> +  UINT16 WindowSizeKB;
> +  UINT16 WindowAStartSegment;
> +  UINT16 WindowBStartSegment;
> +  UINT32 WindowPositioningAddress;
> +  UINT16 BytesPerScanLine;
> +
> +  UINT16 Width;
> +  UINT16 Height;
> +  UINT8  CharCellWidth;
> +  UINT8  CharCellHeight;
> +  UINT8  NumPlanes;
> +  UINT8  BitsPerPixel;
> +  UINT8  NumBanks;
> +  UINT8  MemoryModel;
> +  UINT8  BankSizeKB;
> +  UINT8  NumImagePagesLessOne;
> +  UINT8  Vbe3;
> +
> +  UINT8  RedMaskSize;
> +  UINT8  RedMaskPos;
> +  UINT8  GreenMaskSize;
> +  UINT8  GreenMaskPos;
> +  UINT8  BlueMaskSize;
> +  UINT8  BlueMaskPos;
> +  UINT8  ReservedMaskSize;
> +  UINT8  ReservedMaskPos;
> +  UINT8  DirectColorModeInfo;
> +
> +  UINT32 LfbAddress;
> +  UINT32 OffScreenAddress;
> +  UINT16 OffScreenSizeKB;
> +} VBE2_MODE_INFO;
> +#pragma pack ()
> +
>  #endif
> 

I'm not going to review the contents of the new structure, so I'm going
to give an A-b, not an R-b.

However, the "#pragma pack ()" that you add at the end is unbalanced.
The pre-patch file already brackets the whole set of structs with

#pragma pack (1)
...
#pragma pack ()

Thus, you need not add any #pragma, just insert the VBE2_MODE_INFO
typedef between the existent pragmas.

Put differently: please remove the "#pragma pack ()" right after
"VBE_MODE_INFO" (*not* after VBE2_MODE_INFO), as a part of this patch.

With that update:

Acked-by: Laszlo Ersek <ler...@redhat.com>

Thanks
Laszlo


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#57533): https://edk2.groups.io/g/devel/message/57533
Mute This Topic: https://groups.io/mt/73045191/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to