1223328Sgavin// SPDX-License-Identifier: GPL-2.0-only 2223328Sgavin/* 379971Sobrien * Keyboard dts fragment for devices that use cros-ec-keyboard 4223328Sgavin * 5223328Sgavin * Copyright (c) 2014 Google, Inc 6223328Sgavin * 7223328Sgavin * This file is taken from Linux 8223328Sgavin * arch/arm/boot/dts/cros-ec-keyboard.dtsi. 9223328Sgavin * 1079971Sobrien * A duplicate KEY_BACKSLASH key had to be removed. 11223328Sgavin */ 12223328Sgavin 13223328Sgavin#include <dt-bindings/input/input.h> 14223328Sgavin 15223328Sgavin&cros_ec { 16223328Sgavin keyboard-controller { 17223328Sgavin compatible = "google,cros-ec-keyb"; 18223328Sgavin keypad,num-rows = <8>; 19223328Sgavin keypad,num-columns = <13>; 20223328Sgavin google,needs-ghost-filter; 21223328Sgavin 22223328Sgavin linux,keymap = < 23223328Sgavin MATRIX_KEY(0x00, 0x01, KEY_LEFTMETA) 24223328Sgavin MATRIX_KEY(0x00, 0x02, KEY_F1) 25223328Sgavin MATRIX_KEY(0x00, 0x03, KEY_B) 26223328Sgavin MATRIX_KEY(0x00, 0x04, KEY_F10) 27223328Sgavin MATRIX_KEY(0x00, 0x05, KEY_RO) 28223328Sgavin MATRIX_KEY(0x00, 0x06, KEY_N) 29223328Sgavin MATRIX_KEY(0x00, 0x08, KEY_EQUAL) 30223328Sgavin MATRIX_KEY(0x00, 0x0a, KEY_RIGHTALT) 31223328Sgavin 32223328Sgavin MATRIX_KEY(0x01, 0x01, KEY_ESC) 33223328Sgavin MATRIX_KEY(0x01, 0x02, KEY_F4) 34223328Sgavin MATRIX_KEY(0x01, 0x03, KEY_G) 35223328Sgavin MATRIX_KEY(0x01, 0x04, KEY_F7) 36223328Sgavin MATRIX_KEY(0x01, 0x06, KEY_H) 37223328Sgavin MATRIX_KEY(0x01, 0x08, KEY_APOSTROPHE) 38223328Sgavin MATRIX_KEY(0x01, 0x09, KEY_F9) 39223328Sgavin MATRIX_KEY(0x01, 0x0b, KEY_BACKSPACE) 40223328Sgavin MATRIX_KEY(0x01, 0x0c, KEY_HENKAN) 41223328Sgavin 42223328Sgavin MATRIX_KEY(0x02, 0x00, KEY_LEFTCTRL) 43223328Sgavin MATRIX_KEY(0x02, 0x01, KEY_TAB) 44223328Sgavin MATRIX_KEY(0x02, 0x02, KEY_F3) 45223328Sgavin MATRIX_KEY(0x02, 0x03, KEY_T) 46223328Sgavin MATRIX_KEY(0x02, 0x04, KEY_F6) 47223328Sgavin MATRIX_KEY(0x02, 0x05, KEY_RIGHTBRACE) 48223328Sgavin MATRIX_KEY(0x02, 0x06, KEY_Y) 49223328Sgavin MATRIX_KEY(0x02, 0x07, KEY_102ND) 50223328Sgavin MATRIX_KEY(0x02, 0x08, KEY_LEFTBRACE) 51223328Sgavin MATRIX_KEY(0x02, 0x09, KEY_F8) 52223328Sgavin MATRIX_KEY(0x02, 0x0a, KEY_YEN) 53223328Sgavin 54223328Sgavin MATRIX_KEY(0x03, 0x01, KEY_GRAVE) 55223328Sgavin MATRIX_KEY(0x03, 0x02, KEY_F2) 56223328Sgavin MATRIX_KEY(0x03, 0x03, KEY_5) 57223328Sgavin MATRIX_KEY(0x03, 0x04, KEY_F5) 58223328Sgavin MATRIX_KEY(0x03, 0x06, KEY_6) 59223328Sgavin MATRIX_KEY(0x03, 0x08, KEY_MINUS) 60223328Sgavin MATRIX_KEY(0x03, 0x09, KEY_F13) 61223328Sgavin MATRIX_KEY(0x03, 0x0b, KEY_BACKSLASH) 62223328Sgavin MATRIX_KEY(0x03, 0x0c, KEY_MUHENKAN) 63223328Sgavin 64223328Sgavin MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL) 65223328Sgavin MATRIX_KEY(0x04, 0x01, KEY_A) 66223328Sgavin MATRIX_KEY(0x04, 0x02, KEY_D) 67223328Sgavin MATRIX_KEY(0x04, 0x03, KEY_F) 68223328Sgavin MATRIX_KEY(0x04, 0x04, KEY_S) 69223328Sgavin MATRIX_KEY(0x04, 0x05, KEY_K) 70223328Sgavin MATRIX_KEY(0x04, 0x06, KEY_J) 71223328Sgavin MATRIX_KEY(0x04, 0x08, KEY_SEMICOLON) 72223328Sgavin MATRIX_KEY(0x04, 0x09, KEY_L) 73223328Sgavin /* 74223328Sgavin * Do not map any key twice 75223328Sgavin * MATRIX_KEY(0x04, 0x0a, KEY_BACKSLASH) 76223328Sgavin */ 77223328Sgavin MATRIX_KEY(0x04, 0x0b, KEY_ENTER) 78223328Sgavin 79223328Sgavin MATRIX_KEY(0x05, 0x01, KEY_Z) 80223328Sgavin MATRIX_KEY(0x05, 0x02, KEY_C) 81223328Sgavin MATRIX_KEY(0x05, 0x03, KEY_V) 82223328Sgavin MATRIX_KEY(0x05, 0x04, KEY_X) 83223328Sgavin MATRIX_KEY(0x05, 0x05, KEY_COMMA) 84223328Sgavin MATRIX_KEY(0x05, 0x06, KEY_M) 85223328Sgavin MATRIX_KEY(0x05, 0x07, KEY_LEFTSHIFT) 86223328Sgavin MATRIX_KEY(0x05, 0x08, KEY_SLASH) 87223328Sgavin MATRIX_KEY(0x05, 0x09, KEY_DOT) 88223328Sgavin MATRIX_KEY(0x05, 0x0b, KEY_SPACE) 89223328Sgavin 90223328Sgavin MATRIX_KEY(0x06, 0x01, KEY_1) 91223328Sgavin MATRIX_KEY(0x06, 0x02, KEY_3) 92223328Sgavin MATRIX_KEY(0x06, 0x03, KEY_4) 93223328Sgavin MATRIX_KEY(0x06, 0x04, KEY_2) 94223328Sgavin MATRIX_KEY(0x06, 0x05, KEY_8) 95223328Sgavin MATRIX_KEY(0x06, 0x06, KEY_7) 96223328Sgavin MATRIX_KEY(0x06, 0x08, KEY_0) 97223328Sgavin MATRIX_KEY(0x06, 0x09, KEY_9) 98223328Sgavin MATRIX_KEY(0x06, 0x0a, KEY_LEFTALT) 99223328Sgavin MATRIX_KEY(0x06, 0x0b, KEY_DOWN) 100223328Sgavin MATRIX_KEY(0x06, 0x0c, KEY_RIGHT) 101223328Sgavin 102223328Sgavin MATRIX_KEY(0x07, 0x01, KEY_Q) 103223328Sgavin MATRIX_KEY(0x07, 0x02, KEY_E) 104223328Sgavin MATRIX_KEY(0x07, 0x03, KEY_R) 105223328Sgavin MATRIX_KEY(0x07, 0x04, KEY_W) 106223328Sgavin MATRIX_KEY(0x07, 0x05, KEY_I) 107223328Sgavin MATRIX_KEY(0x07, 0x06, KEY_U) 108223328Sgavin MATRIX_KEY(0x07, 0x07, KEY_RIGHTSHIFT) 109223328Sgavin MATRIX_KEY(0x07, 0x08, KEY_P) 110223328Sgavin MATRIX_KEY(0x07, 0x09, KEY_O) 111223328Sgavin MATRIX_KEY(0x07, 0x0b, KEY_UP) 112223328Sgavin MATRIX_KEY(0x07, 0x0c, KEY_LEFT) 113223328Sgavin >; 114223328Sgavin }; 115223328Sgavin}; 116223328Sgavin