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