mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-01 18:24:23 +08:00
aa0f2dd4de
The Linux Virtual Terminal (VT) layer provides a default keymap which is compiled when VT layer is enabled. But at the same time we are also compiling the EBCDIC keymap and this causes the linker to complain. So let's rename the EBCDIC keymap variables to prevent linker conflict. Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <f670a2698d2372e1e990c48a29334ffe894804b1.1519315352.git.alifm@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
162 lines
6.3 KiB
C
162 lines
6.3 KiB
C
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
/* Do not edit this file! It was automatically generated by */
|
|
/* loadkeys --mktable defkeymap.map > defkeymap.c */
|
|
|
|
#include <linux/types.h>
|
|
#include <linux/keyboard.h>
|
|
#include <linux/kd.h>
|
|
#include <linux/kbd_kern.h>
|
|
#include <linux/kbd_diacr.h>
|
|
|
|
#include "keyboard.h"
|
|
|
|
u_short ebc_plain_map[NR_KEYS] = {
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000, 0xf000,
|
|
0xf020, 0xf000, 0xf0e2, 0xf0e4, 0xf0e0, 0xf0e1, 0xf0e3, 0xf0e5,
|
|
0xf0e7, 0xf0f1, 0xf0a2, 0xf02e, 0xf03c, 0xf028, 0xf02b, 0xf07c,
|
|
0xf026, 0xf0e9, 0xf0e2, 0xf0eb, 0xf0e8, 0xf0ed, 0xf0ee, 0xf0ef,
|
|
0xf0ec, 0xf0df, 0xf021, 0xf024, 0xf02a, 0xf029, 0xf03b, 0xf0ac,
|
|
0xf02d, 0xf02f, 0xf0c2, 0xf0c4, 0xf0c0, 0xf0c1, 0xf0c3, 0xf0c5,
|
|
0xf0c7, 0xf0d1, 0xf0a6, 0xf02c, 0xf025, 0xf05f, 0xf03e, 0xf03f,
|
|
0xf0f8, 0xf0c9, 0xf0ca, 0xf0cb, 0xf0c8, 0xf0cd, 0xf0ce, 0xf0cf,
|
|
0xf0cc, 0xf060, 0xf03a, 0xf023, 0xf040, 0xf027, 0xf03d, 0xf022,
|
|
};
|
|
|
|
static u_short shift_map[NR_KEYS] = {
|
|
0xf0d8, 0xf061, 0xf062, 0xf063, 0xf064, 0xf065, 0xf066, 0xf067,
|
|
0xf068, 0xf069, 0xf0ab, 0xf0bb, 0xf0f0, 0xf0fd, 0xf0fe, 0xf0b1,
|
|
0xf0b0, 0xf06a, 0xf06b, 0xf06c, 0xf06d, 0xf06e, 0xf06f, 0xf070,
|
|
0xf071, 0xf072, 0xf000, 0xf000, 0xf0e6, 0xf0b8, 0xf0c6, 0xf0a4,
|
|
0xf0b5, 0xf07e, 0xf073, 0xf074, 0xf075, 0xf076, 0xf077, 0xf078,
|
|
0xf079, 0xf07a, 0xf0a1, 0xf0bf, 0xf0d0, 0xf0dd, 0xf0de, 0xf0ae,
|
|
0xf402, 0xf0a3, 0xf0a5, 0xf0b7, 0xf0a9, 0xf0a7, 0xf0b6, 0xf0bc,
|
|
0xf0bd, 0xf0be, 0xf05b, 0xf05d, 0xf000, 0xf0a8, 0xf0b4, 0xf0d7,
|
|
0xf07b, 0xf041, 0xf042, 0xf043, 0xf044, 0xf045, 0xf046, 0xf047,
|
|
0xf048, 0xf049, 0xf000, 0xf0f4, 0xf0f6, 0xf0f2, 0xf0f3, 0xf0f5,
|
|
0xf07d, 0xf04a, 0xf04b, 0xf04c, 0xf04d, 0xf04e, 0xf04f, 0xf050,
|
|
0xf051, 0xf052, 0xf0b9, 0xf0fb, 0xf0fc, 0xf0f9, 0xf0fa, 0xf0ff,
|
|
0xf05c, 0xf0f7, 0xf053, 0xf054, 0xf055, 0xf056, 0xf057, 0xf058,
|
|
0xf059, 0xf05a, 0xf0b2, 0xf0d4, 0xf0d6, 0xf0d2, 0xf0d3, 0xf0d5,
|
|
0xf030, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036, 0xf037,
|
|
0xf038, 0xf039, 0xf0b3, 0xf0db, 0xf0dc, 0xf0d9, 0xf0da, 0xf000,
|
|
};
|
|
|
|
static u_short ctrl_map[NR_KEYS] = {
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf11f, 0xf120, 0xf121, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf01a, 0xf003, 0xf212, 0xf004, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf109, 0xf10a, 0xf206, 0xf00a, 0xf200, 0xf200,
|
|
};
|
|
|
|
static u_short shift_ctrl_map[NR_KEYS] = {
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf10c, 0xf10d, 0xf10e, 0xf10f, 0xf110, 0xf111, 0xf112,
|
|
0xf113, 0xf11e, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
0xf200, 0xf100, 0xf101, 0xf211, 0xf103, 0xf104, 0xf105, 0xf20b,
|
|
0xf20a, 0xf108, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
|
|
};
|
|
|
|
ushort *ebc_key_maps[MAX_NR_KEYMAPS] = {
|
|
ebc_plain_map, shift_map, NULL, NULL,
|
|
ctrl_map, shift_ctrl_map, NULL,
|
|
};
|
|
|
|
unsigned int ebc_keymap_count = 4;
|
|
|
|
|
|
/*
|
|
* Philosophy: most people do not define more strings, but they who do
|
|
* often want quite a lot of string space. So, we statically allocate
|
|
* the default and allocate dynamically in chunks of 512 bytes.
|
|
*/
|
|
|
|
char ebc_func_buf[] = {
|
|
'\033', '[', '[', 'A', 0,
|
|
'\033', '[', '[', 'B', 0,
|
|
'\033', '[', '[', 'C', 0,
|
|
'\033', '[', '[', 'D', 0,
|
|
'\033', '[', '[', 'E', 0,
|
|
'\033', '[', '1', '7', '~', 0,
|
|
'\033', '[', '1', '8', '~', 0,
|
|
'\033', '[', '1', '9', '~', 0,
|
|
'\033', '[', '2', '0', '~', 0,
|
|
'\033', '[', '2', '1', '~', 0,
|
|
'\033', '[', '2', '3', '~', 0,
|
|
'\033', '[', '2', '4', '~', 0,
|
|
'\033', '[', '2', '5', '~', 0,
|
|
'\033', '[', '2', '6', '~', 0,
|
|
'\033', '[', '2', '8', '~', 0,
|
|
'\033', '[', '2', '9', '~', 0,
|
|
'\033', '[', '3', '1', '~', 0,
|
|
'\033', '[', '3', '2', '~', 0,
|
|
'\033', '[', '3', '3', '~', 0,
|
|
'\033', '[', '3', '4', '~', 0,
|
|
};
|
|
|
|
|
|
char *ebc_funcbufptr = ebc_func_buf;
|
|
int ebc_funcbufsize = sizeof(ebc_func_buf);
|
|
int ebc_funcbufleft = 0; /* space left */
|
|
|
|
char *ebc_func_table[MAX_NR_FUNC] = {
|
|
ebc_func_buf + 0,
|
|
ebc_func_buf + 5,
|
|
ebc_func_buf + 10,
|
|
ebc_func_buf + 15,
|
|
ebc_func_buf + 20,
|
|
ebc_func_buf + 25,
|
|
ebc_func_buf + 31,
|
|
ebc_func_buf + 37,
|
|
ebc_func_buf + 43,
|
|
ebc_func_buf + 49,
|
|
ebc_func_buf + 55,
|
|
ebc_func_buf + 61,
|
|
ebc_func_buf + 67,
|
|
ebc_func_buf + 73,
|
|
ebc_func_buf + 79,
|
|
ebc_func_buf + 85,
|
|
ebc_func_buf + 91,
|
|
ebc_func_buf + 97,
|
|
ebc_func_buf + 103,
|
|
ebc_func_buf + 109,
|
|
NULL,
|
|
};
|
|
|
|
struct kbdiacruc ebc_accent_table[MAX_DIACR] = {
|
|
{'^', 'c', 0003}, {'^', 'd', 0004},
|
|
{'^', 'z', 0032}, {'^', 0012, 0000},
|
|
};
|
|
|
|
unsigned int ebc_accent_table_size = 4;
|