SPDX: Convert all of our multiple license tags to Linux Kernel style
[oweals/u-boot.git] / arch / arm / dts / meson-gxl-s905x-libretech-cc.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2017 BayLibre, SAS.
4  * Author: Neil Armstrong <narmstrong@baylibre.com>
5  * Author: Jerome Brunet <jbrunet@baylibre.com>
6  */
7
8 /dts-v1/;
9
10 #include <dt-bindings/input/input.h>
11
12 #include "meson-gxl-s905x.dtsi"
13
14 / {
15         compatible = "libretech,cc", "amlogic,s905x", "amlogic,meson-gxl";
16         model = "Libre Technology CC";
17
18         aliases {
19                 serial0 = &uart_AO;
20         };
21
22         chosen {
23                 stdout-path = "serial0:115200n8";
24         };
25
26         cvbs-connector {
27                 compatible = "composite-video-connector";
28
29                 port {
30                         cvbs_connector_in: endpoint {
31                                 remote-endpoint = <&cvbs_vdac_out>;
32                         };
33                 };
34         };
35
36         emmc_pwrseq: emmc-pwrseq {
37                 compatible = "mmc-pwrseq-emmc";
38                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
39         };
40
41         hdmi-connector {
42                 compatible = "hdmi-connector";
43                 type = "a";
44
45                 port {
46                         hdmi_connector_in: endpoint {
47                                 remote-endpoint = <&hdmi_tx_tmds_out>;
48                         };
49                 };
50         };
51
52         leds {
53                 compatible = "gpio-leds";
54
55                 system {
56                         label = "librecomputer:system-status";
57                         gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
58                         default-state = "on";
59                         panic-indicator;
60                 };
61
62                 blue {
63                         label = "librecomputer:blue";
64                         gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
65                         linux,default-trigger = "heartbeat";
66                 };
67         };
68
69         memory@0 {
70                 device_type = "memory";
71                 reg = <0x0 0x0 0x0 0x80000000>;
72         };
73
74         vcc_3v3: regulator-vcc_3v3 {
75                 compatible = "regulator-fixed";
76                 regulator-name = "VCC_3V3";
77                 regulator-min-microvolt = <3300000>;
78                 regulator-max-microvolt = <3300000>;
79         };
80
81         vcc_card: regulator-vcc-card {
82                 compatible = "regulator-gpio";
83
84                 regulator-name = "VCC_CARD";
85                 regulator-min-microvolt = <1800000>;
86                 regulator-max-microvolt = <3300000>;
87
88                 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
89                 gpios-states = <0>;
90
91                 states = <3300000 0>,
92                          <1800000 1>;
93         };
94
95         vddio_boot: regulator-vddio_boot {
96                 compatible = "regulator-fixed";
97                 regulator-name = "VDDIO_BOOT";
98                 regulator-min-microvolt = <3300000>;
99                 regulator-max-microvolt = <3300000>;
100         };
101 };
102
103 &cvbs_vdac_port {
104         cvbs_vdac_out: endpoint {
105                 remote-endpoint = <&cvbs_connector_in>;
106         };
107 };
108
109 &ethmac {
110         status = "okay";
111 };
112
113 &ir {
114         status = "okay";
115         pinctrl-0 = <&remote_input_ao_pins>;
116         pinctrl-names = "default";
117 };
118
119 &hdmi_tx {
120         status = "okay";
121         pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
122         pinctrl-names = "default";
123 };
124
125 &hdmi_tx_tmds_port {
126         hdmi_tx_tmds_out: endpoint {
127                 remote-endpoint = <&hdmi_connector_in>;
128         };
129 };
130
131 /* SD card */
132 &sd_emmc_b {
133         status = "okay";
134         pinctrl-0 = <&sdcard_pins>;
135         pinctrl-names = "default";
136
137         bus-width = <4>;
138         cap-sd-highspeed;
139         max-frequency = <100000000>;
140         disable-wp;
141
142         cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
143         cd-inverted;
144
145         vmmc-supply = <&vcc_3v3>;
146         vqmmc-supply = <&vcc_card>;
147 };
148
149 /* eMMC */
150 &sd_emmc_c {
151         status = "okay";
152         pinctrl-0 = <&emmc_pins>;
153         pinctrl-names = "default";
154
155         bus-width = <8>;
156         cap-mmc-highspeed;
157         max-frequency = <50000000>;
158         non-removable;
159         disable-wp;
160
161         mmc-pwrseq = <&emmc_pwrseq>;
162         vmmc-supply = <&vcc_3v3>;
163         vqmmc-supply = <&vddio_boot>;
164 };
165
166 &uart_AO {
167         status = "okay";
168         pinctrl-0 = <&uart_ao_a_pins>;
169         pinctrl-names = "default";
170 };