blob: cc3f3e1b65ea984798845660fc70d198aba3df6d [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-only
2/dts-v1/;
3
Tom Rini93743d22024-04-01 09:08:13 -04004#include "motorola-mapphone-xt8xx.dtsi"
Tom Rini53633a82024-02-29 12:33:36 -05005
6/ {
Tom Rini93743d22024-04-01 09:08:13 -04007 model = "Motorola Droid 4 XT894";
8 compatible = "motorola,droid4", "ti,omap4430", "ti,omap4";
9
10 chosen {
11 stdout-path = &uart3;
12 };
13
14 aliases {
15 display0 = &lcd0;
16 display1 = &hdmi0;
17 };
18
Tom Rini53633a82024-02-29 12:33:36 -050019 gpio_keys {
20 compatible = "gpio-keys";
21
22 volume_down {
23 label = "Volume Down";
24 gpios = <&gpio5 26 GPIO_ACTIVE_LOW>; /* gpio154 */
25 linux,code = <KEY_VOLUMEDOWN>;
26 linux,can-disable;
27 /* Value above 7.95ms for no GPIO hardware debounce */
28 debounce-interval = <10>;
29 };
30
31 /*
32 * We use pad 0x4a100116 abe_dmic_din3.gpio_122 as the irq instead
33 * of the gpio interrupt to avoid lost events in deeper idle states.
34 */
35 slider {
36 label = "Keypad Slide";
37 interrupts-extended = <&omap4_pmx_core 0xd6>;
38 gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; /* gpio122 */
39 linux,input-type = <EV_SW>;
40 linux,code = <SW_KEYPAD_SLIDE>;
41 linux,can-disable;
42 /* Value above 7.95ms for no GPIO hardware debounce */
43 debounce-interval = <10>;
44 };
45 };
46};
47
Tom Rini53633a82024-02-29 12:33:36 -050048&keypad {
49 keypad,num-rows = <8>;
50 keypad,num-columns = <8>;
51 linux,keymap = <
52
53 /* Row 1 */
54 MATRIX_KEY(0, 2, KEY_1)
55 MATRIX_KEY(0, 6, KEY_2)
56 MATRIX_KEY(2, 3, KEY_3)
57 MATRIX_KEY(0, 7, KEY_4)
58 MATRIX_KEY(0, 4, KEY_5)
59 MATRIX_KEY(5, 5, KEY_6)
60 MATRIX_KEY(0, 1, KEY_7)
61 MATRIX_KEY(0, 5, KEY_8)
62 MATRIX_KEY(0, 0, KEY_9)
63 MATRIX_KEY(1, 6, KEY_0)
64
65 /* Row 2 */
66 MATRIX_KEY(3, 4, KEY_APOSTROPHE)
67 MATRIX_KEY(7, 6, KEY_Q)
68 MATRIX_KEY(7, 7, KEY_W)
69 MATRIX_KEY(7, 2, KEY_E)
70 MATRIX_KEY(1, 0, KEY_R)
71 MATRIX_KEY(4, 4, KEY_T)
72 MATRIX_KEY(1, 2, KEY_Y)
73 MATRIX_KEY(6, 7, KEY_U)
74 MATRIX_KEY(2, 2, KEY_I)
75 MATRIX_KEY(5, 6, KEY_O)
76 MATRIX_KEY(3, 7, KEY_P)
77 MATRIX_KEY(6, 5, KEY_BACKSPACE)
78
79 /* Row 3 */
80 MATRIX_KEY(5, 4, KEY_TAB)
81 MATRIX_KEY(5, 7, KEY_A)
82 MATRIX_KEY(2, 7, KEY_S)
83 MATRIX_KEY(7, 0, KEY_D)
84 MATRIX_KEY(2, 6, KEY_F)
85 MATRIX_KEY(6, 2, KEY_G)
86 MATRIX_KEY(6, 6, KEY_H)
87 MATRIX_KEY(1, 4, KEY_J)
88 MATRIX_KEY(3, 1, KEY_K)
89 MATRIX_KEY(2, 1, KEY_L)
90 MATRIX_KEY(4, 6, KEY_ENTER)
91
92 /* Row 4 */
93 MATRIX_KEY(3, 6, KEY_LEFTSHIFT) /* KEY_CAPSLOCK */
94 MATRIX_KEY(6, 1, KEY_Z)
95 MATRIX_KEY(7, 4, KEY_X)
96 MATRIX_KEY(5, 1, KEY_C)
97 MATRIX_KEY(1, 7, KEY_V)
98 MATRIX_KEY(2, 4, KEY_B)
99 MATRIX_KEY(4, 1, KEY_N)
100 MATRIX_KEY(1, 1, KEY_M)
101 MATRIX_KEY(3, 5, KEY_COMMA)
102 MATRIX_KEY(5, 2, KEY_DOT)
103 MATRIX_KEY(6, 3, KEY_UP)
104 MATRIX_KEY(7, 3, KEY_OK)
105
106 /* Row 5 */
107 MATRIX_KEY(2, 5, KEY_LEFTCTRL) /* KEY_LEFTSHIFT */
108 MATRIX_KEY(4, 5, KEY_LEFTALT) /* SYM */
109 MATRIX_KEY(6, 0, KEY_MINUS)
110 MATRIX_KEY(4, 7, KEY_EQUAL)
111 MATRIX_KEY(1, 5, KEY_SPACE)
112 MATRIX_KEY(3, 2, KEY_SLASH)
113 MATRIX_KEY(4, 3, KEY_LEFT)
114 MATRIX_KEY(5, 3, KEY_DOWN)
115 MATRIX_KEY(3, 3, KEY_RIGHT)
116
117 /* Side buttons, KEY_VOLUMEDOWN and KEY_PWER are on CPCAP? */
118 MATRIX_KEY(5, 0, KEY_VOLUMEUP)
119 >;
120};
121
122&i2c1 {
123 led-controller@38 {
124 compatible = "ti,lm3532";
125 #address-cells = <1>;
126 #size-cells = <0>;
127 reg = <0x38>;
128
129 enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>;
130
131 ramp-up-us = <1024>;
132 ramp-down-us = <8193>;
133
134 backlight_led: led@0 {
135 reg = <0>;
136 led-sources = <2>;
137 ti,led-mode = <0>;
138 label = ":backlight";
139 };
140
141 led@1 {
142 reg = <1>;
143 led-sources = <1>;
144 ti,led-mode = <0>;
145 label = ":kbd_backlight";
146 };
147 };
148};
149
150&i2c4 {
151 lis3dh: accelerometer@18 {
152 compatible = "st,lis3dh-accel";
153 reg = <0x18>;
154
155 vdd-supply = <&vhvio>;
156
157 interrupt-parent = <&gpio2>;
158 interrupts = <2 IRQ_TYPE_EDGE_BOTH>; /* gpio34 */
159
160 rotation-matrix = "0", "-1", "0",
161 "1", "0", "0",
162 "0", "0", "1";
163 };
164};