Commit 6efcbfe6 authored by Thierry Reding's avatar Thierry Reding
Browse files

Merge branch 'for-3.17/dt-cros-ec-kbd' into for-3.17/dt

parents b0b64f7b 1a395e3b
Loading
Loading
Loading
Loading
+105 −0
Original line number Diff line number Diff line
/*
 * Keyboard dts fragment for devices that use cros-ec-keyboard
 *
 * Copyright (c) 2014 Google, Inc
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
*/

#include <dt-bindings/input/input.h>

&cros_ec {
	keyboard-controller {
		compatible = "google,cros-ec-keyb";
		keypad,num-rows = <8>;
		keypad,num-columns = <13>;
		google,needs-ghost-filter;

		linux,keymap = <
			MATRIX_KEY(0x00, 0x01, KEY_LEFTMETA)
			MATRIX_KEY(0x00, 0x02, KEY_F1)
			MATRIX_KEY(0x00, 0x03, KEY_B)
			MATRIX_KEY(0x00, 0x04, KEY_F10)
			MATRIX_KEY(0x00, 0x06, KEY_N)
			MATRIX_KEY(0x00, 0x08, KEY_EQUAL)
			MATRIX_KEY(0x00, 0x0a, KEY_RIGHTALT)

			MATRIX_KEY(0x01, 0x01, KEY_ESC)
			MATRIX_KEY(0x01, 0x02, KEY_F4)
			MATRIX_KEY(0x01, 0x03, KEY_G)
			MATRIX_KEY(0x01, 0x04, KEY_F7)
			MATRIX_KEY(0x01, 0x06, KEY_H)
			MATRIX_KEY(0x01, 0x08, KEY_APOSTROPHE)
			MATRIX_KEY(0x01, 0x09, KEY_F9)
			MATRIX_KEY(0x01, 0x0b, KEY_BACKSPACE)

			MATRIX_KEY(0x02, 0x00, KEY_LEFTCTRL)
			MATRIX_KEY(0x02, 0x01, KEY_TAB)
			MATRIX_KEY(0x02, 0x02, KEY_F3)
			MATRIX_KEY(0x02, 0x03, KEY_T)
			MATRIX_KEY(0x02, 0x04, KEY_F6)
			MATRIX_KEY(0x02, 0x05, KEY_RIGHTBRACE)
			MATRIX_KEY(0x02, 0x06, KEY_Y)
			MATRIX_KEY(0x02, 0x07, KEY_102ND)
			MATRIX_KEY(0x02, 0x08, KEY_LEFTBRACE)
			MATRIX_KEY(0x02, 0x09, KEY_F8)

			MATRIX_KEY(0x03, 0x01, KEY_GRAVE)
			MATRIX_KEY(0x03, 0x02, KEY_F2)
			MATRIX_KEY(0x03, 0x03, KEY_5)
			MATRIX_KEY(0x03, 0x04, KEY_F5)
			MATRIX_KEY(0x03, 0x06, KEY_6)
			MATRIX_KEY(0x03, 0x08, KEY_MINUS)
			MATRIX_KEY(0x03, 0x0b, KEY_BACKSLASH)

			MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)
			MATRIX_KEY(0x04, 0x01, KEY_A)
			MATRIX_KEY(0x04, 0x02, KEY_D)
			MATRIX_KEY(0x04, 0x03, KEY_F)
			MATRIX_KEY(0x04, 0x04, KEY_S)
			MATRIX_KEY(0x04, 0x05, KEY_K)
			MATRIX_KEY(0x04, 0x06, KEY_J)
			MATRIX_KEY(0x04, 0x08, KEY_SEMICOLON)
			MATRIX_KEY(0x04, 0x09, KEY_L)
			MATRIX_KEY(0x04, 0x0a, KEY_BACKSLASH)
			MATRIX_KEY(0x04, 0x0b, KEY_ENTER)

			MATRIX_KEY(0x05, 0x01, KEY_Z)
			MATRIX_KEY(0x05, 0x02, KEY_C)
			MATRIX_KEY(0x05, 0x03, KEY_V)
			MATRIX_KEY(0x05, 0x04, KEY_X)
			MATRIX_KEY(0x05, 0x05, KEY_COMMA)
			MATRIX_KEY(0x05, 0x06, KEY_M)
			MATRIX_KEY(0x05, 0x07, KEY_LEFTSHIFT)
			MATRIX_KEY(0x05, 0x08, KEY_SLASH)
			MATRIX_KEY(0x05, 0x09, KEY_DOT)
			MATRIX_KEY(0x05, 0x0b, KEY_SPACE)

			MATRIX_KEY(0x06, 0x01, KEY_1)
			MATRIX_KEY(0x06, 0x02, KEY_3)
			MATRIX_KEY(0x06, 0x03, KEY_4)
			MATRIX_KEY(0x06, 0x04, KEY_2)
			MATRIX_KEY(0x06, 0x05, KEY_8)
			MATRIX_KEY(0x06, 0x06, KEY_7)
			MATRIX_KEY(0x06, 0x08, KEY_0)
			MATRIX_KEY(0x06, 0x09, KEY_9)
			MATRIX_KEY(0x06, 0x0a, KEY_LEFTALT)
			MATRIX_KEY(0x06, 0x0b, KEY_DOWN)
			MATRIX_KEY(0x06, 0x0c, KEY_RIGHT)

			MATRIX_KEY(0x07, 0x01, KEY_Q)
			MATRIX_KEY(0x07, 0x02, KEY_E)
			MATRIX_KEY(0x07, 0x03, KEY_R)
			MATRIX_KEY(0x07, 0x04, KEY_W)
			MATRIX_KEY(0x07, 0x05, KEY_I)
			MATRIX_KEY(0x07, 0x06, KEY_U)
			MATRIX_KEY(0x07, 0x07, KEY_RIGHTSHIFT)
			MATRIX_KEY(0x07, 0x08, KEY_P)
			MATRIX_KEY(0x07, 0x09, KEY_O)
			MATRIX_KEY(0x07, 0x0b, KEY_UP)
			MATRIX_KEY(0x07, 0x0c, KEY_LEFT)
		>;
	};
};
+3 −90
Original line number Diff line number Diff line
@@ -137,7 +137,7 @@
				sbs,poll-retry-count = <1>;
			};

			ec: embedded-controller {
			cros_ec: embedded-controller {
				compatible = "google,cros-ec-i2c";
				reg = <0x1e>;
				interrupts = <6 0>;
@@ -145,95 +145,6 @@
				pinctrl-names = "default";
				pinctrl-0 = <&ec_irq>;
				wakeup-source;

				keyboard-controller {
				        compatible = "google,cros-ec-keyb";
				        keypad,num-rows = <8>;
				        keypad,num-columns = <13>;
				        google,needs-ghost-filter;
					linux,keymap = <0x0001007d	/* L_META */
							0x0002003b	/* F1 */
							0x00030030	/* B */
							0x00040044	/* F10 */
							0x00060031	/* N */
							0x0008000d	/* = */
							0x000a0064	/* R_ALT */

							0x01010001	/* ESC */
							0x0102003e	/* F4 */
							0x01030022	/* G */
							0x01040041	/* F7 */
							0x01060023	/* H */
							0x01080028	/* ' */
							0x01090043	/* F9 */
							0x010b000e	/* BKSPACE */

							0x0200001d	/* L_CTRL */
							0x0201000f	/* TAB */
							0x0202003d	/* F3 */
							0x02030014	/* T */
							0x02040040	/* F6 */
							0x0205001b	/* ] */
							0x02060015	/* Y */
							0x02070056	/* 102ND */
							0x0208001a	/* [ */
							0x02090042	/* F8 */

							0x03010029	/* GRAVE */
							0x0302003c	/* F2 */
							0x03030006	/* 5 */
							0x0304003f	/* F5 */
							0x03060007	/* 6 */
							0x0308000c	/* - */
							0x030b002b	/* \ */

							0x04000061	/* R_CTRL */
							0x0401001e	/* A */
							0x04020020	/* D */
							0x04030021	/* F */
							0x0404001f	/* S */
							0x04050025	/* K */
							0x04060024	/* J */
							0x04080027	/* ; */
							0x04090026	/* L */
							0x040a002b	/* \ */
							0x040b001c	/* ENTER */

							0x0501002c	/* Z */
							0x0502002e	/* C */
							0x0503002f	/* V */
							0x0504002d	/* X */
							0x05050033	/* , */
							0x05060032	/* M */
							0x0507002a	/* L_SHIFT */
							0x05080035	/* / */
							0x05090034	/* . */
							0x050B0039	/* SPACE */

							0x06010002	/* 1 */
							0x06020004	/* 3 */
							0x06030005	/* 4 */
							0x06040003	/* 2 */
							0x06050009	/* 8 */
							0x06060008	/* 7 */
							0x0608000b	/* 0 */
							0x0609000a	/* 9 */
							0x060a0038	/* L_ALT */
							0x060b006c	/* DOWN */
							0x060c006a	/* RIGHT */

							0x07010010	/* Q */
							0x07020012	/* E */
							0x07030013	/* R */
							0x07040011	/* W */
							0x07050017	/* I */
							0x07060016	/* U */
							0x07070036	/* R_SHIFT */
							0x07080019	/* P */
							0x07090018	/* O */
							0x070b0067	/* UP */
							0x070c0069>;	/* LEFT */
				};
			};

			power-regulator {
@@ -431,3 +342,5 @@
		};
	};
};

