1*05c618f3SKrzysztof Kozlowski// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
22c1e6299SAndre Przywara/*
32c1e6299SAndre Przywara * Copyright (C) 2021 Arm Ltd.
42c1e6299SAndre Przywara */
52c1e6299SAndre Przywara
62c1e6299SAndre Przywara/dts-v1/;
72c1e6299SAndre Przywara
82c1e6299SAndre Przywara#include "sun50i-h616.dtsi"
92c1e6299SAndre Przywara
102c1e6299SAndre Przywara#include <dt-bindings/gpio/gpio.h>
112c1e6299SAndre Przywara#include <dt-bindings/interrupt-controller/arm-gic.h>
122c1e6299SAndre Przywara
132c1e6299SAndre Przywara/ {
142c1e6299SAndre Przywara	model = "X96 Mate";
152c1e6299SAndre Przywara	compatible = "hechuang,x96-mate", "allwinner,sun50i-h616";
162c1e6299SAndre Przywara
172c1e6299SAndre Przywara	aliases {
182c1e6299SAndre Przywara		serial0 = &uart0;
192c1e6299SAndre Przywara	};
202c1e6299SAndre Przywara
212c1e6299SAndre Przywara	chosen {
222c1e6299SAndre Przywara		stdout-path = "serial0:115200n8";
232c1e6299SAndre Przywara	};
242c1e6299SAndre Przywara
252c1e6299SAndre Przywara	reg_vcc5v: vcc5v {
262c1e6299SAndre Przywara		/* board wide 5V supply directly from the DC input */
272c1e6299SAndre Przywara		compatible = "regulator-fixed";
282c1e6299SAndre Przywara		regulator-name = "vcc-5v";
292c1e6299SAndre Przywara		regulator-min-microvolt = <5000000>;
302c1e6299SAndre Przywara		regulator-max-microvolt = <5000000>;
312c1e6299SAndre Przywara		regulator-always-on;
322c1e6299SAndre Przywara	};
332c1e6299SAndre Przywara};
342c1e6299SAndre Przywara
353dd14f78SAndre Przywara&ehci0 {
363dd14f78SAndre Przywara	status = "okay";
373dd14f78SAndre Przywara};
383dd14f78SAndre Przywara
393dd14f78SAndre Przywara&ehci2 {
403dd14f78SAndre Przywara	status = "okay";
413dd14f78SAndre Przywara};
423dd14f78SAndre Przywara
432c1e6299SAndre Przywara&ir {
442c1e6299SAndre Przywara	status = "okay";
452c1e6299SAndre Przywara};
462c1e6299SAndre Przywara
472c1e6299SAndre Przywara&mmc0 {
482c1e6299SAndre Przywara	vmmc-supply = <&reg_dcdce>;
492c1e6299SAndre Przywara	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;	/* PF6 */
502c1e6299SAndre Przywara	bus-width = <4>;
512c1e6299SAndre Przywara	status = "okay";
522c1e6299SAndre Przywara};
532c1e6299SAndre Przywara
542c1e6299SAndre Przywara&mmc2 {
552c1e6299SAndre Przywara	vmmc-supply = <&reg_dcdce>;
562c1e6299SAndre Przywara	vqmmc-supply = <&reg_bldo1>;
572c1e6299SAndre Przywara	bus-width = <8>;
582c1e6299SAndre Przywara	non-removable;
592c1e6299SAndre Przywara	cap-mmc-hw-reset;
602c1e6299SAndre Przywara	mmc-ddr-1_8v;
612c1e6299SAndre Przywara	mmc-hs200-1_8v;
622c1e6299SAndre Przywara	status = "okay";
632c1e6299SAndre Przywara};
642c1e6299SAndre Przywara
653dd14f78SAndre Przywara&ohci0 {
663dd14f78SAndre Przywara	status = "okay";
673dd14f78SAndre Przywara};
683dd14f78SAndre Przywara
693dd14f78SAndre Przywara&ohci2 {
703dd14f78SAndre Przywara	status = "okay";
713dd14f78SAndre Przywara};
723dd14f78SAndre Przywara
732c1e6299SAndre Przywara&r_rsb {
742c1e6299SAndre Przywara	status = "okay";
752c1e6299SAndre Przywara
762c1e6299SAndre Przywara	axp305: pmic@745 {
772c1e6299SAndre Przywara		compatible = "x-powers,axp305", "x-powers,axp805",
782c1e6299SAndre Przywara			     "x-powers,axp806";
792c1e6299SAndre Przywara		interrupt-controller;
802c1e6299SAndre Przywara		#interrupt-cells = <1>;
812c1e6299SAndre Przywara		reg = <0x745>;
822c1e6299SAndre Przywara
832c1e6299SAndre Przywara		x-powers,self-working-mode;
842c1e6299SAndre Przywara		vina-supply = <&reg_vcc5v>;
852c1e6299SAndre Przywara		vinb-supply = <&reg_vcc5v>;
862c1e6299SAndre Przywara		vinc-supply = <&reg_vcc5v>;
872c1e6299SAndre Przywara		vind-supply = <&reg_vcc5v>;
882c1e6299SAndre Przywara		vine-supply = <&reg_vcc5v>;
892c1e6299SAndre Przywara		aldoin-supply = <&reg_vcc5v>;
902c1e6299SAndre Przywara		bldoin-supply = <&reg_vcc5v>;
912c1e6299SAndre Przywara		cldoin-supply = <&reg_vcc5v>;
922c1e6299SAndre Przywara
932c1e6299SAndre Przywara		regulators {
942c1e6299SAndre Przywara			reg_aldo1: aldo1 {
952c1e6299SAndre Przywara				regulator-always-on;
962c1e6299SAndre Przywara				regulator-min-microvolt = <3300000>;
972c1e6299SAndre Przywara				regulator-max-microvolt = <3300000>;
982c1e6299SAndre Przywara				regulator-name = "vcc-sys";
992c1e6299SAndre Przywara			};
1002c1e6299SAndre Przywara
1012c1e6299SAndre Przywara			/* Enabled by the Android BSP */
1022c1e6299SAndre Przywara			reg_aldo2: aldo2 {
1032c1e6299SAndre Przywara				regulator-min-microvolt = <3300000>;
1042c1e6299SAndre Przywara				regulator-max-microvolt = <3300000>;
1052c1e6299SAndre Przywara				regulator-name = "vcc3v3-ext";
1062c1e6299SAndre Przywara				status = "disabled";
1072c1e6299SAndre Przywara			};
1082c1e6299SAndre Przywara
1092c1e6299SAndre Przywara			/* Enabled by the Android BSP */
1102c1e6299SAndre Przywara			reg_aldo3: aldo3 {
1112c1e6299SAndre Przywara				regulator-min-microvolt = <3300000>;
1122c1e6299SAndre Przywara				regulator-max-microvolt = <3300000>;
1132c1e6299SAndre Przywara				regulator-name = "vcc3v3-ext2";
1142c1e6299SAndre Przywara				status = "disabled";
1152c1e6299SAndre Przywara			};
1162c1e6299SAndre Przywara
1172c1e6299SAndre Przywara			reg_bldo1: bldo1 {
1182c1e6299SAndre Przywara				regulator-always-on;
1192c1e6299SAndre Przywara				regulator-min-microvolt = <1800000>;
1202c1e6299SAndre Przywara				regulator-max-microvolt = <1800000>;
1212c1e6299SAndre Przywara				regulator-name = "vcc1v8";
1222c1e6299SAndre Przywara			};
1232c1e6299SAndre Przywara
1242c1e6299SAndre Przywara			/* Enabled by the Android BSP */
1252c1e6299SAndre Przywara			reg_bldo2: bldo2 {
1262c1e6299SAndre Przywara				regulator-min-microvolt = <1800000>;
1272c1e6299SAndre Przywara				regulator-max-microvolt = <1800000>;
1282c1e6299SAndre Przywara				regulator-name = "vcc1v8-2";
1292c1e6299SAndre Przywara				status = "disabled";
1302c1e6299SAndre Przywara			};
1312c1e6299SAndre Przywara
1322c1e6299SAndre Przywara			bldo3 {
1332c1e6299SAndre Przywara				/* unused */
1342c1e6299SAndre Przywara			};
1352c1e6299SAndre Przywara
1362c1e6299SAndre Przywara			bldo4 {
1372c1e6299SAndre Przywara				/* unused */
1382c1e6299SAndre Przywara			};
1392c1e6299SAndre Przywara
1402c1e6299SAndre Przywara			cldo1 {
1412c1e6299SAndre Przywara				regulator-min-microvolt = <2500000>;
1422c1e6299SAndre Przywara				regulator-max-microvolt = <2500000>;
1432c1e6299SAndre Przywara				regulator-name = "vcc2v5";
1442c1e6299SAndre Przywara			};
1452c1e6299SAndre Przywara
1462c1e6299SAndre Przywara			cldo2 {
1472c1e6299SAndre Przywara				/* unused */
1482c1e6299SAndre Przywara			};
1492c1e6299SAndre Przywara
1502c1e6299SAndre Przywara			cldo3 {
1512c1e6299SAndre Przywara				/* unused */
1522c1e6299SAndre Przywara			};
1532c1e6299SAndre Przywara
1542c1e6299SAndre Przywara			reg_dcdca: dcdca {
1552c1e6299SAndre Przywara				regulator-always-on;
1562c1e6299SAndre Przywara				regulator-min-microvolt = <810000>;
1572c1e6299SAndre Przywara				regulator-max-microvolt = <1100000>;
1582c1e6299SAndre Przywara				regulator-name = "vdd-cpu";
1592c1e6299SAndre Przywara			};
1602c1e6299SAndre Przywara
1612c1e6299SAndre Przywara			reg_dcdcc: dcdcc {
1622c1e6299SAndre Przywara				regulator-always-on;
1632c1e6299SAndre Przywara				regulator-min-microvolt = <810000>;
1642c1e6299SAndre Przywara				regulator-max-microvolt = <990000>;
1652c1e6299SAndre Przywara				regulator-name = "vdd-gpu-sys";
1662c1e6299SAndre Przywara			};
1672c1e6299SAndre Przywara
1682c1e6299SAndre Przywara			reg_dcdcd: dcdcd {
1692c1e6299SAndre Przywara				regulator-always-on;
1702c1e6299SAndre Przywara				regulator-min-microvolt = <1360000>;
1712c1e6299SAndre Przywara				regulator-max-microvolt = <1360000>;
1722c1e6299SAndre Przywara				regulator-name = "vdd-dram";
1732c1e6299SAndre Przywara			};
1742c1e6299SAndre Przywara
1752c1e6299SAndre Przywara			reg_dcdce: dcdce {
1762c1e6299SAndre Przywara				regulator-always-on;
1772c1e6299SAndre Przywara				regulator-min-microvolt = <3300000>;
1782c1e6299SAndre Przywara				regulator-max-microvolt = <3300000>;
1792c1e6299SAndre Przywara				regulator-name = "vcc-eth-mmc";
1802c1e6299SAndre Przywara			};
1812c1e6299SAndre Przywara
1822c1e6299SAndre Przywara			sw {
1832c1e6299SAndre Przywara				/* unused */
1842c1e6299SAndre Przywara			};
1852c1e6299SAndre Przywara		};
1862c1e6299SAndre Przywara	};
1872c1e6299SAndre Przywara};
1882c1e6299SAndre Przywara
1892c1e6299SAndre Przywara&uart0 {
1902c1e6299SAndre Przywara	pinctrl-names = "default";
1912c1e6299SAndre Przywara	pinctrl-0 = <&uart0_ph_pins>;
1922c1e6299SAndre Przywara	status = "okay";
1932c1e6299SAndre Przywara};
1943dd14f78SAndre Przywara
1953dd14f78SAndre Przywara&usbotg {
1963dd14f78SAndre Przywara	dr_mode = "host";	/* USB A type receptable */
1973dd14f78SAndre Przywara	status = "okay";
1983dd14f78SAndre Przywara};
1993dd14f78SAndre Przywara
2003dd14f78SAndre Przywara&usbphy {
2013dd14f78SAndre Przywara	status = "okay";
2023dd14f78SAndre Przywara};
203