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 bus-width = <4>; 128 status = "okay"; 129}; 130 131&mmc1 { 132 vmmc-supply = <®_vcc3v3>; 133 vqmmc-supply = <®_vcc1v8>; 134 mmc-pwrseq = <&wifi_pwrseq>; 135 bus-width = <4>; 136 non-removable; 137 status = "okay"; 138}; 139 140&mmc2 { 141 vmmc-supply = <®_vcc3v3>; 142 vqmmc-supply = <®_vcc1v8>; 143 bus-width = <8>; 144 non-removable; 145 cap-mmc-hw-reset; 146 mmc-hs200-1_8v; 147 status = "okay"; 148}; 149 150&ohci0 { 151 status = "okay"; 152}; 153 154&ohci3 { 155 status = "okay"; 156}; 157 158&pio { 159 vcc-pc-supply = <®_vcc1v8>; 160 vcc-pd-supply = <®_vcc3v3>; 161 vcc-pg-supply = <®_vcc1v8>; 162}; 163 164&r_ir { 165 status = "okay"; 166}; 167 168&spdif { 169 pinctrl-names = "default"; 170 pinctrl-0 = <&spdif_tx_pin>; 171 status = "okay"; 172}; 173 174&uart0 { 175 pinctrl-names = "default"; 176 pinctrl-0 = <&uart0_ph_pins>; 177 status = "okay"; 178}; 179 180&usb2otg { 181 dr_mode = "host"; 182 status = "okay"; 183}; 184 185&usb2phy { 186 status = "okay"; 187}; 188 189&usb3phy { 190 status = "okay"; 191}; 192