X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=OptionRomPkg%2FCirrusLogic5430Dxe%2FCirrusLogic5430.h;h=c426cb2ab7d265ef0fa8e64d777036605380ce59;hp=93abd523d251f27c843eb18b57cc7bdebf228a24;hb=110d3a9ac5fc482d15f286ca1588ca87be5000ab;hpb=9eb53ac3456f79fe107d7daf3e849c008375a28e diff --git a/OptionRomPkg/CirrusLogic5430Dxe/CirrusLogic5430.h b/OptionRomPkg/CirrusLogic5430Dxe/CirrusLogic5430.h index 93abd523d2..c426cb2ab7 100644 --- a/OptionRomPkg/CirrusLogic5430Dxe/CirrusLogic5430.h +++ b/OptionRomPkg/CirrusLogic5430Dxe/CirrusLogic5430.h @@ -62,6 +62,24 @@ typedef struct { UINT32 RefreshRate; } CIRRUS_LOGIC_5430_MODE_DATA; +#define PIXEL_RED_SHIFT 0 +#define PIXEL_GREEN_SHIFT 3 +#define PIXEL_BLUE_SHIFT 6 + +#define PIXEL_RED_MASK (BIT7 | BIT6 | BIT5) +#define PIXEL_GREEN_MASK (BIT4 | BIT3 | BIT2) +#define PIXEL_BLUE_MASK (BIT1 | BIT0) + +#define PIXEL_TO_COLOR_BYTE(pixel, mask, shift) ((UINT8) ((pixel & mask) << shift)) +#define PIXEL_TO_RED_BYTE(pixel) PIXEL_TO_COLOR_BYTE(pixel, PIXEL_RED_MASK, PIXEL_RED_SHIFT) +#define PIXEL_TO_GREEN_BYTE(pixel) PIXEL_TO_COLOR_BYTE(pixel, PIXEL_GREEN_MASK, PIXEL_GREEN_SHIFT) +#define PIXEL_TO_BLUE_BYTE(pixel) PIXEL_TO_COLOR_BYTE(pixel, PIXEL_BLUE_MASK, PIXEL_BLUE_SHIFT) + +#define RGB_BYTES_TO_PIXEL(Red, Green, Blue) \ + (UINT8) ( (((Red) >> PIXEL_RED_SHIFT) & PIXEL_RED_MASK) | \ + (((Green) >> PIXEL_GREEN_SHIFT) & PIXEL_GREEN_MASK) | \ + (((Blue) >> PIXEL_BLUE_SHIFT) & PIXEL_BLUE_MASK) ) + #define GRAPHICS_OUTPUT_INVALIDE_MODE_NUMBER 0xffff //