blob: ccc2487d47ca9bdde04ca0f9d2f0492b6539ef4a [file] [log] [blame]
Sascha Hauer69144bd2014-01-19 10:28:12 +08001/*
2 * Copyright (C) 2013 Philipp Zabel
3 *
4 * This file is licensed under the terms of the GNU General Public License
5 * version 2. This program is licensed "as is" without any warranty of any
6 * kind, whether express or implied.
7 */
8
9/dts-v1/;
Dong Aisheng89c1a8cf2015-07-22 20:53:02 +080010#include <dt-bindings/gpio/gpio.h>
Fabio Estevam5630b1b2018-05-09 23:08:09 -030011#include <dt-bindings/input/input.h>
Sascha Hauer69144bd2014-01-19 10:28:12 +080012#include "imx6q.dtsi"
13
14/ {
15 model = "Zealz GK802";
16 compatible = "zealz,imx6q-gk802", "fsl,imx6q";
17
18 chosen {
Sascha Hauer48f51962014-05-07 15:19:00 +020019 stdout-path = &uart4;
Sascha Hauer69144bd2014-01-19 10:28:12 +080020 };
21
Marco Franchiad00e082018-01-24 11:22:14 -020022 memory@10000000 {
Marco Franchi404c0c92018-12-05 16:10:03 -020023 device_type = "memory";
Sascha Hauer69144bd2014-01-19 10:28:12 +080024 reg = <0x10000000 0x40000000>;
25 };
26
27 regulators {
28 compatible = "simple-bus";
29 #address-cells = <1>;
30 #size-cells = <0>;
31
32 reg_3p3v: regulator@0 {
33 compatible = "regulator-fixed";
34 reg = <0>;
35 regulator-name = "3P3V";
36 regulator-min-microvolt = <3300000>;
37 regulator-max-microvolt = <3300000>;
38 regulator-always-on;
39 };
40 };
41
42 gpio-keys {
43 compatible = "gpio-keys";
44
45 recovery-button {
46 label = "recovery";
47 gpios = <&gpio3 16 1>;
Fabio Estevam5630b1b2018-05-09 23:08:09 -030048 linux,code = <KEY_RESTART>;
Sudeep Holla26cefdd2015-10-21 11:10:08 +010049 wakeup-source;
Sascha Hauer69144bd2014-01-19 10:28:12 +080050 };
51 };
52};
53
Philipp Zabel126b4692014-04-16 23:23:50 +020054&hdmi {
55 ddc-i2c-bus = <&i2c3>;
56 status = "okay";
57};
58
Sascha Hauer69144bd2014-01-19 10:28:12 +080059/* Internal I2C */
60&i2c2 {
61 pinctrl-names = "default";
62 pinctrl-0 = <&pinctrl_i2c2>;
63 clock-frequency = <100000>;
64 status = "okay";
65
66 /* SDMC DM2016 1024 bit EEPROM + 128 bit OTP */
67 eeprom: dm2016@51 {
68 compatible = "sdmc,dm2016";
69 reg = <0x51>;
70 };
71};
72
73/* External I2C via HDMI */
74&i2c3 {
75 pinctrl-names = "default";
76 pinctrl-0 = <&pinctrl_i2c3>;
77 clock-frequency = <100000>;
78 status = "okay";
79};
80
81&iomuxc {
82 pinctrl-names = "default";
83 pinctrl-0 = <&pinctrl_hog>;
84
85 imx6q-gk802 {
86 pinctrl_hog: hoggrp {
87 fsl,pins = <
88 /* Recovery button, active-low */
89 MX6QDL_PAD_EIM_D16__GPIO3_IO16 0x100b1
90 /* RTL8192CU enable GPIO, active-low */
91 MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1b0b0
92 >;
93 };
94
95 pinctrl_i2c2: i2c2grp {
96 fsl,pins = <
97 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
98 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
99 >;
100 };
101
102 pinctrl_i2c3: i2c3grp {
103 fsl,pins = <
104 MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1
105 MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1
106 >;
107 };
108
109 pinctrl_uart4: uart4grp {
110 fsl,pins = <
111 MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
112 MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
113 >;
114 };
115
116 pinctrl_usdhc3: usdhc3grp {
117 fsl,pins = <
118 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
119 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
120 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
121 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
122 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
123 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
124 >;
125 };
126
127 pinctrl_usdhc4: usdhc4grp {
128 fsl,pins = <
129 MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
130 MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
131 MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
132 MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
133 MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
134 MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
135 >;
136 };
137 };
138};
139
140&uart2 {
141 status = "okay";
142};
143
144&uart4 {
145 pinctrl-names = "default";
146 pinctrl-0 = <&pinctrl_uart4>;
147 status = "okay";
148};
149
150/* External USB-A port (USBOTG) */
151&usbotg {
152 disable-over-current;
153 status = "okay";
154};
155
156/* Internal USB port (USBH1), connected to RTL8192CU */
157&usbh1 {
158 disable-over-current;
159 status = "okay";
160};
161
162/* External microSD */
163&usdhc3 {
164 pinctrl-names = "default";
165 pinctrl-0 = <&pinctrl_usdhc3>;
166 bus-width = <4>;
Dong Aisheng89c1a8cf2015-07-22 20:53:02 +0800167 cd-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
Sascha Hauer69144bd2014-01-19 10:28:12 +0800168 vmmc-supply = <&reg_3p3v>;
169 status = "okay";
170};
171
172/* Internal microSD */
173&usdhc4 {
174 pinctrl-names = "default";
175 pinctrl-0 = <&pinctrl_usdhc4>;
176 bus-width = <4>;
177 vmmc-supply = <&reg_3p3v>;
178 status = "okay";
179};