hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
....@@ -1,15 +1,12 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * Copyright 2013 Gateworks Corporation
3
- *
4
- * The code contained herein is licensed under the GNU General Public
5
- * License. You may obtain a copy of the GNU General Public License
6
- * Version 2 or later at the following locations:
7
- *
8
- * http://www.opensource.org/licenses/gpl-license.html
9
- * http://www.gnu.org/copyleft/gpl.html
104 */
115
126 #include <dt-bindings/gpio/gpio.h>
7
+#include <dt-bindings/input/linux-event-codes.h>
8
+#include <dt-bindings/interrupt-controller/irq.h>
9
+#include <dt-bindings/sound/fsl-imx-audmux.h>
1310
1411 / {
1512 /* these are used by bootloader for disabling nodes */
....@@ -32,6 +29,53 @@
3229 pwms = <&pwm4 0 5000000>;
3330 brightness-levels = <0 4 8 16 32 64 128 255>;
3431 default-brightness-level = <7>;
32
+ };
33
+
34
+ gpio-keys {
35
+ compatible = "gpio-keys";
36
+ #address-cells = <1>;
37
+ #size-cells = <0>;
38
+
39
+ user-pb {
40
+ label = "user_pb";
41
+ gpios = <&gsc_gpio 0 GPIO_ACTIVE_LOW>;
42
+ linux,code = <BTN_0>;
43
+ };
44
+
45
+ user-pb1x {
46
+ label = "user_pb1x";
47
+ linux,code = <BTN_1>;
48
+ interrupt-parent = <&gsc>;
49
+ interrupts = <0>;
50
+ };
51
+
52
+ key-erased {
53
+ label = "key-erased";
54
+ linux,code = <BTN_2>;
55
+ interrupt-parent = <&gsc>;
56
+ interrupts = <1>;
57
+ };
58
+
59
+ eeprom-wp {
60
+ label = "eeprom_wp";
61
+ linux,code = <BTN_3>;
62
+ interrupt-parent = <&gsc>;
63
+ interrupts = <2>;
64
+ };
65
+
66
+ tamper {
67
+ label = "tamper";
68
+ linux,code = <BTN_4>;
69
+ interrupt-parent = <&gsc>;
70
+ interrupts = <5>;
71
+ };
72
+
73
+ switch-hold {
74
+ label = "switch_hold";
75
+ linux,code = <BTN_5>;
76
+ interrupt-parent = <&gsc>;
77
+ interrupts = <7>;
78
+ };
3579 };
3680
3781 leds {
....@@ -60,6 +104,7 @@
60104 };
61105
62106 memory@10000000 {
107
+ device_type = "memory";
63108 reg = <0x10000000 0x40000000>;
64109 };
65110
....@@ -114,12 +159,12 @@
114159 };
115160 };
116161
117
- sound {
162
+ sound-analog {
118163 compatible = "fsl,imx6q-ventana-sgtl5000",
119164 "fsl,imx-audio-sgtl5000";
120165 model = "sgtl5000-audio";
121166 ssi-controller = <&ssi1>;
122
- audio-codec = <&codec>;
167
+ audio-codec = <&sgtl5000>;
123168 audio-routing =
124169 "MIC_IN", "Mic Jack",
125170 "Mic Jack", "Mic Bias",
....@@ -133,6 +178,25 @@
133178 pinctrl-names = "default";
134179 pinctrl-0 = <&pinctrl_audmux>; /* AUD4<->sgtl5000 */
135180 status = "okay";
181
+
182
+ ssi2 {
183
+ fsl,audmux-port = <1>;
184
+ fsl,port-config = <
185
+ (IMX_AUDMUX_V2_PTCR_TFSDIR |
186
+ IMX_AUDMUX_V2_PTCR_TFSEL(4+8) | /* RXFS */
187
+ IMX_AUDMUX_V2_PTCR_TCLKDIR |
188
+ IMX_AUDMUX_V2_PTCR_TCSEL(4+8) | /* RXC */
189
+ IMX_AUDMUX_V2_PTCR_SYN)
190
+ IMX_AUDMUX_V2_PDCR_RXDSEL(4)
191
+ >;
192
+ };
193
+
194
+ aud5 {
195
+ fsl,audmux-port = <4>;
196
+ fsl,port-config = <
197
+ IMX_AUDMUX_V2_PTCR_SYN
198
+ IMX_AUDMUX_V2_PDCR_RXDSEL(1)>;
199
+ };
136200 };
137201
138202 &can1 {
....@@ -149,7 +213,7 @@
149213 };
150214
151215 &ecspi2 {
152
- cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
216
+ cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
153217 pinctrl-names = "default";
154218 pinctrl-0 = <&pinctrl_ecspi2>;
155219 status = "okay";
....@@ -180,6 +244,117 @@
180244 pinctrl-0 = <&pinctrl_i2c1>;
181245 status = "okay";
182246
247
+ gsc: gsc@20 {
248
+ compatible = "gw,gsc";
249
+ reg = <0x20>;
250
+ interrupt-parent = <&gpio1>;
251
+ interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
252
+ interrupt-controller;
253
+ #interrupt-cells = <1>;
254
+ #address-cells = <1>;
255
+ #size-cells = <0>;
256
+
257
+ adc {
258
+ compatible = "gw,gsc-adc";
259
+ #address-cells = <1>;
260
+ #size-cells = <0>;
261
+
262
+ channel@0 {
263
+ gw,mode = <0>;
264
+ reg = <0x00>;
265
+ label = "temp";
266
+ };
267
+
268
+ channel@2 {
269
+ gw,mode = <1>;
270
+ reg = <0x02>;
271
+ label = "vdd_vin";
272
+ };
273
+
274
+ channel@5 {
275
+ gw,mode = <1>;
276
+ reg = <0x05>;
277
+ label = "vdd_3p3";
278
+ };
279
+
280
+ channel@8 {
281
+ gw,mode = <1>;
282
+ reg = <0x08>;
283
+ label = "vdd_bat";
284
+ };
285
+
286
+ channel@b {
287
+ gw,mode = <1>;
288
+ reg = <0x0b>;
289
+ label = "vdd_5p0";
290
+ };
291
+
292
+ channel@e {
293
+ gw,mode = <1>;
294
+ reg = <0xe>;
295
+ label = "vdd_arm";
296
+ };
297
+
298
+ channel@11 {
299
+ gw,mode = <1>;
300
+ reg = <0x11>;
301
+ label = "vdd_soc";
302
+ };
303
+
304
+ channel@14 {
305
+ gw,mode = <1>;
306
+ reg = <0x14>;
307
+ label = "vdd_3p0";
308
+ };
309
+
310
+ channel@17 {
311
+ gw,mode = <1>;
312
+ reg = <0x17>;
313
+ label = "vdd_1p5";
314
+ };
315
+
316
+ channel@1d {
317
+ gw,mode = <1>;
318
+ reg = <0x1d>;
319
+ label = "vdd_1p8";
320
+ };
321
+
322
+ channel@20 {
323
+ gw,mode = <1>;
324
+ reg = <0x20>;
325
+ label = "vdd_1p0";
326
+ };
327
+
328
+ channel@23 {
329
+ gw,mode = <1>;
330
+ reg = <0x23>;
331
+ label = "vdd_2p5";
332
+ };
333
+
334
+ channel@26 {
335
+ gw,mode = <1>;
336
+ reg = <0x26>;
337
+ label = "vdd_gps";
338
+ };
339
+ };
340
+
341
+ fan-controller@2c {
342
+ compatible = "gw,gsc-fan";
343
+ #address-cells = <1>;
344
+ #size-cells = <0>;
345
+ reg = <0x2c>;
346
+ };
347
+ };
348
+
349
+ gsc_gpio: gpio@23 {
350
+ compatible = "nxp,pca9555";
351
+ reg = <0x23>;
352
+ gpio-controller;
353
+ #gpio-cells = <2>;
354
+ interrupt-parent = <&gsc>;
355
+ interrupts = <4>;
356
+ };
357
+
183358 eeprom1: eeprom@50 {
184359 compatible = "atmel,24c02";
185360 reg = <0x50>;
....@@ -202,13 +377,6 @@
202377 compatible = "atmel,24c02";
203378 reg = <0x53>;
204379 pagesize = <16>;
205
- };
206
-
207
- gpio: pca9555@23 {
208
- compatible = "nxp,pca9555";
209
- reg = <0x23>;
210
- gpio-controller;
211
- #gpio-cells = <2>;
212380 };
213381
214382 rtc: ds1672@68 {
....@@ -331,7 +499,7 @@
331499 pinctrl-0 = <&pinctrl_i2c3>;
332500 status = "okay";
333501
334
- codec: sgtl5000@a {
502
+ sgtl5000: audio-codec@a {
335503 compatible = "fsl,sgtl5000";
336504 reg = <0x0a>;
337505 clocks = <&clks IMX6QDL_CLK_CKO>;
....@@ -345,6 +513,11 @@
345513 interrupt-parent = <&gpio7>;
346514 interrupts = <12 2>;
347515 wakeup-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
516
+ };
517
+
518
+ accel@1e {
519
+ compatible = "nxp,fxos8700";
520
+ reg = <0x1e>;
348521 };
349522 };
350523
....@@ -399,6 +572,7 @@
399572 };
400573
401574 &pwm4 {
575
+ #pwm-cells = <2>;
402576 pinctrl-names = "default", "state_dio";
403577 pinctrl-0 = <&pinctrl_pwm4_backlight>;
404578 pinctrl-1 = <&pinctrl_pwm4_dio>;
....@@ -475,6 +649,9 @@
475649 MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
476650 MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
477651 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0 /* AUD4_MCK */
652
+ MX6QDL_PAD_EIM_D25__AUD5_RXC 0x130b0
653
+ MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0
654
+ MX6QDL_PAD_EIM_D24__AUD5_RXFS 0x130b0
478655 >;
479656 };
480657
....@@ -548,6 +725,7 @@
548725 fsl,pins = <
549726 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
550727 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
728
+ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0xb0b1
551729 >;
552730 };
553731