/** @file\r
\r
Copyright (c) 2017, Linaro, Ltd. All rights reserved.\r
+ Copyright (c) 2018, Arm Limited. All rights reserved.\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
#include <Library/DebugLib.h>\r
#include <Library/LcdPlatformLib.h>\r
\r
+/** Platform related initialization function.\r
+\r
+ @param[in] Handle Handle to the LCD device instance.\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+**/\r
EFI_STATUS\r
LcdPlatformInitializeDisplay (\r
IN EFI_HANDLE Handle\r
return EFI_UNSUPPORTED;\r
}\r
\r
+/** Allocate VRAM memory in DRAM for the framebuffer\r
+ (unless it is reserved already).\r
+\r
+ The allocated address can be used to set the framebuffer.\r
+\r
+ @param[out] VramBaseAddress A pointer to the framebuffer address.\r
+ @param[out] VramSize A pointer to the size of the frame\r
+ buffer in bytes\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+**/\r
EFI_STATUS\r
LcdPlatformGetVram (\r
OUT EFI_PHYSICAL_ADDRESS* VramBaseAddress,\r
return EFI_UNSUPPORTED;\r
}\r
\r
+/** Return total number of modes supported.\r
+\r
+ Note: Valid mode numbers are 0 to MaxMode - 1\r
+ See Section 12.9 of the UEFI Specification 2.7\r
+\r
+ @retval UINT32 Zero number of modes supported\r
+ in a NULL library implementation.\r
+**/\r
UINT32\r
LcdPlatformGetMaxMode (\r
VOID\r
return 0;\r
}\r
\r
+/** Set the requested display mode.\r
+\r
+ @param[in] ModeNumber Mode Number.\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+**/\r
EFI_STATUS\r
LcdPlatformSetMode (\r
IN UINT32 ModeNumber\r
return EFI_UNSUPPORTED;\r
}\r
\r
+/** Return information for the requested mode number.\r
+\r
+ @param[in] ModeNumber Mode Number.\r
+ @param[out] Info Pointer for returned mode information\r
+ (on success).\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+\r
+**/\r
EFI_STATUS\r
LcdPlatformQueryMode (\r
IN UINT32 ModeNumber,\r
return EFI_UNSUPPORTED;\r
}\r
\r
+/** Return display timing information for the requested mode number.\r
+\r
+ @param[in] ModeNumber Mode Number.\r
+\r
+ @param[out] HRes Pointer to horizontal resolution.\r
+ @param[out] HSync Pointer to horizontal sync width.\r
+ @param[out] HBackPorch Pointer to horizontal back porch.\r
+ @param[out] HFrontPorch Pointer to horizontal front porch.\r
+ @param[out] VRes Pointer to vertical resolution.\r
+ @param[out] VSync Pointer to vertical sync width.\r
+ @param[out] VBackPorch Pointer to vertical back porch.\r
+ @param[out] VFrontPorch Pointer to vertical front porch.\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+**/\r
EFI_STATUS\r
LcdPlatformGetTimings (\r
IN UINT32 ModeNumber,\r
- OUT UINT32* HRes,\r
- OUT UINT32* HSync,\r
- OUT UINT32* HBackPorch,\r
- OUT UINT32* HFrontPorch,\r
- OUT UINT32* VRes,\r
- OUT UINT32* VSync,\r
- OUT UINT32* VBackPorch,\r
- OUT UINT32* VFrontPorch\r
+ OUT SCAN_TIMINGS **Horizontal,\r
+ OUT SCAN_TIMINGS **Vertical\r
)\r
{\r
ASSERT (FALSE);\r
return EFI_UNSUPPORTED;\r
}\r
\r
+/** Return bits per pixel information for a mode number.\r
+\r
+ @param[in] ModeNumber Mode Number.\r
+\r
+ @param[out] Bpp Pointer to value bits per pixel information.\r
+\r
+ @retval EFI_UNSUPPORTED Interface is not supported.\r
+\r
+**/\r
EFI_STATUS\r
LcdPlatformGetBpp (\r
IN UINT32 ModeNumber,\r