Ptr++;\r
}\r
\r
- if ((((UINTN)Ptr - (UINTN)ConVarName) / sizeof (CHAR16)) <= 3) {\r
+ if (((INTN)((UINTN)Ptr - (UINTN)ConVarName) / sizeof (CHAR16)) <= 3) {\r
return TRUE;\r
}\r
\r
//\r
// Check the Usb console in Usb2.0 bus firstly, then Usb1.1 bus\r
//\r
- Status = BdsLibConnectUsbDevByShortFormDP (PCI_CLASSC_PI_EHCI, Instance);\r
+ Status = BdsLibConnectUsbDevByShortFormDP (PCI_IF_EHCI, Instance);\r
if (!EFI_ERROR (Status)) {\r
DeviceExist = TRUE;\r
}\r
\r
- Status = BdsLibConnectUsbDevByShortFormDP (PCI_CLASSC_PI_UHCI, Instance);\r
+ Status = BdsLibConnectUsbDevByShortFormDP (PCI_IF_UHCI, Instance);\r
if (!EFI_ERROR (Status)) {\r
DeviceExist = TRUE;\r
}\r
//\r
// Calculate the BltBuffer needed size.\r
//\r
- BltBufferSize = BmpHeader->PixelWidth * BmpHeader->PixelHeight * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL);\r
- if (BltBufferSize >= SIZE_4GB) {\r
- //\r
- // If the BMP resolution is too large\r
- //\r
- return EFI_UNSUPPORTED;\r
- }\r
- \r
+ BltBufferSize = MultU64x32 ((UINT64) BmpHeader->PixelWidth, BmpHeader->PixelHeight);\r
+ //\r
+ // Ensure the BltBufferSize * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL) doesn't overflow\r
+ //\r
+ if (BltBufferSize > DivU64x32 ((UINTN) ~0, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL))) {\r
+ return EFI_UNSUPPORTED;\r
+ }\r
+ BltBufferSize = MultU64x32 (BltBufferSize, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));\r
+\r
IsAllocated = FALSE;\r
if (*GopBlt == NULL) {\r
//\r
return EFI_SUCCESS;\r
}\r
\r
-\r
-/**\r
- Use Console Control Protocol to lock the Console In Spliter virtual handle.\r
- This is the ConInHandle and ConIn handle in the EFI system table. All key\r
- presses will be ignored until the Password is typed in. The only way to\r
- disable the password is to type it in to a ConIn device.\r
-\r
- @param Password Password used to lock ConIn device.\r
-\r
- @retval EFI_SUCCESS lock the Console In Spliter virtual handle successfully.\r
- @retval EFI_UNSUPPORTED Password not found\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-LockKeyboards (\r
- IN CHAR16 *Password\r
- )\r
-{\r
- return EFI_UNSUPPORTED;\r
-}\r
-\r
-\r
/**\r
- Use Console Control to turn off UGA based Simple Text Out consoles from going\r
- to the UGA device. Put up LogoFile on every UGA device that is a console\r
+ Use SystemTable Conout to stop video based Simple Text Out consoles from going\r
+ to the video device. Put up LogoFile on every video device that is a console.\r
\r
@param[in] LogoFile File name of logo to display on the center of the screen.\r
\r
}\r
\r
/**\r
- Use Console Control to turn on UGA based Simple Text Out consoles. The UGA\r
- Simple Text Out screens will now be synced up with all non UGA output devices\r
+ Use SystemTable Conout to turn on video based Simple Text Out consoles. The \r
+ Simple Text Out screens will now be synced up with all non video output devices\r
\r
@retval EFI_SUCCESS UGA devices are back in text mode and synced up.\r
\r