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