Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * This header provides the constants of the standard Chrome OS key matrix
0004  * for cros-ec keyboard-controller bindings.
0005  *
0006  * Copyright (c) 2021 Google, Inc
0007  */
0008 
0009 #ifndef _CROS_EC_KEYBOARD_H
0010 #define _CROS_EC_KEYBOARD_H
0011 
0012 #define CROS_STD_TOP_ROW_KEYMAP \
0013     MATRIX_KEY(0x00, 0x02, KEY_F1)  \
0014     MATRIX_KEY(0x03, 0x02, KEY_F2)  \
0015     MATRIX_KEY(0x02, 0x02, KEY_F3)  \
0016     MATRIX_KEY(0x01, 0x02, KEY_F4)  \
0017     MATRIX_KEY(0x03, 0x04, KEY_F5)  \
0018     MATRIX_KEY(0x02, 0x04, KEY_F6)  \
0019     MATRIX_KEY(0x01, 0x04, KEY_F7)  \
0020     MATRIX_KEY(0x02, 0x09, KEY_F8)  \
0021     MATRIX_KEY(0x01, 0x09, KEY_F9)  \
0022     MATRIX_KEY(0x00, 0x04, KEY_F10)
0023 
0024 #define CROS_STD_MAIN_KEYMAP    \
0025     MATRIX_KEY(0x00, 0x01, KEY_LEFTMETA)    \
0026     MATRIX_KEY(0x00, 0x03, KEY_B)       \
0027     MATRIX_KEY(0x00, 0x05, KEY_RO)      \
0028     MATRIX_KEY(0x00, 0x06, KEY_N)       \
0029     MATRIX_KEY(0x00, 0x08, KEY_EQUAL)   \
0030     MATRIX_KEY(0x00, 0x0a, KEY_RIGHTALT)    \
0031     MATRIX_KEY(0x01, 0x01, KEY_ESC)     \
0032     MATRIX_KEY(0x01, 0x03, KEY_G)       \
0033     MATRIX_KEY(0x01, 0x06, KEY_H)       \
0034     MATRIX_KEY(0x01, 0x08, KEY_APOSTROPHE)  \
0035     MATRIX_KEY(0x01, 0x0b, KEY_BACKSPACE)   \
0036     MATRIX_KEY(0x01, 0x0c, KEY_HENKAN)  \
0037                         \
0038     MATRIX_KEY(0x02, 0x00, KEY_LEFTCTRL)    \
0039     MATRIX_KEY(0x02, 0x01, KEY_TAB)     \
0040     MATRIX_KEY(0x02, 0x03, KEY_T)       \
0041     MATRIX_KEY(0x02, 0x05, KEY_RIGHTBRACE)  \
0042     MATRIX_KEY(0x02, 0x06, KEY_Y)       \
0043     MATRIX_KEY(0x02, 0x07, KEY_102ND)   \
0044     MATRIX_KEY(0x02, 0x08, KEY_LEFTBRACE)   \
0045     MATRIX_KEY(0x02, 0x0a, KEY_YEN)     \
0046                         \
0047     MATRIX_KEY(0x03, 0x00, KEY_LEFTMETA)    \
0048     MATRIX_KEY(0x03, 0x01, KEY_GRAVE)   \
0049     MATRIX_KEY(0x03, 0x03, KEY_5)       \
0050     MATRIX_KEY(0x03, 0x06, KEY_6)       \
0051     MATRIX_KEY(0x03, 0x08, KEY_MINUS)   \
0052     MATRIX_KEY(0x03, 0x09, KEY_SLEEP)   \
0053     MATRIX_KEY(0x03, 0x0b, KEY_BACKSLASH)   \
0054     MATRIX_KEY(0x03, 0x0c, KEY_MUHENKAN)    \
0055                         \
0056     MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)   \
0057     MATRIX_KEY(0x04, 0x01, KEY_A)       \
0058     MATRIX_KEY(0x04, 0x02, KEY_D)       \
0059     MATRIX_KEY(0x04, 0x03, KEY_F)       \
0060     MATRIX_KEY(0x04, 0x04, KEY_S)       \
0061     MATRIX_KEY(0x04, 0x05, KEY_K)       \
0062     MATRIX_KEY(0x04, 0x06, KEY_J)       \
0063     MATRIX_KEY(0x04, 0x08, KEY_SEMICOLON)   \
0064     MATRIX_KEY(0x04, 0x09, KEY_L)       \
0065     MATRIX_KEY(0x04, 0x0a, KEY_BACKSLASH)   \
0066     MATRIX_KEY(0x04, 0x0b, KEY_ENTER)   \
0067                         \
0068     MATRIX_KEY(0x05, 0x01, KEY_Z)       \
0069     MATRIX_KEY(0x05, 0x02, KEY_C)       \
0070     MATRIX_KEY(0x05, 0x03, KEY_V)       \
0071     MATRIX_KEY(0x05, 0x04, KEY_X)       \
0072     MATRIX_KEY(0x05, 0x05, KEY_COMMA)   \
0073     MATRIX_KEY(0x05, 0x06, KEY_M)       \
0074     MATRIX_KEY(0x05, 0x07, KEY_LEFTSHIFT)   \
0075     MATRIX_KEY(0x05, 0x08, KEY_SLASH)   \
0076     MATRIX_KEY(0x05, 0x09, KEY_DOT)     \
0077     MATRIX_KEY(0x05, 0x0b, KEY_SPACE)   \
0078                         \
0079     MATRIX_KEY(0x06, 0x01, KEY_1)       \
0080     MATRIX_KEY(0x06, 0x02, KEY_3)       \
0081     MATRIX_KEY(0x06, 0x03, KEY_4)       \
0082     MATRIX_KEY(0x06, 0x04, KEY_2)       \
0083     MATRIX_KEY(0x06, 0x05, KEY_8)       \
0084     MATRIX_KEY(0x06, 0x06, KEY_7)       \
0085     MATRIX_KEY(0x06, 0x08, KEY_0)       \
0086     MATRIX_KEY(0x06, 0x09, KEY_9)       \
0087     MATRIX_KEY(0x06, 0x0a, KEY_LEFTALT) \
0088     MATRIX_KEY(0x06, 0x0b, KEY_DOWN)    \
0089     MATRIX_KEY(0x06, 0x0c, KEY_RIGHT)   \
0090                         \
0091     MATRIX_KEY(0x07, 0x01, KEY_Q)       \
0092     MATRIX_KEY(0x07, 0x02, KEY_E)       \
0093     MATRIX_KEY(0x07, 0x03, KEY_R)       \
0094     MATRIX_KEY(0x07, 0x04, KEY_W)       \
0095     MATRIX_KEY(0x07, 0x05, KEY_I)       \
0096     MATRIX_KEY(0x07, 0x06, KEY_U)       \
0097     MATRIX_KEY(0x07, 0x07, KEY_RIGHTSHIFT)  \
0098     MATRIX_KEY(0x07, 0x08, KEY_P)       \
0099     MATRIX_KEY(0x07, 0x09, KEY_O)       \
0100     MATRIX_KEY(0x07, 0x0b, KEY_UP)      \
0101     MATRIX_KEY(0x07, 0x0c, KEY_LEFT)
0102 
0103 #endif /* _CROS_EC_KEYBOARD_H */