xref: /linux/arch/arm/boot/dts/allwinner/sunxi-d1s-t113-mangopi-mq-r.dtsi (revision a23e1966932464e1c5226cb9ac4ce1d5fc10ba22)
1*79f74d4cSKrzysztof Kozlowski// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
220c5db6cSAndre Przywara// Copyright (C) 2022 Arm Ltd.
320c5db6cSAndre Przywara/*
420c5db6cSAndre Przywara * Common peripherals and configurations for MangoPi MQ-R boards.
520c5db6cSAndre Przywara */
620c5db6cSAndre Przywara
720c5db6cSAndre Przywara#include <dt-bindings/gpio/gpio.h>
820c5db6cSAndre Przywara#include <dt-bindings/leds/common.h>
920c5db6cSAndre Przywara
1020c5db6cSAndre Przywara/ {
1120c5db6cSAndre Przywara	aliases {
1220c5db6cSAndre Przywara		serial3 = &uart3;
1320c5db6cSAndre Przywara	};
1420c5db6cSAndre Przywara
1520c5db6cSAndre Przywara	chosen {
1620c5db6cSAndre Przywara		stdout-path = "serial3:115200n8";
1720c5db6cSAndre Przywara	};
1820c5db6cSAndre Przywara
1920c5db6cSAndre Przywara	leds {
2020c5db6cSAndre Przywara		compatible = "gpio-leds";
2120c5db6cSAndre Przywara
2220c5db6cSAndre Przywara		led-0 {
2320c5db6cSAndre Przywara			color = <LED_COLOR_ID_BLUE>;
2420c5db6cSAndre Przywara			function = LED_FUNCTION_STATUS;
2520c5db6cSAndre Przywara			gpios = <&pio 3 22 GPIO_ACTIVE_LOW>; /* PD22 */
2620c5db6cSAndre Przywara		};
2720c5db6cSAndre Przywara	};
2820c5db6cSAndre Przywara
2920c5db6cSAndre Przywara	/* board wide 5V supply directly from the USB-C socket */
3020c5db6cSAndre Przywara	reg_vcc5v: regulator-5v {
3120c5db6cSAndre Przywara		compatible = "regulator-fixed";
3220c5db6cSAndre Przywara		regulator-name = "vcc-5v";
3320c5db6cSAndre Przywara		regulator-min-microvolt = <5000000>;
3420c5db6cSAndre Przywara		regulator-max-microvolt = <5000000>;
3520c5db6cSAndre Przywara		regulator-always-on;
3620c5db6cSAndre Przywara	};
3720c5db6cSAndre Przywara
3820c5db6cSAndre Przywara	/* SY8008 DC/DC regulator on the board */
3920c5db6cSAndre Przywara	reg_3v3: regulator-3v3 {
4020c5db6cSAndre Przywara		compatible = "regulator-fixed";
4120c5db6cSAndre Przywara		regulator-name = "vcc-3v3";
4220c5db6cSAndre Przywara		regulator-min-microvolt = <3300000>;
4320c5db6cSAndre Przywara		regulator-max-microvolt = <3300000>;
4420c5db6cSAndre Przywara		vin-supply = <&reg_vcc5v>;
4520c5db6cSAndre Przywara	};
4620c5db6cSAndre Przywara
4720c5db6cSAndre Przywara	/* SY8008 DC/DC regulator on the board, also supplying VDD-SYS */
4820c5db6cSAndre Przywara	reg_vcc_core: regulator-core {
4920c5db6cSAndre Przywara		compatible = "regulator-fixed";
5020c5db6cSAndre Przywara		regulator-name = "vcc-core";
5120c5db6cSAndre Przywara		regulator-min-microvolt = <880000>;
5220c5db6cSAndre Przywara		regulator-max-microvolt = <880000>;
5320c5db6cSAndre Przywara		vin-supply = <&reg_vcc5v>;
5420c5db6cSAndre Przywara	};
5520c5db6cSAndre Przywara
5620c5db6cSAndre Przywara	/* XC6206 LDO on the board */
5720c5db6cSAndre Przywara	reg_avdd2v8: regulator-avdd {
5820c5db6cSAndre Przywara		compatible = "regulator-fixed";
5920c5db6cSAndre Przywara		regulator-name = "avdd2v8";
6020c5db6cSAndre Przywara		regulator-min-microvolt = <2800000>;
6120c5db6cSAndre Przywara		regulator-max-microvolt = <2800000>;
6220c5db6cSAndre Przywara		vin-supply = <&reg_3v3>;
6320c5db6cSAndre Przywara	};
6420c5db6cSAndre Przywara
6520c5db6cSAndre Przywara	wifi_pwrseq: wifi-pwrseq {
6620c5db6cSAndre Przywara		compatible = "mmc-pwrseq-simple";
6720c5db6cSAndre Przywara		reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */
6820c5db6cSAndre Przywara	};
6920c5db6cSAndre Przywara};
7020c5db6cSAndre Przywara
7120c5db6cSAndre Przywara&dcxo {
7220c5db6cSAndre Przywara	clock-frequency = <24000000>;
7320c5db6cSAndre Przywara};
7420c5db6cSAndre Przywara
7520c5db6cSAndre Przywara&ehci1 {
7620c5db6cSAndre Przywara	status = "okay";
7720c5db6cSAndre Przywara};
7820c5db6cSAndre Przywara
7920c5db6cSAndre Przywara&mmc0 {
8020c5db6cSAndre Przywara	pinctrl-0 = <&mmc0_pins>;
8120c5db6cSAndre Przywara	pinctrl-names = "default";
8220c5db6cSAndre Przywara	vmmc-supply = <&reg_3v3>;
8320c5db6cSAndre Przywara	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
8420c5db6cSAndre Przywara	disable-wp;
8520c5db6cSAndre Przywara	bus-width = <4>;
8620c5db6cSAndre Przywara	status = "okay";
8720c5db6cSAndre Przywara};
8820c5db6cSAndre Przywara
8920c5db6cSAndre Przywara&mmc1 {
9020c5db6cSAndre Przywara	pinctrl-0 = <&mmc1_pins>;
9120c5db6cSAndre Przywara	pinctrl-names = "default";
9220c5db6cSAndre Przywara	vmmc-supply = <&reg_3v3>;
9320c5db6cSAndre Przywara	non-removable;
9420c5db6cSAndre Przywara	bus-width = <4>;
9520c5db6cSAndre Przywara	mmc-pwrseq = <&wifi_pwrseq>;
9620c5db6cSAndre Przywara	status = "okay";
9720c5db6cSAndre Przywara};
9820c5db6cSAndre Przywara
9920c5db6cSAndre Przywara&ohci1 {
10020c5db6cSAndre Przywara	status = "okay";
10120c5db6cSAndre Przywara};
10220c5db6cSAndre Przywara
10320c5db6cSAndre Przywara&pio {
10420c5db6cSAndre Przywara	vcc-pb-supply = <&reg_3v3>;
10520c5db6cSAndre Przywara	vcc-pd-supply = <&reg_3v3>;
10620c5db6cSAndre Przywara	vcc-pe-supply = <&reg_avdd2v8>;
10720c5db6cSAndre Przywara	vcc-pf-supply = <&reg_3v3>;
10820c5db6cSAndre Przywara	vcc-pg-supply = <&reg_3v3>;
10920c5db6cSAndre Przywara};
11020c5db6cSAndre Przywara
11120c5db6cSAndre Przywara&uart3 {
11220c5db6cSAndre Przywara	pinctrl-names = "default";
11320c5db6cSAndre Przywara	pinctrl-0 = <&uart3_pb_pins>;
11420c5db6cSAndre Przywara	status = "okay";
11520c5db6cSAndre Przywara};
11620c5db6cSAndre Przywara
11720c5db6cSAndre Przywara/* The USB-C socket has its CC pins pulled to GND, so is hardwired as a UFP. */
11820c5db6cSAndre Przywara&usb_otg {
11920c5db6cSAndre Przywara	dr_mode = "peripheral";
12020c5db6cSAndre Przywara	status = "okay";
12120c5db6cSAndre Przywara};
12220c5db6cSAndre Przywara
12320c5db6cSAndre Przywara&usbphy {
12420c5db6cSAndre Przywara	usb1_vbus-supply = <&reg_vcc5v>;
12520c5db6cSAndre Przywara	status = "okay";
12620c5db6cSAndre Przywara};
127