GNU Linux-libre 5.4.274-gnu1
[releases.git] / arch / arm / boot / dts / meson8b-mxq.dts
1 // SPDX-License-Identifier: GPL-2.0 OR MIT
2 /*
3  * Copyright 2015 Endless Mobile, Inc.
4  * Author: Carlo Caione <carlo@endlessm.com>
5  */
6
7 /dts-v1/;
8
9 #include <dt-bindings/gpio/gpio.h>
10
11 #include "meson8b.dtsi"
12
13 / {
14         model = "TRONFY MXQ S805";
15         compatible = "tronfy,mxq", "amlogic,meson8b";
16
17         aliases {
18                 serial0 = &uart_AO;
19         };
20
21         chosen {
22                 stdout-path = "serial0:115200n8";
23         };
24
25         memory {
26                 device_type = "memory";
27                 reg = <0x40000000 0x40000000>;
28         };
29
30         iio-hwmon {
31                 compatible = "iio-hwmon";
32                 io-channels = <&saradc 8>;
33         };
34
35         vcck: regulator-vcck {
36                 compatible = "pwm-regulator";
37
38                 regulator-name = "VCCK";
39                 regulator-min-microvolt = <860000>;
40                 regulator-max-microvolt = <1140000>;
41
42                 pwm-supply = <&vcc_5v>;
43
44                 pwms = <&pwm_cd 0 1148 0>;
45                 pwm-dutycycle-range = <100 0>;
46
47                 regulator-boot-on;
48                 regulator-always-on;
49         };
50
51         vcc_1v8: regulator-vcc1v8 {
52                 compatible = "regulator-fixed";
53
54                 regulator-name = "VCC1V8";
55                 regulator-min-microvolt = <1800000>;
56                 regulator-max-microvolt = <1800000>;
57
58                 vin-supply = <&vcc_3v3>;
59         };
60
61         vcc_3v3: regulator-vcc3v3 {
62                 compatible = "regulator-fixed";
63
64                 regulator-name = "VCC3V3";
65                 regulator-min-microvolt = <3300000>;
66                 regulator-max-microvolt = <3300000>;
67
68                 vin-supply = <&vcc_5v>;
69         };
70
71         vcc_5v: regulator-vcc5v {
72                 compatible = "regulator-fixed";
73
74                 regulator-name = "VCC5V";
75                 regulator-min-microvolt = <5000000>;
76                 regulator-max-microvolt = <5000000>;
77
78                 regulator-boot-on;
79                 regulator-always-on;
80         };
81
82         vddee: regulator-vddee {
83                 compatible = "pwm-regulator";
84
85                 regulator-name = "VDDEE";
86                 regulator-min-microvolt = <860000>;
87                 regulator-max-microvolt = <1140000>;
88
89                 pwm-supply = <&vcc_5v>;
90
91                 pwms = <&pwm_cd 1 1148 0>;
92                 pwm-dutycycle-range = <100 0>;
93
94                 regulator-boot-on;
95                 regulator-always-on;
96         };
97 };
98
99 &cpu0 {
100         cpu-supply = <&vcck>;
101 };
102
103 &ethmac {
104         status = "okay";
105
106         pinctrl-0 = <&eth_rmii_pins>;
107         pinctrl-names = "default";
108
109         phy-handle = <&eth_phy0>;
110         phy-mode = "rmii";
111
112         mdio {
113                 compatible = "snps,dwmac-mdio";
114                 #address-cells = <1>;
115                 #size-cells = <0>;
116
117                 eth_phy0: ethernet-phy@0 {
118                         /* IC Plus IP101A/G (0x02430c54) */
119                         reg = <0>;
120
121                         reset-assert-us = <10000>;
122                         reset-deassert-us = <10000>;
123                         reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
124
125                         icplus,select-interrupt;
126                         interrupt-parent = <&gpio_intc>;
127                         /* GPIOH_3 */
128                         interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
129                 };
130         };
131 };
132
133 &mali {
134         mali-supply = <&vddee>;
135 };
136
137 &saradc {
138         status = "okay";
139         vref-supply = <&vcc_1v8>;
140 };
141
142 &sdio {
143         status = "okay";
144
145         pinctrl-0 = <&sd_b_pins>;
146         pinctrl-names = "default";
147
148         /* SD card */
149         sd_card_slot: slot@1 {
150                 compatible = "mmc-slot";
151                 reg = <1>;
152                 status = "okay";
153
154                 bus-width = <4>;
155                 no-sdio;
156                 cap-mmc-highspeed;
157                 cap-sd-highspeed;
158                 disable-wp;
159
160                 cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
161
162                 vmmc-supply = <&vcc_3v3>;
163         };
164 };
165
166 &pwm_cd {
167         status = "okay";
168         pinctrl-0 = <&pwm_c1_pins>, <&pwm_d_pins>;
169         pinctrl-names = "default";
170         clocks = <&clkc CLKID_XTAL>, <&clkc CLKID_XTAL>;
171         clock-names = "clkin0", "clkin1";
172 };
173
174 &uart_AO {
175         status = "okay";
176         pinctrl-0 = <&uart_ao_a_pins>;
177         pinctrl-names = "default";
178 };
179
180 &usb0 {
181         status = "okay";
182 };
183
184 &usb0_phy {
185         status = "okay";
186 };
187
188 &usb1 {
189         status = "okay";
190 };
191
192 &usb1_phy {
193         status = "okay";
194 };