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
This commit is contained in:
vanjeff 2011-05-16 01:51:53 +00:00
parent 66b96f9213
commit 4ff492c312
1 changed files with 5 additions and 12 deletions

View File

@ -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;
}