xref: /linux/scripts/dtc/include-prefixes/arm64/mediatek/mt8395-radxa-nio-12l.dts (revision 32b33be8894f3389d15b409140d663acbdf9de1d)
196564b1eSAngeloGioacchino Del Regno// SPDX-License-Identifier: (GPL-2.0 OR MIT)
296564b1eSAngeloGioacchino Del Regno/*
396564b1eSAngeloGioacchino Del Regno * Copyright (C) 2023 Radxa Limited
496564b1eSAngeloGioacchino Del Regno * Copyright (C) 2024 Collabora Ltd.
596564b1eSAngeloGioacchino Del Regno *                    AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
696564b1eSAngeloGioacchino Del Regno */
796564b1eSAngeloGioacchino Del Regno
896564b1eSAngeloGioacchino Del Regno#include "mt8195.dtsi"
996564b1eSAngeloGioacchino Del Regno#include "mt6359.dtsi"
1096564b1eSAngeloGioacchino Del Regno#include <dt-bindings/gpio/gpio.h>
1196564b1eSAngeloGioacchino Del Regno#include <dt-bindings/interrupt-controller/irq.h>
1296564b1eSAngeloGioacchino Del Regno#include <dt-bindings/pinctrl/mt8195-pinfunc.h>
1396564b1eSAngeloGioacchino Del Regno#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
1496564b1eSAngeloGioacchino Del Regno#include <dt-bindings/spmi/spmi.h>
1596564b1eSAngeloGioacchino Del Regno#include <dt-bindings/usb/pd.h>
1696564b1eSAngeloGioacchino Del Regno
1796564b1eSAngeloGioacchino Del Regno/ {
1896564b1eSAngeloGioacchino Del Regno	model = "Radxa NIO 12L";
1996564b1eSAngeloGioacchino Del Regno	chassis-type = "embedded";
2096564b1eSAngeloGioacchino Del Regno	compatible = "radxa,nio-12l", "mediatek,mt8395", "mediatek,mt8195";
2196564b1eSAngeloGioacchino Del Regno
2296564b1eSAngeloGioacchino Del Regno	aliases {
2396564b1eSAngeloGioacchino Del Regno		i2c0 = &i2c2;
2496564b1eSAngeloGioacchino Del Regno		i2c1 = &i2c3;
2596564b1eSAngeloGioacchino Del Regno		i2c2 = &i2c4;
2696564b1eSAngeloGioacchino Del Regno		i2c3 = &i2c0;
2796564b1eSAngeloGioacchino Del Regno		i2c4 = &i2c1;
2896564b1eSAngeloGioacchino Del Regno		ethernet0 = &eth;
2996564b1eSAngeloGioacchino Del Regno		serial0 = &uart0;
3096564b1eSAngeloGioacchino Del Regno		serial1 = &uart1;
3196564b1eSAngeloGioacchino Del Regno		spi0 = &spi1;
3296564b1eSAngeloGioacchino Del Regno		spi1 = &spi2;
3396564b1eSAngeloGioacchino Del Regno	};
3496564b1eSAngeloGioacchino Del Regno
3596564b1eSAngeloGioacchino Del Regno	chosen {
3696564b1eSAngeloGioacchino Del Regno		stdout-path = "serial0:921600n8";
3796564b1eSAngeloGioacchino Del Regno	};
3896564b1eSAngeloGioacchino Del Regno
3996564b1eSAngeloGioacchino Del Regno	firmware {
4096564b1eSAngeloGioacchino Del Regno		optee {
4196564b1eSAngeloGioacchino Del Regno			compatible = "linaro,optee-tz";
4296564b1eSAngeloGioacchino Del Regno			method = "smc";
4396564b1eSAngeloGioacchino Del Regno		};
4496564b1eSAngeloGioacchino Del Regno	};
4596564b1eSAngeloGioacchino Del Regno
4696564b1eSAngeloGioacchino Del Regno	memory@40000000 {
4796564b1eSAngeloGioacchino Del Regno		device_type = "memory";
4896564b1eSAngeloGioacchino Del Regno		reg = <0 0x40000000 0x1 0x0>;
4996564b1eSAngeloGioacchino Del Regno	};
5096564b1eSAngeloGioacchino Del Regno
5196564b1eSAngeloGioacchino Del Regno	wifi_vreg: regulator-wifi-3v3-en {
5296564b1eSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
5396564b1eSAngeloGioacchino Del Regno		regulator-name = "wifi_3v3_en";
5496564b1eSAngeloGioacchino Del Regno		regulator-always-on;
5596564b1eSAngeloGioacchino Del Regno		regulator-min-microvolt = <3300000>;
5696564b1eSAngeloGioacchino Del Regno		regulator-max-microvolt = <3300000>;
5796564b1eSAngeloGioacchino Del Regno		enable-active-high;
5896564b1eSAngeloGioacchino Del Regno		gpio = <&pio 67 GPIO_ACTIVE_HIGH>;
5996564b1eSAngeloGioacchino Del Regno		pinctrl-names = "default";
6096564b1eSAngeloGioacchino Del Regno		pinctrl-0 = <&wifi_vreg_pins>;
6196564b1eSAngeloGioacchino Del Regno		vin-supply = <&vsys>;
6296564b1eSAngeloGioacchino Del Regno	};
6396564b1eSAngeloGioacchino Del Regno
6496564b1eSAngeloGioacchino Del Regno	/* system wide switching 5.0V power rail */
6596564b1eSAngeloGioacchino Del Regno	vsys: regulator-vsys {
6696564b1eSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
6796564b1eSAngeloGioacchino Del Regno		regulator-name = "vsys";
6896564b1eSAngeloGioacchino Del Regno		regulator-always-on;
6996564b1eSAngeloGioacchino Del Regno		regulator-boot-on;
7096564b1eSAngeloGioacchino Del Regno		regulator-min-microvolt = <5000000>;
7196564b1eSAngeloGioacchino Del Regno		regulator-max-microvolt = <5000000>;
7296564b1eSAngeloGioacchino Del Regno		vin-supply = <&vcc5v0_vsys>;
7396564b1eSAngeloGioacchino Del Regno	};
7496564b1eSAngeloGioacchino Del Regno
7596564b1eSAngeloGioacchino Del Regno	vsys_buck: regulator-vsys-buck {
7696564b1eSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
7796564b1eSAngeloGioacchino Del Regno		regulator-name = "vsys_buck";
7896564b1eSAngeloGioacchino Del Regno		regulator-always-on;
7996564b1eSAngeloGioacchino Del Regno		regulator-boot-on;
8096564b1eSAngeloGioacchino Del Regno		regulator-min-microvolt = <5000000>;
8196564b1eSAngeloGioacchino Del Regno		regulator-max-microvolt = <5000000>;
8296564b1eSAngeloGioacchino Del Regno		vin-supply = <&vcc5v0_vsys>;
8396564b1eSAngeloGioacchino Del Regno	};
8496564b1eSAngeloGioacchino Del Regno
8596564b1eSAngeloGioacchino Del Regno	/* Rail from power-only "TYPE C DC" port */
8696564b1eSAngeloGioacchino Del Regno	vcc5v0_vsys: regulator-vcc5v0-sys {
8796564b1eSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
8896564b1eSAngeloGioacchino Del Regno		regulator-name = "vcc5v0_sys";
8996564b1eSAngeloGioacchino Del Regno		regulator-always-on;
9096564b1eSAngeloGioacchino Del Regno		regulator-boot-on;
9196564b1eSAngeloGioacchino Del Regno	};
9296564b1eSAngeloGioacchino Del Regno
9396564b1eSAngeloGioacchino Del Regno	reserved-memory {
9496564b1eSAngeloGioacchino Del Regno		#address-cells = <2>;
9596564b1eSAngeloGioacchino Del Regno		#size-cells = <2>;
9696564b1eSAngeloGioacchino Del Regno		ranges;
9796564b1eSAngeloGioacchino Del Regno
9896564b1eSAngeloGioacchino Del Regno		/*
9996564b1eSAngeloGioacchino Del Regno		 * 12 MiB reserved for OP-TEE (BL32)
10096564b1eSAngeloGioacchino Del Regno		 * +-----------------------+ 0x43e0_0000
10196564b1eSAngeloGioacchino Del Regno		 * |      SHMEM 2MiB       |
10296564b1eSAngeloGioacchino Del Regno		 * +-----------------------+ 0x43c0_0000
10396564b1eSAngeloGioacchino Del Regno		 * |        | TA_RAM  8MiB |
10496564b1eSAngeloGioacchino Del Regno		 * + TZDRAM +--------------+ 0x4340_0000
10596564b1eSAngeloGioacchino Del Regno		 * |        | TEE_RAM 2MiB |
10696564b1eSAngeloGioacchino Del Regno		 * +-----------------------+ 0x4320_0000
10796564b1eSAngeloGioacchino Del Regno		 */
10896564b1eSAngeloGioacchino Del Regno		optee_reserved: optee@43200000 {
10996564b1eSAngeloGioacchino Del Regno			reg = <0 0x43200000 0 0xc00000>;
11096564b1eSAngeloGioacchino Del Regno			no-map;
11196564b1eSAngeloGioacchino Del Regno		};
11296564b1eSAngeloGioacchino Del Regno
11396564b1eSAngeloGioacchino Del Regno		scp_mem: memory@50000000 {
11496564b1eSAngeloGioacchino Del Regno			compatible = "shared-dma-pool";
11596564b1eSAngeloGioacchino Del Regno			reg = <0 0x50000000 0 0x2900000>;
11696564b1eSAngeloGioacchino Del Regno			no-map;
11796564b1eSAngeloGioacchino Del Regno		};
11896564b1eSAngeloGioacchino Del Regno
11996564b1eSAngeloGioacchino Del Regno		vpu_mem: memory@53000000 {
12096564b1eSAngeloGioacchino Del Regno			compatible = "shared-dma-pool";
12196564b1eSAngeloGioacchino Del Regno			reg = <0 0x53000000 0 0x1400000>; /* 20 MB */
12296564b1eSAngeloGioacchino Del Regno		};
12396564b1eSAngeloGioacchino Del Regno
12496564b1eSAngeloGioacchino Del Regno		/* 2 MiB reserved for ARM Trusted Firmware (BL31) */
12596564b1eSAngeloGioacchino Del Regno		bl31_secmon_mem: memory@54600000 {
12696564b1eSAngeloGioacchino Del Regno			reg = <0 0x54600000 0x0 0x200000>;
12796564b1eSAngeloGioacchino Del Regno			no-map;
12896564b1eSAngeloGioacchino Del Regno		};
12996564b1eSAngeloGioacchino Del Regno
13096564b1eSAngeloGioacchino Del Regno		afe_mem: memory@60000000 {
13196564b1eSAngeloGioacchino Del Regno			compatible = "shared-dma-pool";
13296564b1eSAngeloGioacchino Del Regno			reg = <0 0x60000000 0 0x1100000>;
13396564b1eSAngeloGioacchino Del Regno			no-map;
13496564b1eSAngeloGioacchino Del Regno		};
13596564b1eSAngeloGioacchino Del Regno
13696564b1eSAngeloGioacchino Del Regno		apu_mem: memory@62000000 {
13796564b1eSAngeloGioacchino Del Regno			compatible = "shared-dma-pool";
13896564b1eSAngeloGioacchino Del Regno			reg = <0 0x62000000 0 0x1400000>; /* 20 MB */
13996564b1eSAngeloGioacchino Del Regno		};
14096564b1eSAngeloGioacchino Del Regno	};
14196564b1eSAngeloGioacchino Del Regno};
14296564b1eSAngeloGioacchino Del Regno
14396564b1eSAngeloGioacchino Del Regno&eth {
14496564b1eSAngeloGioacchino Del Regno	phy-mode = "rgmii-rxid";
14596564b1eSAngeloGioacchino Del Regno	phy-handle = <&rgmii_phy>;
14696564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default", "sleep";
14796564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&eth_default_pins>;
14896564b1eSAngeloGioacchino Del Regno	pinctrl-1 = <&eth_sleep_pins>;
14996564b1eSAngeloGioacchino Del Regno	mediatek,tx-delay-ps = <2030>;
15096564b1eSAngeloGioacchino Del Regno	mediatek,mac-wol;
15196564b1eSAngeloGioacchino Del Regno	snps,reset-gpio = <&pio 93 GPIO_ACTIVE_HIGH>;
15296564b1eSAngeloGioacchino Del Regno	snps,reset-delays-us = <0 20000 100000>;
15396564b1eSAngeloGioacchino Del Regno	status = "okay";
15496564b1eSAngeloGioacchino Del Regno
15596564b1eSAngeloGioacchino Del Regno	mdio {
15696564b1eSAngeloGioacchino Del Regno		rgmii_phy: ethernet-phy@1 {
15796564b1eSAngeloGioacchino Del Regno			compatible = "ethernet-phy-id001c.c916";
15896564b1eSAngeloGioacchino Del Regno			reg = <0x1>;
15996564b1eSAngeloGioacchino Del Regno		};
16096564b1eSAngeloGioacchino Del Regno	};
16196564b1eSAngeloGioacchino Del Regno};
16296564b1eSAngeloGioacchino Del Regno
16396564b1eSAngeloGioacchino Del Regno&gpu {
16496564b1eSAngeloGioacchino Del Regno	mali-supply = <&mt6315_7_vbuck1>;
16596564b1eSAngeloGioacchino Del Regno	status = "okay";
16696564b1eSAngeloGioacchino Del Regno};
16796564b1eSAngeloGioacchino Del Regno
16896564b1eSAngeloGioacchino Del Regno&i2c2 {
16996564b1eSAngeloGioacchino Del Regno	clock-frequency = <400000>;
17096564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&i2c2_pins>;
17196564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
17296564b1eSAngeloGioacchino Del Regno	status = "okay";
17396564b1eSAngeloGioacchino Del Regno
17496564b1eSAngeloGioacchino Del Regno	typec-mux@48 {
17596564b1eSAngeloGioacchino Del Regno		compatible = "ite,it5205";
17696564b1eSAngeloGioacchino Del Regno		reg = <0x48>;
17796564b1eSAngeloGioacchino Del Regno
17896564b1eSAngeloGioacchino Del Regno		mode-switch;
17996564b1eSAngeloGioacchino Del Regno		orientation-switch;
18096564b1eSAngeloGioacchino Del Regno
18196564b1eSAngeloGioacchino Del Regno		vcc-supply = <&mt6359_vibr_ldo_reg>;
18296564b1eSAngeloGioacchino Del Regno
18396564b1eSAngeloGioacchino Del Regno		port {
18496564b1eSAngeloGioacchino Del Regno			it5205_sbu_mux: endpoint {
18596564b1eSAngeloGioacchino Del Regno				remote-endpoint = <&typec_con_mux>;
18696564b1eSAngeloGioacchino Del Regno			};
18796564b1eSAngeloGioacchino Del Regno		};
18896564b1eSAngeloGioacchino Del Regno	};
18996564b1eSAngeloGioacchino Del Regno};
19096564b1eSAngeloGioacchino Del Regno
19196564b1eSAngeloGioacchino Del Regno&i2c4 {
19296564b1eSAngeloGioacchino Del Regno	clock-frequency = <400000>;
19396564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&i2c4_pins>;
19496564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
19596564b1eSAngeloGioacchino Del Regno	status = "okay";
19696564b1eSAngeloGioacchino Del Regno
19796564b1eSAngeloGioacchino Del Regno	/* I2C4 exposed at 39-pins MIPI-LCD connector */
19896564b1eSAngeloGioacchino Del Regno};
19996564b1eSAngeloGioacchino Del Regno
20096564b1eSAngeloGioacchino Del Regno&i2c6 {
20196564b1eSAngeloGioacchino Del Regno	clock-frequency = <400000>;
20296564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&i2c6_pins>;
20396564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
20496564b1eSAngeloGioacchino Del Regno	status = "okay";
20596564b1eSAngeloGioacchino Del Regno
20696564b1eSAngeloGioacchino Del Regno	mt6360: pmic@34 {
20796564b1eSAngeloGioacchino Del Regno		compatible = "mediatek,mt6360";
20896564b1eSAngeloGioacchino Del Regno		reg = <0x34>;
20996564b1eSAngeloGioacchino Del Regno		interrupts-extended = <&pio 101 IRQ_TYPE_EDGE_FALLING>;
21096564b1eSAngeloGioacchino Del Regno		interrupt-names = "IRQB";
21196564b1eSAngeloGioacchino Del Regno		interrupt-controller;
21296564b1eSAngeloGioacchino Del Regno		#interrupt-cells = <1>;
21396564b1eSAngeloGioacchino Del Regno		pinctrl-0 = <&mt6360_pins>;
21496564b1eSAngeloGioacchino Del Regno
21596564b1eSAngeloGioacchino Del Regno		charger {
21696564b1eSAngeloGioacchino Del Regno			compatible = "mediatek,mt6360-chg";
21796564b1eSAngeloGioacchino Del Regno			richtek,vinovp-microvolt = <14500000>;
21896564b1eSAngeloGioacchino Del Regno
21996564b1eSAngeloGioacchino Del Regno			otg_vbus_regulator: usb-otg-vbus-regulator {
22096564b1eSAngeloGioacchino Del Regno				regulator-name = "usb-otg-vbus";
22196564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <4425000>;
22296564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <5825000>;
22396564b1eSAngeloGioacchino Del Regno			};
22496564b1eSAngeloGioacchino Del Regno		};
22596564b1eSAngeloGioacchino Del Regno
22696564b1eSAngeloGioacchino Del Regno		regulator {
22796564b1eSAngeloGioacchino Del Regno			compatible = "mediatek,mt6360-regulator";
22896564b1eSAngeloGioacchino Del Regno			LDO_VIN1-supply = <&vsys_buck>;
22996564b1eSAngeloGioacchino Del Regno			LDO_VIN3-supply = <&mt6360_buck2>;
23096564b1eSAngeloGioacchino Del Regno
23196564b1eSAngeloGioacchino Del Regno			mt6360_buck1: buck1 {
23296564b1eSAngeloGioacchino Del Regno				regulator-name = "emi_vdd2";
23396564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <300000>;
23496564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <1300000>;
23596564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
23696564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP
23796564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_ULP>;
23896564b1eSAngeloGioacchino Del Regno				regulator-always-on;
23996564b1eSAngeloGioacchino Del Regno			};
24096564b1eSAngeloGioacchino Del Regno
24196564b1eSAngeloGioacchino Del Regno			mt6360_buck2: buck2 {
24296564b1eSAngeloGioacchino Del Regno				regulator-name = "emi_vddq";
24396564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <300000>;
24496564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <1300000>;
24596564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
24696564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP
24796564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_ULP>;
24896564b1eSAngeloGioacchino Del Regno				regulator-always-on;
24996564b1eSAngeloGioacchino Del Regno			};
25096564b1eSAngeloGioacchino Del Regno
25196564b1eSAngeloGioacchino Del Regno			mt6360_ldo1: ldo1 {
25296564b1eSAngeloGioacchino Del Regno				regulator-name = "ext_lcd_3v3";
25396564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <3300000>;
25496564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <3300000>;
25596564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
25696564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
25796564b1eSAngeloGioacchino Del Regno				regulator-always-on;
25896564b1eSAngeloGioacchino Del Regno			};
25996564b1eSAngeloGioacchino Del Regno
26096564b1eSAngeloGioacchino Del Regno			mt6360_ldo2: ldo2 {
26196564b1eSAngeloGioacchino Del Regno				regulator-name = "panel1_p1v8";
26296564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <1800000>;
26396564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <1800000>;
26496564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
26596564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
26696564b1eSAngeloGioacchino Del Regno			};
26796564b1eSAngeloGioacchino Del Regno
26896564b1eSAngeloGioacchino Del Regno			mt6360_ldo3: ldo3 {
26996564b1eSAngeloGioacchino Del Regno				regulator-name = "vmc_pmu";
27096564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <1200000>;
27196564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <3600000>;
27296564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
27396564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
27496564b1eSAngeloGioacchino Del Regno			};
27596564b1eSAngeloGioacchino Del Regno
27696564b1eSAngeloGioacchino Del Regno			mt6360_ldo5: ldo5 {
27796564b1eSAngeloGioacchino Del Regno				regulator-name = "vmch_pmu";
27896564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <3300000>;
27996564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <3300000>;
28096564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
28196564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
28296564b1eSAngeloGioacchino Del Regno				regulator-always-on;
28396564b1eSAngeloGioacchino Del Regno			};
28496564b1eSAngeloGioacchino Del Regno
28596564b1eSAngeloGioacchino Del Regno			mt6360_ldo6: ldo6 {
28696564b1eSAngeloGioacchino Del Regno				regulator-name = "mt6360_ldo6"; /* Test point */
28796564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <500000>;
28896564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <2100000>;
28996564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
29096564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
29196564b1eSAngeloGioacchino Del Regno			};
29296564b1eSAngeloGioacchino Del Regno
29396564b1eSAngeloGioacchino Del Regno			mt6360_ldo7: ldo7 {
29496564b1eSAngeloGioacchino Del Regno				regulator-name = "emi_vmddr_en";
29596564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <500000>;
29696564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <2100000>;
29796564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <MT6360_OPMODE_NORMAL
29896564b1eSAngeloGioacchino Del Regno							   MT6360_OPMODE_LP>;
29996564b1eSAngeloGioacchino Del Regno				regulator-always-on;
30096564b1eSAngeloGioacchino Del Regno			};
30196564b1eSAngeloGioacchino Del Regno		};
30296564b1eSAngeloGioacchino Del Regno
30396564b1eSAngeloGioacchino Del Regno		typec {
30496564b1eSAngeloGioacchino Del Regno			compatible = "mediatek,mt6360-tcpc";
30596564b1eSAngeloGioacchino Del Regno			interrupts-extended = <&pio 100 IRQ_TYPE_LEVEL_LOW>;
30696564b1eSAngeloGioacchino Del Regno			interrupt-names = "PD_IRQB";
30796564b1eSAngeloGioacchino Del Regno
30896564b1eSAngeloGioacchino Del Regno			connector {
30996564b1eSAngeloGioacchino Del Regno				compatible = "usb-c-connector";
31096564b1eSAngeloGioacchino Del Regno				label = "USB-C";
31196564b1eSAngeloGioacchino Del Regno				data-role = "dual";
31296564b1eSAngeloGioacchino Del Regno				op-sink-microwatt = <10000000>;
31396564b1eSAngeloGioacchino Del Regno				power-role = "dual";
31496564b1eSAngeloGioacchino Del Regno				try-power-role = "sink";
31596564b1eSAngeloGioacchino Del Regno
31696564b1eSAngeloGioacchino Del Regno				source-pdos = <PDO_FIXED(5000, 1000,
31796564b1eSAngeloGioacchino Del Regno							 PDO_FIXED_DUAL_ROLE |
31896564b1eSAngeloGioacchino Del Regno							 PDO_FIXED_DATA_SWAP)>;
31996564b1eSAngeloGioacchino Del Regno				sink-pdos = <PDO_FIXED(5000, 3000,
32096564b1eSAngeloGioacchino Del Regno						       PDO_FIXED_DUAL_ROLE |
32196564b1eSAngeloGioacchino Del Regno						       PDO_FIXED_DATA_SWAP)>;
32296564b1eSAngeloGioacchino Del Regno
32396564b1eSAngeloGioacchino Del Regno				ports {
32496564b1eSAngeloGioacchino Del Regno					#address-cells = <1>;
32596564b1eSAngeloGioacchino Del Regno					#size-cells = <0>;
32696564b1eSAngeloGioacchino Del Regno
32796564b1eSAngeloGioacchino Del Regno					port@0 {
32896564b1eSAngeloGioacchino Del Regno						reg = <0>;
32996564b1eSAngeloGioacchino Del Regno						typec_con_hs: endpoint {
33096564b1eSAngeloGioacchino Del Regno							remote-endpoint = <&mtu3_hs0_role_sw>;
33196564b1eSAngeloGioacchino Del Regno						};
33296564b1eSAngeloGioacchino Del Regno					};
33396564b1eSAngeloGioacchino Del Regno
33496564b1eSAngeloGioacchino Del Regno					port@2 {
33596564b1eSAngeloGioacchino Del Regno						reg = <2>;
33696564b1eSAngeloGioacchino Del Regno						typec_con_mux: endpoint {
33796564b1eSAngeloGioacchino Del Regno							remote-endpoint = <&it5205_sbu_mux>;
33896564b1eSAngeloGioacchino Del Regno						};
33996564b1eSAngeloGioacchino Del Regno					};
34096564b1eSAngeloGioacchino Del Regno				};
34196564b1eSAngeloGioacchino Del Regno			};
34296564b1eSAngeloGioacchino Del Regno		};
34396564b1eSAngeloGioacchino Del Regno	};
34496564b1eSAngeloGioacchino Del Regno};
34596564b1eSAngeloGioacchino Del Regno
34696564b1eSAngeloGioacchino Del Regno/* MMC0 Controller: eMMC (HS400). Power lines are shared with UFS! */
34796564b1eSAngeloGioacchino Del Regno&mmc0 {
34896564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default", "state_uhs";
34996564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&mmc0_default_pins>;
35096564b1eSAngeloGioacchino Del Regno	pinctrl-1 = <&mmc0_uhs_pins>;
35196564b1eSAngeloGioacchino Del Regno	bus-width = <8>;
35296564b1eSAngeloGioacchino Del Regno	max-frequency = <200000000>;
35396564b1eSAngeloGioacchino Del Regno	hs400-ds-delay = <0x14c11>;
35496564b1eSAngeloGioacchino Del Regno	cap-mmc-highspeed;
35596564b1eSAngeloGioacchino Del Regno	cap-mmc-hw-reset;
35696564b1eSAngeloGioacchino Del Regno	mmc-hs200-1_8v;
35796564b1eSAngeloGioacchino Del Regno	mmc-hs400-1_8v;
35896564b1eSAngeloGioacchino Del Regno	no-sdio;
35996564b1eSAngeloGioacchino Del Regno	no-sd;
36096564b1eSAngeloGioacchino Del Regno	non-removable;
36196564b1eSAngeloGioacchino Del Regno	vmmc-supply = <&mt6359_vemc_1_ldo_reg>;
36296564b1eSAngeloGioacchino Del Regno	vqmmc-supply = <&mt6359_vufs_ldo_reg>;
36396564b1eSAngeloGioacchino Del Regno	status = "okay";
36496564b1eSAngeloGioacchino Del Regno};
36596564b1eSAngeloGioacchino Del Regno
36696564b1eSAngeloGioacchino Del Regno/* MMC1 Controller: MicroSD card slot */
36796564b1eSAngeloGioacchino Del Regno&mmc1 {
36896564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default", "state_uhs";
36996564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&mmc1_default_pins>, <&mmc1_pins_detect>;
37096564b1eSAngeloGioacchino Del Regno	pinctrl-1 = <&mmc1_default_pins>;
37196564b1eSAngeloGioacchino Del Regno	bus-width = <4>;
37296564b1eSAngeloGioacchino Del Regno	max-frequency = <200000000>;
37396564b1eSAngeloGioacchino Del Regno	cap-sd-highspeed;
37496564b1eSAngeloGioacchino Del Regno	cd-gpios = <&pio 129 GPIO_ACTIVE_LOW>;
37596564b1eSAngeloGioacchino Del Regno	no-mmc;
37696564b1eSAngeloGioacchino Del Regno	no-sdio;
37796564b1eSAngeloGioacchino Del Regno	sd-uhs-sdr50;
37896564b1eSAngeloGioacchino Del Regno	sd-uhs-sdr104;
37996564b1eSAngeloGioacchino Del Regno	vmmc-supply = <&mt6360_ldo5>;
38096564b1eSAngeloGioacchino Del Regno	vqmmc-supply = <&mt6360_ldo3>;
38196564b1eSAngeloGioacchino Del Regno	status = "okay";
38296564b1eSAngeloGioacchino Del Regno};
38396564b1eSAngeloGioacchino Del Regno
38496564b1eSAngeloGioacchino Del Regno&mt6359_vaud18_ldo_reg {
38596564b1eSAngeloGioacchino Del Regno	regulator-always-on;
38696564b1eSAngeloGioacchino Del Regno};
38796564b1eSAngeloGioacchino Del Regno
38896564b1eSAngeloGioacchino Del Regno&mt6359_vbbck_ldo_reg {
38996564b1eSAngeloGioacchino Del Regno	regulator-always-on;
39096564b1eSAngeloGioacchino Del Regno};
39196564b1eSAngeloGioacchino Del Regno
39296564b1eSAngeloGioacchino Del Regno/* For USB Hub */
39396564b1eSAngeloGioacchino Del Regno&mt6359_vcamio_ldo_reg {
39496564b1eSAngeloGioacchino Del Regno	regulator-always-on;
39596564b1eSAngeloGioacchino Del Regno};
39696564b1eSAngeloGioacchino Del Regno
39796564b1eSAngeloGioacchino Del Regno&mt6359_vcn33_2_bt_ldo_reg {
39896564b1eSAngeloGioacchino Del Regno	regulator-min-microvolt = <3300000>;
39996564b1eSAngeloGioacchino Del Regno	regulator-max-microvolt = <3300000>;
40096564b1eSAngeloGioacchino Del Regno};
40196564b1eSAngeloGioacchino Del Regno
40296564b1eSAngeloGioacchino Del Regno&mt6359_vcore_buck_reg {
40396564b1eSAngeloGioacchino Del Regno	regulator-always-on;
40496564b1eSAngeloGioacchino Del Regno};
40596564b1eSAngeloGioacchino Del Regno
40696564b1eSAngeloGioacchino Del Regno&mt6359_vgpu11_buck_reg {
40796564b1eSAngeloGioacchino Del Regno	regulator-always-on;
40896564b1eSAngeloGioacchino Del Regno};
40996564b1eSAngeloGioacchino Del Regno
41096564b1eSAngeloGioacchino Del Regno&mt6359_vproc1_buck_reg {
41196564b1eSAngeloGioacchino Del Regno	regulator-always-on;
41296564b1eSAngeloGioacchino Del Regno};
41396564b1eSAngeloGioacchino Del Regno
41496564b1eSAngeloGioacchino Del Regno&mt6359_vproc2_buck_reg {
41596564b1eSAngeloGioacchino Del Regno	regulator-always-on;
41696564b1eSAngeloGioacchino Del Regno};
41796564b1eSAngeloGioacchino Del Regno
41896564b1eSAngeloGioacchino Del Regno&mt6359_vpu_buck_reg {
41996564b1eSAngeloGioacchino Del Regno	regulator-always-on;
42096564b1eSAngeloGioacchino Del Regno};
42196564b1eSAngeloGioacchino Del Regno
42296564b1eSAngeloGioacchino Del Regno&mt6359_vrf12_ldo_reg {
42396564b1eSAngeloGioacchino Del Regno	regulator-always-on;
42496564b1eSAngeloGioacchino Del Regno};
42596564b1eSAngeloGioacchino Del Regno
42696564b1eSAngeloGioacchino Del Regno&mt6359_vsram_md_ldo_reg {
42796564b1eSAngeloGioacchino Del Regno	regulator-always-on;
42896564b1eSAngeloGioacchino Del Regno};
42996564b1eSAngeloGioacchino Del Regno
43096564b1eSAngeloGioacchino Del Regno/* for GPU SRAM */
43196564b1eSAngeloGioacchino Del Regno&mt6359_vsram_others_ldo_reg {
43296564b1eSAngeloGioacchino Del Regno	regulator-min-microvolt = <750000>;
43396564b1eSAngeloGioacchino Del Regno	regulator-max-microvolt = <750000>;
43496564b1eSAngeloGioacchino Del Regno};
43596564b1eSAngeloGioacchino Del Regno
43696564b1eSAngeloGioacchino Del Regno&pio {
43796564b1eSAngeloGioacchino Del Regno	eth_default_pins: eth-default-pins {
43896564b1eSAngeloGioacchino Del Regno		pins-cc {
43996564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO85__FUNC_GBE_TXC>,
44096564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO86__FUNC_GBE_RXC>,
44196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO87__FUNC_GBE_RXDV>,
44296564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO88__FUNC_GBE_TXEN>;
44396564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
44496564b1eSAngeloGioacchino Del Regno		};
44596564b1eSAngeloGioacchino Del Regno
44696564b1eSAngeloGioacchino Del Regno		pins-mdio {
44796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO89__FUNC_GBE_MDC>,
44896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO90__FUNC_GBE_MDIO>;
44996564b1eSAngeloGioacchino Del Regno			input-enable;
45096564b1eSAngeloGioacchino Del Regno		};
45196564b1eSAngeloGioacchino Del Regno
45296564b1eSAngeloGioacchino Del Regno		pins-power {
45396564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO91__FUNC_GPIO91>,
45496564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO92__FUNC_GPIO92>;
45596564b1eSAngeloGioacchino Del Regno			output-high;
45696564b1eSAngeloGioacchino Del Regno		};
45796564b1eSAngeloGioacchino Del Regno
45896564b1eSAngeloGioacchino Del Regno		pins-rst {
45996564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
46096564b1eSAngeloGioacchino Del Regno		};
46196564b1eSAngeloGioacchino Del Regno
46296564b1eSAngeloGioacchino Del Regno		pins-rxd {
46396564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO81__FUNC_GBE_RXD3>,
46496564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO82__FUNC_GBE_RXD2>,
46596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO83__FUNC_GBE_RXD1>,
46696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO84__FUNC_GBE_RXD0>;
46796564b1eSAngeloGioacchino Del Regno		};
46896564b1eSAngeloGioacchino Del Regno
46996564b1eSAngeloGioacchino Del Regno		pins-txd {
47096564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO77__FUNC_GBE_TXD3>,
47196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO78__FUNC_GBE_TXD2>,
47296564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO79__FUNC_GBE_TXD1>,
47396564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO80__FUNC_GBE_TXD0>;
47496564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
47596564b1eSAngeloGioacchino Del Regno		};
47696564b1eSAngeloGioacchino Del Regno	};
47796564b1eSAngeloGioacchino Del Regno
47896564b1eSAngeloGioacchino Del Regno	eth_sleep_pins: eth-sleep-pins {
47996564b1eSAngeloGioacchino Del Regno		pins-cc {
48096564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO85__FUNC_GPIO85>,
48196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO86__FUNC_GPIO86>,
48296564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO87__FUNC_GPIO87>,
48396564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO88__FUNC_GPIO88>;
48496564b1eSAngeloGioacchino Del Regno		};
48596564b1eSAngeloGioacchino Del Regno
48696564b1eSAngeloGioacchino Del Regno		pins-mdio {
48796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO89__FUNC_GPIO89>,
48896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO90__FUNC_GPIO90>;
48996564b1eSAngeloGioacchino Del Regno			bias-disable;
49096564b1eSAngeloGioacchino Del Regno			input-disable;
49196564b1eSAngeloGioacchino Del Regno		};
49296564b1eSAngeloGioacchino Del Regno
49396564b1eSAngeloGioacchino Del Regno		pins-rxd {
49496564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO81__FUNC_GPIO81>,
49596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO82__FUNC_GPIO82>,
49696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO83__FUNC_GPIO83>,
49796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO84__FUNC_GPIO84>;
49896564b1eSAngeloGioacchino Del Regno		};
49996564b1eSAngeloGioacchino Del Regno
50096564b1eSAngeloGioacchino Del Regno		pins-txd {
50196564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO77__FUNC_GPIO77>,
50296564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO78__FUNC_GPIO78>,
50396564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO79__FUNC_GPIO79>,
50496564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO80__FUNC_GPIO80>;
50596564b1eSAngeloGioacchino Del Regno		};
50696564b1eSAngeloGioacchino Del Regno	};
50796564b1eSAngeloGioacchino Del Regno
50896564b1eSAngeloGioacchino Del Regno	i2c2_pins: i2c2-pins {
50996564b1eSAngeloGioacchino Del Regno		pins-bus {
51096564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO12__FUNC_SDA2>,
51196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO13__FUNC_SCL2>;
51296564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
51396564b1eSAngeloGioacchino Del Regno			drive-strength = <6>;
51496564b1eSAngeloGioacchino Del Regno			drive-strength-microamp = <1000>;
51596564b1eSAngeloGioacchino Del Regno		};
51696564b1eSAngeloGioacchino Del Regno	};
51796564b1eSAngeloGioacchino Del Regno
51896564b1eSAngeloGioacchino Del Regno	i2c4_pins: i2c4-pins {
51996564b1eSAngeloGioacchino Del Regno		pins-bus {
52096564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO16__FUNC_SDA4>,
52196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO17__FUNC_SCL4>;
52296564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PULL_SET_RSEL_111>;
52396564b1eSAngeloGioacchino Del Regno			drive-strength-microamp = <1000>;
52496564b1eSAngeloGioacchino Del Regno		};
52596564b1eSAngeloGioacchino Del Regno	};
52696564b1eSAngeloGioacchino Del Regno
52796564b1eSAngeloGioacchino Del Regno	i2c6_pins: i2c6-pins {
52896564b1eSAngeloGioacchino Del Regno		pins {
52996564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO25__FUNC_SDA6>,
53096564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO26__FUNC_SCL6>;
531*32b33be8SAngeloGioacchino Del Regno			bias-disable;
53296564b1eSAngeloGioacchino Del Regno		};
53396564b1eSAngeloGioacchino Del Regno	};
53496564b1eSAngeloGioacchino Del Regno
53596564b1eSAngeloGioacchino Del Regno	mmc0_default_pins: mmc0-default-pins {
53696564b1eSAngeloGioacchino Del Regno		pins-clk {
53796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
53896564b1eSAngeloGioacchino Del Regno			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
53996564b1eSAngeloGioacchino Del Regno			drive-strength = <6>;
54096564b1eSAngeloGioacchino Del Regno		};
54196564b1eSAngeloGioacchino Del Regno
54296564b1eSAngeloGioacchino Del Regno		pins-cmd-dat {
54396564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
54496564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
54596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
54696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
54796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
54896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
54996564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
55096564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
55196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
55296564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
55396564b1eSAngeloGioacchino Del Regno			drive-strength = <6>;
55496564b1eSAngeloGioacchino Del Regno			input-enable;
55596564b1eSAngeloGioacchino Del Regno		};
55696564b1eSAngeloGioacchino Del Regno
55796564b1eSAngeloGioacchino Del Regno		pins-rst {
55896564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
55996564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
56096564b1eSAngeloGioacchino Del Regno			drive-strength = <6>;
56196564b1eSAngeloGioacchino Del Regno		};
56296564b1eSAngeloGioacchino Del Regno	};
56396564b1eSAngeloGioacchino Del Regno
56496564b1eSAngeloGioacchino Del Regno	mmc0_uhs_pins: mmc0-uhs-pins {
56596564b1eSAngeloGioacchino Del Regno		pins-clk {
56696564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>;
56796564b1eSAngeloGioacchino Del Regno			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
56896564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
56996564b1eSAngeloGioacchino Del Regno		};
57096564b1eSAngeloGioacchino Del Regno
57196564b1eSAngeloGioacchino Del Regno		pins-cmd-dat {
57296564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>,
57396564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO125__FUNC_MSDC0_DAT1>,
57496564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO124__FUNC_MSDC0_DAT2>,
57596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO123__FUNC_MSDC0_DAT3>,
57696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO119__FUNC_MSDC0_DAT4>,
57796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO118__FUNC_MSDC0_DAT5>,
57896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO117__FUNC_MSDC0_DAT6>,
57996564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO116__FUNC_MSDC0_DAT7>,
58096564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO121__FUNC_MSDC0_CMD>;
58196564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
58296564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
58396564b1eSAngeloGioacchino Del Regno			input-enable;
58496564b1eSAngeloGioacchino Del Regno		};
58596564b1eSAngeloGioacchino Del Regno
58696564b1eSAngeloGioacchino Del Regno		pins-ds {
58796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO127__FUNC_MSDC0_DSL>;
58896564b1eSAngeloGioacchino Del Regno			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
58996564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
59096564b1eSAngeloGioacchino Del Regno		};
59196564b1eSAngeloGioacchino Del Regno
59296564b1eSAngeloGioacchino Del Regno		pins-rst {
59396564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>;
59496564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
59596564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
59696564b1eSAngeloGioacchino Del Regno		};
59796564b1eSAngeloGioacchino Del Regno	};
59896564b1eSAngeloGioacchino Del Regno
59996564b1eSAngeloGioacchino Del Regno	mmc1_default_pins: mmc1-default-pins {
60096564b1eSAngeloGioacchino Del Regno		pins-clk {
60196564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>;
60296564b1eSAngeloGioacchino Del Regno			bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
60396564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
60496564b1eSAngeloGioacchino Del Regno		};
60596564b1eSAngeloGioacchino Del Regno
60696564b1eSAngeloGioacchino Del Regno		pins-cmd-dat {
60796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>,
60896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO112__FUNC_MSDC1_DAT0>,
60996564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO113__FUNC_MSDC1_DAT1>,
61096564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO114__FUNC_MSDC1_DAT2>,
61196564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO115__FUNC_MSDC1_DAT3>;
61296564b1eSAngeloGioacchino Del Regno			bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
61396564b1eSAngeloGioacchino Del Regno			drive-strength = <8>;
61496564b1eSAngeloGioacchino Del Regno			input-enable;
61596564b1eSAngeloGioacchino Del Regno		};
61696564b1eSAngeloGioacchino Del Regno	};
61796564b1eSAngeloGioacchino Del Regno
61896564b1eSAngeloGioacchino Del Regno	mmc1_pins_detect: mmc1-detect-pins {
61996564b1eSAngeloGioacchino Del Regno		pins-insert {
62096564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO129__FUNC_GPIO129>;
62196564b1eSAngeloGioacchino Del Regno			bias-pull-up;
62296564b1eSAngeloGioacchino Del Regno		};
62396564b1eSAngeloGioacchino Del Regno	};
62496564b1eSAngeloGioacchino Del Regno
62596564b1eSAngeloGioacchino Del Regno	mt6360_pins: mt6360-pins {
62696564b1eSAngeloGioacchino Del Regno		pins-irq {
62796564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO100__FUNC_GPIO100>,
62896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO101__FUNC_GPIO101>;
62996564b1eSAngeloGioacchino Del Regno			input-enable;
63096564b1eSAngeloGioacchino Del Regno			bias-pull-up;
63196564b1eSAngeloGioacchino Del Regno		};
63296564b1eSAngeloGioacchino Del Regno	};
63396564b1eSAngeloGioacchino Del Regno
63496564b1eSAngeloGioacchino Del Regno	pcie0_default_pins: pcie0-default-pins {
63596564b1eSAngeloGioacchino Del Regno		pins-bus {
63696564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO19__FUNC_WAKEN>,
63796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO20__FUNC_PERSTN>,
63896564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO21__FUNC_CLKREQN>;
63996564b1eSAngeloGioacchino Del Regno			bias-pull-up;
64096564b1eSAngeloGioacchino Del Regno		};
64196564b1eSAngeloGioacchino Del Regno	};
64296564b1eSAngeloGioacchino Del Regno
64396564b1eSAngeloGioacchino Del Regno	pcie1_default_pins: pcie1-default-pins {
64496564b1eSAngeloGioacchino Del Regno		pins-bus {
64596564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO0__FUNC_PERSTN_1>,
64696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO1__FUNC_CLKREQN_1>,
64796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO2__FUNC_WAKEN_1>;
64896564b1eSAngeloGioacchino Del Regno			bias-disable;
64996564b1eSAngeloGioacchino Del Regno		};
65096564b1eSAngeloGioacchino Del Regno	};
65196564b1eSAngeloGioacchino Del Regno
65296564b1eSAngeloGioacchino Del Regno	spi1_pins: spi1-default-pins {
65396564b1eSAngeloGioacchino Del Regno		pins-bus {
65496564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO136__FUNC_SPIM1_CSB>,
65596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO137__FUNC_SPIM1_CLK>,
65696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO138__FUNC_SPIM1_MO>,
65796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO139__FUNC_SPIM1_MI>;
65896564b1eSAngeloGioacchino Del Regno			bias-disable;
65996564b1eSAngeloGioacchino Del Regno		};
66096564b1eSAngeloGioacchino Del Regno	};
66196564b1eSAngeloGioacchino Del Regno
66296564b1eSAngeloGioacchino Del Regno	spi2_pins: spi2-default-pins {
66396564b1eSAngeloGioacchino Del Regno		pins-bus {
66496564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO140__FUNC_SPIM2_CSB>,
66596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO141__FUNC_SPIM2_CLK>,
66696564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO142__FUNC_SPIM2_MO>,
66796564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO143__FUNC_SPIM2_MI>;
66896564b1eSAngeloGioacchino Del Regno			bias-disable;
66996564b1eSAngeloGioacchino Del Regno		};
67096564b1eSAngeloGioacchino Del Regno	};
67196564b1eSAngeloGioacchino Del Regno
67296564b1eSAngeloGioacchino Del Regno	uart0_pins: uart0-pins {
67396564b1eSAngeloGioacchino Del Regno		pins-bus {
67496564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO98__FUNC_UTXD0>,
67596564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO99__FUNC_URXD0>;
67696564b1eSAngeloGioacchino Del Regno		};
67796564b1eSAngeloGioacchino Del Regno	};
67896564b1eSAngeloGioacchino Del Regno
67996564b1eSAngeloGioacchino Del Regno	uart1_pins: uart1-pins {
68096564b1eSAngeloGioacchino Del Regno		pins-bus {
68196564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO102__FUNC_UTXD1>,
68296564b1eSAngeloGioacchino Del Regno				 <PINMUX_GPIO103__FUNC_URXD1>;
68396564b1eSAngeloGioacchino Del Regno		};
68496564b1eSAngeloGioacchino Del Regno	};
68596564b1eSAngeloGioacchino Del Regno
68696564b1eSAngeloGioacchino Del Regno	wifi_vreg_pins: wifi-vreg-pins {
68796564b1eSAngeloGioacchino Del Regno		pins-wifi-pmu-en {
68896564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO65__FUNC_GPIO65>;
68996564b1eSAngeloGioacchino Del Regno			output-high;
69096564b1eSAngeloGioacchino Del Regno		};
69196564b1eSAngeloGioacchino Del Regno
69296564b1eSAngeloGioacchino Del Regno		pins-wifi-vreg-en {
69396564b1eSAngeloGioacchino Del Regno			pinmux = <PINMUX_GPIO67__FUNC_GPIO67>;
69496564b1eSAngeloGioacchino Del Regno		};
69596564b1eSAngeloGioacchino Del Regno	};
69696564b1eSAngeloGioacchino Del Regno};
69796564b1eSAngeloGioacchino Del Regno
69896564b1eSAngeloGioacchino Del Regno&pcie0 {
69996564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
70096564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&pcie0_default_pins>;
70196564b1eSAngeloGioacchino Del Regno	status = "okay";
70296564b1eSAngeloGioacchino Del Regno};
70396564b1eSAngeloGioacchino Del Regno
70496564b1eSAngeloGioacchino Del Regno&pcie1 {
70596564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
70696564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&pcie1_default_pins>;
70796564b1eSAngeloGioacchino Del Regno	status = "okay";
70896564b1eSAngeloGioacchino Del Regno};
70996564b1eSAngeloGioacchino Del Regno
71096564b1eSAngeloGioacchino Del Regno&pmic {
71196564b1eSAngeloGioacchino Del Regno	interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>;
71296564b1eSAngeloGioacchino Del Regno};
71396564b1eSAngeloGioacchino Del Regno
71496564b1eSAngeloGioacchino Del Regno&scp {
71596564b1eSAngeloGioacchino Del Regno	memory-region = <&scp_mem>;
71696564b1eSAngeloGioacchino Del Regno	status = "okay";
71796564b1eSAngeloGioacchino Del Regno};
71896564b1eSAngeloGioacchino Del Regno
71996564b1eSAngeloGioacchino Del Regno&spi1 {
72096564b1eSAngeloGioacchino Del Regno	/* Exposed at 40 pin connector */
72196564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&spi1_pins>;
72296564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
72396564b1eSAngeloGioacchino Del Regno	mediatek,pad-select = <0>;
72496564b1eSAngeloGioacchino Del Regno	#address-cells = <1>;
72596564b1eSAngeloGioacchino Del Regno	#size-cells = <0>;
72696564b1eSAngeloGioacchino Del Regno	status = "okay";
72796564b1eSAngeloGioacchino Del Regno};
72896564b1eSAngeloGioacchino Del Regno
72996564b1eSAngeloGioacchino Del Regno&spi2 {
73096564b1eSAngeloGioacchino Del Regno	/* Exposed at 40 pin connector */
73196564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&spi2_pins>;
73296564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
73396564b1eSAngeloGioacchino Del Regno	mediatek,pad-select = <0>;
73496564b1eSAngeloGioacchino Del Regno	#address-cells = <1>;
73596564b1eSAngeloGioacchino Del Regno	#size-cells = <0>;
73696564b1eSAngeloGioacchino Del Regno	status = "okay";
73796564b1eSAngeloGioacchino Del Regno};
73896564b1eSAngeloGioacchino Del Regno
73996564b1eSAngeloGioacchino Del Regno&spmi {
74096564b1eSAngeloGioacchino Del Regno	#address-cells = <2>;
74196564b1eSAngeloGioacchino Del Regno	#size-cells = <0>;
74296564b1eSAngeloGioacchino Del Regno
74396564b1eSAngeloGioacchino Del Regno	mt6315_6: pmic@6 {
74496564b1eSAngeloGioacchino Del Regno		compatible = "mediatek,mt6315-regulator";
74596564b1eSAngeloGioacchino Del Regno		reg = <0x6 SPMI_USID>;
74696564b1eSAngeloGioacchino Del Regno
74796564b1eSAngeloGioacchino Del Regno		regulators {
74896564b1eSAngeloGioacchino Del Regno			mt6315_6_vbuck1: vbuck1 {
74996564b1eSAngeloGioacchino Del Regno				regulator-compatible = "vbuck1";
75096564b1eSAngeloGioacchino Del Regno				regulator-name = "Vbcpu";
75196564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <300000>;
75296564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <1193750>;
75396564b1eSAngeloGioacchino Del Regno				regulator-enable-ramp-delay = <256>;
75496564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <0 1 2>;
75596564b1eSAngeloGioacchino Del Regno				regulator-always-on;
75696564b1eSAngeloGioacchino Del Regno			};
75796564b1eSAngeloGioacchino Del Regno		};
75896564b1eSAngeloGioacchino Del Regno	};
75996564b1eSAngeloGioacchino Del Regno
76096564b1eSAngeloGioacchino Del Regno	mt6315_7: pmic@7 {
76196564b1eSAngeloGioacchino Del Regno		compatible = "mediatek,mt6315-regulator";
76296564b1eSAngeloGioacchino Del Regno		reg = <0x7 SPMI_USID>;
76396564b1eSAngeloGioacchino Del Regno
76496564b1eSAngeloGioacchino Del Regno		regulators {
76596564b1eSAngeloGioacchino Del Regno			mt6315_7_vbuck1: vbuck1 {
76696564b1eSAngeloGioacchino Del Regno				regulator-compatible = "vbuck1";
76796564b1eSAngeloGioacchino Del Regno				regulator-name = "Vgpu";
76896564b1eSAngeloGioacchino Del Regno				regulator-min-microvolt = <300000>;
76996564b1eSAngeloGioacchino Del Regno				regulator-max-microvolt = <1193750>;
77096564b1eSAngeloGioacchino Del Regno				regulator-enable-ramp-delay = <256>;
77196564b1eSAngeloGioacchino Del Regno				regulator-allowed-modes = <0 1 2>;
77296564b1eSAngeloGioacchino Del Regno			};
77396564b1eSAngeloGioacchino Del Regno		};
77496564b1eSAngeloGioacchino Del Regno	};
77596564b1eSAngeloGioacchino Del Regno};
77696564b1eSAngeloGioacchino Del Regno
77796564b1eSAngeloGioacchino Del Regno&uart0 {
77896564b1eSAngeloGioacchino Del Regno	/* Exposed at 40 pin connector */
77996564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&uart0_pins>;
78096564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
78196564b1eSAngeloGioacchino Del Regno	status = "okay";
78296564b1eSAngeloGioacchino Del Regno};
78396564b1eSAngeloGioacchino Del Regno
78496564b1eSAngeloGioacchino Del Regno&uart1 {
78596564b1eSAngeloGioacchino Del Regno	/* Exposed at 40 pin connector */
78696564b1eSAngeloGioacchino Del Regno	pinctrl-0 = <&uart1_pins>;
78796564b1eSAngeloGioacchino Del Regno	pinctrl-names = "default";
78896564b1eSAngeloGioacchino Del Regno	status = "okay";
78996564b1eSAngeloGioacchino Del Regno};
79096564b1eSAngeloGioacchino Del Regno
79196564b1eSAngeloGioacchino Del Regno&ssusb0 {
79296564b1eSAngeloGioacchino Del Regno	role-switch-default-mode = "host";
79396564b1eSAngeloGioacchino Del Regno	usb-role-switch;
79496564b1eSAngeloGioacchino Del Regno	vusb33-supply = <&mt6359_vusb_ldo_reg>;
79596564b1eSAngeloGioacchino Del Regno	status = "okay";
79696564b1eSAngeloGioacchino Del Regno
79796564b1eSAngeloGioacchino Del Regno	port {
79896564b1eSAngeloGioacchino Del Regno		mtu3_hs0_role_sw: endpoint {
79996564b1eSAngeloGioacchino Del Regno			remote-endpoint = <&typec_con_hs>;
80096564b1eSAngeloGioacchino Del Regno		};
80196564b1eSAngeloGioacchino Del Regno	};
80296564b1eSAngeloGioacchino Del Regno};
80396564b1eSAngeloGioacchino Del Regno
80496564b1eSAngeloGioacchino Del Regno&ssusb2 {
80596564b1eSAngeloGioacchino Del Regno	vusb33-supply = <&mt6359_vusb_ldo_reg>;
80696564b1eSAngeloGioacchino Del Regno	status = "okay";
80796564b1eSAngeloGioacchino Del Regno};
80896564b1eSAngeloGioacchino Del Regno
80996564b1eSAngeloGioacchino Del Regno&xhci0 {
81096564b1eSAngeloGioacchino Del Regno	vbus-supply = <&otg_vbus_regulator>;
81196564b1eSAngeloGioacchino Del Regno	status = "okay";
81296564b1eSAngeloGioacchino Del Regno};
81396564b1eSAngeloGioacchino Del Regno
81496564b1eSAngeloGioacchino Del Regno&xhci1 {
81596564b1eSAngeloGioacchino Del Regno	/* MT7921's USB Bluetooth has issues with USB2 LPM */
81696564b1eSAngeloGioacchino Del Regno	usb2-lpm-disable;
81796564b1eSAngeloGioacchino Del Regno	vusb33-supply = <&mt6359_vusb_ldo_reg>;
81896564b1eSAngeloGioacchino Del Regno	vbus-supply = <&vsys>;
81996564b1eSAngeloGioacchino Del Regno	status = "okay";
82096564b1eSAngeloGioacchino Del Regno};
82196564b1eSAngeloGioacchino Del Regno
82296564b1eSAngeloGioacchino Del Regno&xhci2 {
82396564b1eSAngeloGioacchino Del Regno	vbus-supply = <&vsys>;
82496564b1eSAngeloGioacchino Del Regno	status = "okay";
82596564b1eSAngeloGioacchino Del Regno};
826