mirror of
https://xff.cz/git/u-boot/
synced 2025-09-02 09:12:08 +02:00
efi_loader: alternative scan codes for F5, END, HOME
Depending on the key board alternative scan codes are used for F5, END, and HOME. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
@@ -563,10 +563,13 @@ static efi_status_t efi_cin_read_key(struct efi_key_data *key)
|
|||||||
case cESC: /* ESC */
|
case cESC: /* ESC */
|
||||||
pressed_key.scan_code = 23;
|
pressed_key.scan_code = 23;
|
||||||
break;
|
break;
|
||||||
case 'O': /* F1 - F4 */
|
case 'O': /* F1 - F4, End */
|
||||||
ch = getc();
|
ch = getc();
|
||||||
/* consider modifiers */
|
/* consider modifiers */
|
||||||
if (ch < 'P') {
|
if (ch == 'F') { /* End */
|
||||||
|
pressed_key.scan_code = 6;
|
||||||
|
break;
|
||||||
|
} else if (ch < 'P') {
|
||||||
set_shift_mask(ch - '0', &key->key_state);
|
set_shift_mask(ch - '0', &key->key_state);
|
||||||
ch = getc();
|
ch = getc();
|
||||||
}
|
}
|
||||||
@@ -590,17 +593,20 @@ static efi_status_t efi_cin_read_key(struct efi_key_data *key)
|
|||||||
case '1'...'5': /* F1 - F5 */
|
case '1'...'5': /* F1 - F5 */
|
||||||
pressed_key.scan_code = ch - '1' + 11;
|
pressed_key.scan_code = ch - '1' + 11;
|
||||||
break;
|
break;
|
||||||
case '7'...'9': /* F6 - F8 */
|
case '6'...'9': /* F5 - F8 */
|
||||||
pressed_key.scan_code = ch - '7' + 16;
|
pressed_key.scan_code = ch - '6' + 15;
|
||||||
break;
|
break;
|
||||||
case 'A'...'D': /* up, down right, left */
|
case 'A'...'D': /* up, down right, left */
|
||||||
pressed_key.scan_code = ch - 'A' + 1;
|
pressed_key.scan_code = ch - 'A' + 1;
|
||||||
break;
|
break;
|
||||||
case 'F':
|
case 'F': /* End */
|
||||||
pressed_key.scan_code = 6; /* End */
|
pressed_key.scan_code = 6;
|
||||||
break;
|
break;
|
||||||
case 'H':
|
case 'H': /* Home */
|
||||||
pressed_key.scan_code = 5; /* Home */
|
pressed_key.scan_code = 5;
|
||||||
|
break;
|
||||||
|
case '~': /* Home */
|
||||||
|
pressed_key.scan_code = 5;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user