From 4ff492c312d1b3a69116f7d15e564170f481891d Mon Sep 17 00:00:00 2001 From: vanjeff Date: Mon, 16 May 2011 01:51:53 +0000 Subject: Update USB keyboard driver to return scan code for Pause key. Signed-off-by: vanjeff Reviewed-by: erictian Reviewed-by: niruiyu git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11656 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Bus/Usb/UsbKbDxe/KeyBoard.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) (limited to 'MdeModulePkg/Bus/Usb') diff --git a/MdeModulePkg/Bus/Usb/UsbKbDxe/KeyBoard.c b/MdeModulePkg/Bus/Usb/UsbKbDxe/KeyBoard.c index a205da09a3..a11333ccf5 100644 --- a/MdeModulePkg/Bus/Usb/UsbKbDxe/KeyBoard.c +++ b/MdeModulePkg/Bus/Usb/UsbKbDxe/KeyBoard.c @@ -299,6 +299,10 @@ UINT8 ModifierValueToEfiScanCodeConvertionTable[] = { SCAN_F10, // EFI_FUNCTION_KEY_TEN_MODIFIER SCAN_F11, // EFI_FUNCTION_KEY_ELEVEN_MODIFIER SCAN_F12, // EFI_FUNCTION_KEY_TWELVE_MODIFIER + SCAN_NULL, // EFI_PRINT_MODIFIER + SCAN_NULL, // EFI_SYS_REQUEST_MODIFIER + SCAN_NULL, // EFI_SCROLL_LOCK_MODIFIER + SCAN_PAUSE // EFI_PAUSE_MODIFIER }; /** @@ -1476,17 +1480,6 @@ USBParseKey ( continue; break; - // - // PrintScreen, Pause/Break could not be retrieved via SimpleTextInEx protocol - // - case EFI_PAUSE_MODIFIER: - case EFI_BREAK_MODIFIER: - // - // Fall through - // - continue; - break; - default: break; } @@ -1569,7 +1562,7 @@ UsbKeyCodeToEfiInputKey ( // // Make sure modifier of Key Descriptor is in the valid range according to UEFI spec. // - if (KeyDescriptor->Modifier > EFI_FUNCTION_KEY_TWELVE_MODIFIER) { + if (KeyDescriptor->Modifier > (sizeof (ModifierValueToEfiScanCodeConvertionTable) / sizeof (UINT8))) { return EFI_DEVICE_ERROR; } -- cgit v1.2.3