1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2// Copyright (c) 2019 Jernej Skrabec <jernej.skrabec@siol.net> 3 4/dts-v1/; 5 6#include "sun50i-h6.dtsi" 7#include "sun50i-h6-cpu-opp.dtsi" 8 9#include <dt-bindings/gpio/gpio.h> 10 11/ { 12 aliases { 13 serial0 = &uart0; 14 }; 15 16 chosen { 17 stdout-path = "serial0:115200n8"; 18 }; 19 20 connector { 21 compatible = "hdmi-connector"; 22 ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */ 23 type = "a"; 24 25 port { 26 hdmi_con_in: endpoint { 27 remote-endpoint = <&hdmi_out_con>; 28 }; 29 }; 30 }; 31 32 /* used for FD650 LED display driver */ 33 i2c { 34 compatible = "i2c-gpio"; 35 sda-gpios = <&pio 7 6 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PH6 */ 36 scl-gpios = <&pio 7 5 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PH5 */ 37 i2c-gpio,delay-us = <5>; 38 }; 39 40 reg_vcc1v8: regulator-vcc1v8 { 41 compatible = "regulator-fixed"; 42 regulator-name = "vcc1v8"; 43 regulator-min-microvolt = <1800000>; 44 regulator-max-microvolt = <1800000>; 45 }; 46 47 reg_vcc3v3: regulator-vcc3v3 { 48 compatible = "regulator-fixed"; 49 regulator-name = "vcc3v3"; 50 regulator-min-microvolt = <3300000>; 51 regulator-max-microvolt = <3300000>; 52 }; 53 54 reg_vdd_cpu_gpu: regulator-vdd-cpu-gpu { 55 compatible = "regulator-fixed"; 56 regulator-name = "vdd-cpu-gpu"; 57 regulator-min-microvolt = <1135000>; 58 regulator-max-microvolt = <1135000>; 59 }; 60 61 sound-spdif { 62 compatible = "simple-audio-card"; 63 simple-audio-card,name = "sun50i-h6-spdif"; 64 65 simple-audio-card,cpu { 66 sound-dai = <&spdif>; 67 }; 68 69 simple-audio-card,codec { 70 sound-dai = <&spdif_out>; 71 }; 72 }; 73 74 spdif_out: spdif-out { 75 #sound-dai-cells = <0>; 76 compatible = "linux,spdif-dit"; 77 }; 78 79 wifi_pwrseq: wifi-pwrseq { 80 compatible = "mmc-pwrseq-simple"; 81 clocks = <&rtc CLK_OSC32K_FANOUT>; 82 clock-names = "ext_clock"; 83 reset-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; /* PM3 */ 84 }; 85}; 86 87&cpu0 { 88 cpu-supply = <®_vdd_cpu_gpu>; 89}; 90 91&de { 92 status = "okay"; 93}; 94 95&dwc3 { 96 status = "okay"; 97}; 98 99&ehci0 { 100 status = "okay"; 101}; 102 103&ehci3 { 104 status = "okay"; 105}; 106 107&gpu { 108 mali-supply = <®_vdd_cpu_gpu>; 109 status = "okay"; 110}; 111 112&hdmi { 113 status = "okay"; 114}; 115 116&hdmi_out { 117 hdmi_out_con: endpoint { 118 remote-endpoint = <&hdmi_con_in>; 119 }; 120}; 121 122&mmc0 { 123 pinctrl-names = "default"; 124 pinctrl-0 = <&mmc0_pins>; 125 vmmc-supply = <®_vcc3v3>; 126 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; 127 disable-wp; 128 bus-width = <4>; 129 status = "okay"; 130}; 131 132&mmc1 { 133 vmmc-supply = <®_vcc3v3>; 134 vqmmc-supply = <®_vcc1v8>; 135 mmc-pwrseq = <&wifi_pwrseq>; 136 bus-width = <4>; 137 non-removable; 138 status = "okay"; 139}; 140 141&mmc2 { 142 vmmc-supply = <®_vcc3v3>; 143 vqmmc-supply = <®_vcc1v8>; 144 bus-width = <8>; 145 non-removable; 146 cap-mmc-hw-reset; 147 mmc-hs200-1_8v; 148 status = "okay"; 149}; 150 151&ohci0 { 152 status = "okay"; 153}; 154 155&ohci3 { 156 status = "okay"; 157}; 158 159&pio { 160 vcc-pc-supply = <®_vcc1v8>; 161 vcc-pd-supply = <®_vcc3v3>; 162 vcc-pg-supply = <®_vcc1v8>; 163}; 164 165&r_ir { 166 status = "okay"; 167}; 168 169&spdif { 170 pinctrl-names = "default"; 171 pinctrl-0 = <&spdif_tx_pin>; 172 status = "okay"; 173}; 174 175&uart0 { 176 pinctrl-names = "default"; 177 pinctrl-0 = <&uart0_ph_pins>; 178 status = "okay"; 179}; 180 181&usb2otg { 182 dr_mode = "host"; 183 status = "okay"; 184}; 185 186&usb2phy { 187 status = "okay"; 188}; 189 190&usb3phy { 191 status = "okay"; 192}; 193