#include "cros-ec-keyboard.dtsi"
+3 −93
Original line number Diff line number Diff line
@@ -816,7 +816,7 @@
	spi@0,7000d400 {
		status = "okay";

		cros-ec@0 {
		cros_ec: cros-ec@0 {
			compatible = "google,cros-ec-spi";
			spi-max-frequency = <4000000>;
			interrupt-parent = <&gpio>;
@@ -824,98 +824,6 @@
			reg = <0>;

			google,cros-ec-spi-msg-delay = <2000>;

			cros-ec-keyb {
				compatible = "google,cros-ec-keyb";
				keypad,num-rows = <8>;
				keypad,num-columns = <13>;
				google,needs-ghost-filter;

				linux,keymap = <
					MATRIX_KEY(0x00, 0x01, KEY_LEFTMETA)
					MATRIX_KEY(0x00, 0x02, KEY_F1)
					MATRIX_KEY(0x00, 0x03, KEY_B)
					MATRIX_KEY(0x00, 0x04, KEY_F10)
					MATRIX_KEY(0x00, 0x06, KEY_N)
					MATRIX_KEY(0x00, 0x08, KEY_EQUAL)
					MATRIX_KEY(0x00, 0x0a, KEY_RIGHTALT)

					MATRIX_KEY(0x01, 0x01, KEY_ESC)
					MATRIX_KEY(0x01, 0x02, KEY_F4)
					MATRIX_KEY(0x01, 0x03, KEY_G)
					MATRIX_KEY(0x01, 0x04, KEY_F7)
					MATRIX_KEY(0x01, 0x06, KEY_H)
					MATRIX_KEY(0x01, 0x08, KEY_APOSTROPHE)
					MATRIX_KEY(0x01, 0x09, KEY_F9)
					MATRIX_KEY(0x01, 0x0b, KEY_BACKSPACE)

					MATRIX_KEY(0x02, 0x00, KEY_LEFTCTRL)
					MATRIX_KEY(0x02, 0x01, KEY_TAB)
					MATRIX_KEY(0x02, 0x02, KEY_F3)
					MATRIX_KEY(0x02, 0x03, KEY_T)
					MATRIX_KEY(0x02, 0x04, KEY_F6)
					MATRIX_KEY(0x02, 0x05, KEY_RIGHTBRACE)
					MATRIX_KEY(0x02, 0x06, KEY_Y)
					MATRIX_KEY(0x02, 0x07, KEY_102ND)
					MATRIX_KEY(0x02, 0x08, KEY_LEFTBRACE)
					MATRIX_KEY(0x02, 0x09, KEY_F8)

					MATRIX_KEY(0x03, 0x01, KEY_GRAVE)
					MATRIX_KEY(0x03, 0x02, KEY_F2)
					MATRIX_KEY(0x03, 0x03, KEY_5)
					MATRIX_KEY(0x03, 0x04, KEY_F5)
					MATRIX_KEY(0x03, 0x06, KEY_6)
					MATRIX_KEY(0x03, 0x08, KEY_MINUS)
					MATRIX_KEY(0x03, 0x0b, KEY_BACKSLASH)

					MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)
					MATRIX_KEY(0x04, 0x01, KEY_A)
					MATRIX_KEY(0x04, 0x02, KEY_D)
					MATRIX_KEY(0x04, 0x03, KEY_F)
					MATRIX_KEY(0x04, 0x04, KEY_S)
					MATRIX_KEY(0x04, 0x05, KEY_K)
					MATRIX_KEY(0x04, 0x06, KEY_J)
					MATRIX_KEY(0x04, 0x08, KEY_SEMICOLON)
					MATRIX_KEY(0x04, 0x09, KEY_L)
					MATRIX_KEY(0x04, 0x0a, KEY_BACKSLASH)
					MATRIX_KEY(0x04, 0x0b, KEY_ENTER)

					MATRIX_KEY(0x05, 0x01, KEY_Z)
					MATRIX_KEY(0x05, 0x02, KEY_C)
					MATRIX_KEY(0x05, 0x03, KEY_V)
					MATRIX_KEY(0x05, 0x04, KEY_X)
					MATRIX_KEY(0x05, 0x05, KEY_COMMA)
					MATRIX_KEY(0x05, 0x06, KEY_M)
					MATRIX_KEY(0x05, 0x07, KEY_LEFTSHIFT)
					MATRIX_KEY(0x05, 0x08, KEY_SLASH)
					MATRIX_KEY(0x05, 0x09, KEY_DOT)
					MATRIX_KEY(0x05, 0x0b, KEY_SPACE)

					MATRIX_KEY(0x06, 0x01, KEY_1)
					MATRIX_KEY(0x06, 0x02, KEY_3)
					MATRIX_KEY(0x06, 0x03, KEY_4)
					MATRIX_KEY(0x06, 0x04, KEY_2)
					MATRIX_KEY(0x06, 0x05, KEY_8)
					MATRIX_KEY(0x06, 0x06, KEY_7)
					MATRIX_KEY(0x06, 0x08, KEY_0)
					MATRIX_KEY(0x06, 0x09, KEY_9)
					MATRIX_KEY(0x06, 0x0a, KEY_LEFTALT)
					MATRIX_KEY(0x06, 0x0b, KEY_DOWN)
					MATRIX_KEY(0x06, 0x0c, KEY_RIGHT)

					MATRIX_KEY(0x07, 0x01, KEY_Q)
					MATRIX_KEY(0x07, 0x02, KEY_E)
					MATRIX_KEY(0x07, 0x03, KEY_R)
					MATRIX_KEY(0x07, 0x04, KEY_W)
					MATRIX_KEY(0x07, 0x05, KEY_I)
					MATRIX_KEY(0x07, 0x06, KEY_U)
					MATRIX_KEY(0x07, 0x07, KEY_RIGHTSHIFT)
					MATRIX_KEY(0x07, 0x08, KEY_P)
					MATRIX_KEY(0x07, 0x09, KEY_O)
					MATRIX_KEY(0x07, 0x0b, KEY_UP)
					MATRIX_KEY(0x07, 0x0c, KEY_LEFT)
				>;
			};
		};
	};

@@ -1205,3 +1113,5 @@
		clock-names = "pll_a", "pll_a_out0", "mclk";
	};
};

#include "cros-ec-keyboard.dtsi"