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