xref: /OK3568_Linux_fs/u-boot/arch/arm/dts/cros-ec-keyboard.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun/*
2*4882a593Smuzhiyun * Keyboard dts fragment for devices that use cros-ec-keyboard
3*4882a593Smuzhiyun *
4*4882a593Smuzhiyun * Copyright (c) 2014 Google, Inc
5*4882a593Smuzhiyun *
6*4882a593Smuzhiyun * This program is free software; you can redistribute it and/or modify
7*4882a593Smuzhiyun * it under the terms of the GNU General Public License version 2 as
8*4882a593Smuzhiyun * published by the Free Software Foundation.
9*4882a593Smuzhiyun*/
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun#include <dt-bindings/input/input.h>
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun&cros_ec {
14*4882a593Smuzhiyun	keyboard-controller {
15*4882a593Smuzhiyun		compatible = "google,cros-ec-keyb";
16*4882a593Smuzhiyun		keypad,num-rows = <8>;
17*4882a593Smuzhiyun		keypad,num-columns = <13>;
18*4882a593Smuzhiyun		google,needs-ghost-filter;
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun		linux,keymap = <
21*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x01, KEY_LEFTMETA)
22*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x02, KEY_F1)
23*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x03, KEY_B)
24*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x04, KEY_F10)
25*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x06, KEY_N)
26*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x08, KEY_EQUAL)
27*4882a593Smuzhiyun			MATRIX_KEY(0x00, 0x0a, KEY_RIGHTALT)
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x01, KEY_ESC)
30*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x02, KEY_F4)
31*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x03, KEY_G)
32*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x04, KEY_F7)
33*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x06, KEY_H)
34*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x08, KEY_APOSTROPHE)
35*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x09, KEY_F9)
36*4882a593Smuzhiyun			MATRIX_KEY(0x01, 0x0b, KEY_BACKSPACE)
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x00, KEY_LEFTCTRL)
39*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x01, KEY_TAB)
40*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x02, KEY_F3)
41*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x03, KEY_T)
42*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x04, KEY_F6)
43*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x05, KEY_RIGHTBRACE)
44*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x06, KEY_Y)
45*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x07, KEY_102ND)
46*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x08, KEY_LEFTBRACE)
47*4882a593Smuzhiyun			MATRIX_KEY(0x02, 0x09, KEY_F8)
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x01, KEY_GRAVE)
50*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x02, KEY_F2)
51*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x03, KEY_5)
52*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x04, KEY_F5)
53*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x06, KEY_6)
54*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x08, KEY_MINUS)
55*4882a593Smuzhiyun			MATRIX_KEY(0x03, 0x0b, KEY_BACKSLASH)
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)
58*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x01, KEY_A)
59*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x02, KEY_D)
60*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x03, KEY_F)
61*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x04, KEY_S)
62*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x05, KEY_K)
63*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x06, KEY_J)
64*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x08, KEY_SEMICOLON)
65*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x09, KEY_L)
66*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x0a, KEY_BACKSLASH)
67*4882a593Smuzhiyun			MATRIX_KEY(0x04, 0x0b, KEY_ENTER)
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x01, KEY_Z)
70*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x02, KEY_C)
71*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x03, KEY_V)
72*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x04, KEY_X)
73*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x05, KEY_COMMA)
74*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x06, KEY_M)
75*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x07, KEY_LEFTSHIFT)
76*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x08, KEY_SLASH)
77*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x09, KEY_DOT)
78*4882a593Smuzhiyun			MATRIX_KEY(0x05, 0x0b, KEY_SPACE)
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x01, KEY_1)
81*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x02, KEY_3)
82*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x03, KEY_4)
83*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x04, KEY_2)
84*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x05, KEY_8)
85*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x06, KEY_7)
86*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x08, KEY_0)
87*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x09, KEY_9)
88*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x0a, KEY_LEFTALT)
89*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x0b, KEY_DOWN)
90*4882a593Smuzhiyun			MATRIX_KEY(0x06, 0x0c, KEY_RIGHT)
91*4882a593Smuzhiyun
92*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x01, KEY_Q)
93*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x02, KEY_E)
94*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x03, KEY_R)
95*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x04, KEY_W)
96*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x05, KEY_I)
97*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x06, KEY_U)
98*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x07, KEY_RIGHTSHIFT)
99*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x08, KEY_P)
100*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x09, KEY_O)
101*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x0b, KEY_UP)
102*4882a593Smuzhiyun			MATRIX_KEY(0x07, 0x0c, KEY_LEFT)
103*4882a593Smuzhiyun		>;
104*4882a593Smuzhiyun	};
105*4882a593Smuzhiyun};
106