101950c46SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT) 201950c46SEmmanuel Vadot/* 301950c46SEmmanuel Vadot * Copyright (C) 2023 Radxa Limited 401950c46SEmmanuel Vadot * Copyright (C) 2024 Collabora Ltd. 501950c46SEmmanuel Vadot * AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 601950c46SEmmanuel Vadot */ 701950c46SEmmanuel Vadot 801950c46SEmmanuel Vadot#include "mt8195.dtsi" 901950c46SEmmanuel Vadot#include "mt6359.dtsi" 1001950c46SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 1101950c46SEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 1201950c46SEmmanuel Vadot#include <dt-bindings/pinctrl/mt8195-pinfunc.h> 1301950c46SEmmanuel Vadot#include <dt-bindings/regulator/mediatek,mt6360-regulator.h> 1401950c46SEmmanuel Vadot#include <dt-bindings/spmi/spmi.h> 1501950c46SEmmanuel Vadot#include <dt-bindings/usb/pd.h> 1601950c46SEmmanuel Vadot 1701950c46SEmmanuel Vadot/ { 1801950c46SEmmanuel Vadot model = "Radxa NIO 12L"; 1901950c46SEmmanuel Vadot chassis-type = "embedded"; 2001950c46SEmmanuel Vadot compatible = "radxa,nio-12l", "mediatek,mt8395", "mediatek,mt8195"; 2101950c46SEmmanuel Vadot 2201950c46SEmmanuel Vadot aliases { 2301950c46SEmmanuel Vadot i2c0 = &i2c2; 2401950c46SEmmanuel Vadot i2c1 = &i2c3; 2501950c46SEmmanuel Vadot i2c2 = &i2c4; 2601950c46SEmmanuel Vadot i2c3 = &i2c0; 2701950c46SEmmanuel Vadot i2c4 = &i2c1; 2801950c46SEmmanuel Vadot ethernet0 = ð 2901950c46SEmmanuel Vadot serial0 = &uart0; 3001950c46SEmmanuel Vadot serial1 = &uart1; 3101950c46SEmmanuel Vadot spi0 = &spi1; 3201950c46SEmmanuel Vadot spi1 = &spi2; 3301950c46SEmmanuel Vadot }; 3401950c46SEmmanuel Vadot 3501950c46SEmmanuel Vadot chosen { 3601950c46SEmmanuel Vadot stdout-path = "serial0:921600n8"; 3701950c46SEmmanuel Vadot }; 3801950c46SEmmanuel Vadot 3901950c46SEmmanuel Vadot firmware { 4001950c46SEmmanuel Vadot optee { 4101950c46SEmmanuel Vadot compatible = "linaro,optee-tz"; 4201950c46SEmmanuel Vadot method = "smc"; 4301950c46SEmmanuel Vadot }; 4401950c46SEmmanuel Vadot }; 4501950c46SEmmanuel Vadot 4601950c46SEmmanuel Vadot memory@40000000 { 4701950c46SEmmanuel Vadot device_type = "memory"; 4801950c46SEmmanuel Vadot reg = <0 0x40000000 0x1 0x0>; 4901950c46SEmmanuel Vadot }; 5001950c46SEmmanuel Vadot 5101950c46SEmmanuel Vadot wifi_vreg: regulator-wifi-3v3-en { 5201950c46SEmmanuel Vadot compatible = "regulator-fixed"; 5301950c46SEmmanuel Vadot regulator-name = "wifi_3v3_en"; 5401950c46SEmmanuel Vadot regulator-always-on; 5501950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 5601950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 5701950c46SEmmanuel Vadot enable-active-high; 5801950c46SEmmanuel Vadot gpio = <&pio 67 GPIO_ACTIVE_HIGH>; 5901950c46SEmmanuel Vadot pinctrl-names = "default"; 6001950c46SEmmanuel Vadot pinctrl-0 = <&wifi_vreg_pins>; 6101950c46SEmmanuel Vadot vin-supply = <&vsys>; 6201950c46SEmmanuel Vadot }; 6301950c46SEmmanuel Vadot 6401950c46SEmmanuel Vadot /* system wide switching 5.0V power rail */ 6501950c46SEmmanuel Vadot vsys: regulator-vsys { 6601950c46SEmmanuel Vadot compatible = "regulator-fixed"; 6701950c46SEmmanuel Vadot regulator-name = "vsys"; 6801950c46SEmmanuel Vadot regulator-always-on; 6901950c46SEmmanuel Vadot regulator-boot-on; 7001950c46SEmmanuel Vadot regulator-min-microvolt = <5000000>; 7101950c46SEmmanuel Vadot regulator-max-microvolt = <5000000>; 7201950c46SEmmanuel Vadot vin-supply = <&vcc5v0_vsys>; 7301950c46SEmmanuel Vadot }; 7401950c46SEmmanuel Vadot 7501950c46SEmmanuel Vadot vsys_buck: regulator-vsys-buck { 7601950c46SEmmanuel Vadot compatible = "regulator-fixed"; 7701950c46SEmmanuel Vadot regulator-name = "vsys_buck"; 7801950c46SEmmanuel Vadot regulator-always-on; 7901950c46SEmmanuel Vadot regulator-boot-on; 8001950c46SEmmanuel Vadot regulator-min-microvolt = <5000000>; 8101950c46SEmmanuel Vadot regulator-max-microvolt = <5000000>; 8201950c46SEmmanuel Vadot vin-supply = <&vcc5v0_vsys>; 8301950c46SEmmanuel Vadot }; 8401950c46SEmmanuel Vadot 8501950c46SEmmanuel Vadot /* Rail from power-only "TYPE C DC" port */ 8601950c46SEmmanuel Vadot vcc5v0_vsys: regulator-vcc5v0-sys { 8701950c46SEmmanuel Vadot compatible = "regulator-fixed"; 8801950c46SEmmanuel Vadot regulator-name = "vcc5v0_sys"; 8901950c46SEmmanuel Vadot regulator-always-on; 9001950c46SEmmanuel Vadot regulator-boot-on; 9101950c46SEmmanuel Vadot }; 9201950c46SEmmanuel Vadot 9301950c46SEmmanuel Vadot reserved-memory { 9401950c46SEmmanuel Vadot #address-cells = <2>; 9501950c46SEmmanuel Vadot #size-cells = <2>; 9601950c46SEmmanuel Vadot ranges; 9701950c46SEmmanuel Vadot 9801950c46SEmmanuel Vadot /* 9901950c46SEmmanuel Vadot * 12 MiB reserved for OP-TEE (BL32) 10001950c46SEmmanuel Vadot * +-----------------------+ 0x43e0_0000 10101950c46SEmmanuel Vadot * | SHMEM 2MiB | 10201950c46SEmmanuel Vadot * +-----------------------+ 0x43c0_0000 10301950c46SEmmanuel Vadot * | | TA_RAM 8MiB | 10401950c46SEmmanuel Vadot * + TZDRAM +--------------+ 0x4340_0000 10501950c46SEmmanuel Vadot * | | TEE_RAM 2MiB | 10601950c46SEmmanuel Vadot * +-----------------------+ 0x4320_0000 10701950c46SEmmanuel Vadot */ 10801950c46SEmmanuel Vadot optee_reserved: optee@43200000 { 10901950c46SEmmanuel Vadot reg = <0 0x43200000 0 0xc00000>; 11001950c46SEmmanuel Vadot no-map; 11101950c46SEmmanuel Vadot }; 11201950c46SEmmanuel Vadot 11301950c46SEmmanuel Vadot scp_mem: memory@50000000 { 11401950c46SEmmanuel Vadot compatible = "shared-dma-pool"; 11501950c46SEmmanuel Vadot reg = <0 0x50000000 0 0x2900000>; 11601950c46SEmmanuel Vadot no-map; 11701950c46SEmmanuel Vadot }; 11801950c46SEmmanuel Vadot 11901950c46SEmmanuel Vadot vpu_mem: memory@53000000 { 12001950c46SEmmanuel Vadot compatible = "shared-dma-pool"; 12101950c46SEmmanuel Vadot reg = <0 0x53000000 0 0x1400000>; /* 20 MB */ 12201950c46SEmmanuel Vadot }; 12301950c46SEmmanuel Vadot 12401950c46SEmmanuel Vadot /* 2 MiB reserved for ARM Trusted Firmware (BL31) */ 12501950c46SEmmanuel Vadot bl31_secmon_mem: memory@54600000 { 12601950c46SEmmanuel Vadot reg = <0 0x54600000 0x0 0x200000>; 12701950c46SEmmanuel Vadot no-map; 12801950c46SEmmanuel Vadot }; 12901950c46SEmmanuel Vadot 13001950c46SEmmanuel Vadot afe_mem: memory@60000000 { 13101950c46SEmmanuel Vadot compatible = "shared-dma-pool"; 13201950c46SEmmanuel Vadot reg = <0 0x60000000 0 0x1100000>; 13301950c46SEmmanuel Vadot no-map; 13401950c46SEmmanuel Vadot }; 13501950c46SEmmanuel Vadot 13601950c46SEmmanuel Vadot apu_mem: memory@62000000 { 13701950c46SEmmanuel Vadot compatible = "shared-dma-pool"; 13801950c46SEmmanuel Vadot reg = <0 0x62000000 0 0x1400000>; /* 20 MB */ 13901950c46SEmmanuel Vadot }; 14001950c46SEmmanuel Vadot }; 14101950c46SEmmanuel Vadot}; 14201950c46SEmmanuel Vadot 1430e8011faSEmmanuel Vadot&cpu0 { 1440e8011faSEmmanuel Vadot cpu-supply = <&mt6359_vcore_buck_reg>; 1450e8011faSEmmanuel Vadot}; 1460e8011faSEmmanuel Vadot 1470e8011faSEmmanuel Vadot&cpu1 { 1480e8011faSEmmanuel Vadot cpu-supply = <&mt6359_vcore_buck_reg>; 1490e8011faSEmmanuel Vadot}; 1500e8011faSEmmanuel Vadot 1510e8011faSEmmanuel Vadot&cpu2 { 1520e8011faSEmmanuel Vadot cpu-supply = <&mt6359_vcore_buck_reg>; 1530e8011faSEmmanuel Vadot}; 1540e8011faSEmmanuel Vadot 1550e8011faSEmmanuel Vadot&cpu3 { 1560e8011faSEmmanuel Vadot cpu-supply = <&mt6359_vcore_buck_reg>; 1570e8011faSEmmanuel Vadot}; 1580e8011faSEmmanuel Vadot 1590e8011faSEmmanuel Vadot&cpu4 { 1600e8011faSEmmanuel Vadot cpu-supply = <&mt6315_6_vbuck1>; 1610e8011faSEmmanuel Vadot}; 1620e8011faSEmmanuel Vadot 1630e8011faSEmmanuel Vadot&cpu5 { 1640e8011faSEmmanuel Vadot cpu-supply = <&mt6315_6_vbuck1>; 1650e8011faSEmmanuel Vadot}; 1660e8011faSEmmanuel Vadot 1670e8011faSEmmanuel Vadot&cpu6 { 1680e8011faSEmmanuel Vadot cpu-supply = <&mt6315_6_vbuck1>; 1690e8011faSEmmanuel Vadot}; 1700e8011faSEmmanuel Vadot 1710e8011faSEmmanuel Vadot&cpu7 { 1720e8011faSEmmanuel Vadot cpu-supply = <&mt6315_6_vbuck1>; 1730e8011faSEmmanuel Vadot}; 1740e8011faSEmmanuel Vadot 17501950c46SEmmanuel Vadotð { 17601950c46SEmmanuel Vadot phy-mode = "rgmii-rxid"; 17701950c46SEmmanuel Vadot phy-handle = <&rgmii_phy>; 17801950c46SEmmanuel Vadot pinctrl-names = "default", "sleep"; 17901950c46SEmmanuel Vadot pinctrl-0 = <ð_default_pins>; 18001950c46SEmmanuel Vadot pinctrl-1 = <ð_sleep_pins>; 18101950c46SEmmanuel Vadot mediatek,tx-delay-ps = <2030>; 18201950c46SEmmanuel Vadot mediatek,mac-wol; 18301950c46SEmmanuel Vadot snps,reset-gpio = <&pio 93 GPIO_ACTIVE_HIGH>; 18401950c46SEmmanuel Vadot snps,reset-delays-us = <0 20000 100000>; 18501950c46SEmmanuel Vadot status = "okay"; 18601950c46SEmmanuel Vadot 18701950c46SEmmanuel Vadot mdio { 18801950c46SEmmanuel Vadot rgmii_phy: ethernet-phy@1 { 18901950c46SEmmanuel Vadot compatible = "ethernet-phy-id001c.c916"; 19001950c46SEmmanuel Vadot reg = <0x1>; 19101950c46SEmmanuel Vadot }; 19201950c46SEmmanuel Vadot }; 19301950c46SEmmanuel Vadot}; 19401950c46SEmmanuel Vadot 19501950c46SEmmanuel Vadot&gpu { 19601950c46SEmmanuel Vadot mali-supply = <&mt6315_7_vbuck1>; 19701950c46SEmmanuel Vadot status = "okay"; 19801950c46SEmmanuel Vadot}; 19901950c46SEmmanuel Vadot 20001950c46SEmmanuel Vadot&i2c2 { 20101950c46SEmmanuel Vadot clock-frequency = <400000>; 20201950c46SEmmanuel Vadot pinctrl-0 = <&i2c2_pins>; 20301950c46SEmmanuel Vadot pinctrl-names = "default"; 20401950c46SEmmanuel Vadot status = "okay"; 20501950c46SEmmanuel Vadot 20601950c46SEmmanuel Vadot typec-mux@48 { 20701950c46SEmmanuel Vadot compatible = "ite,it5205"; 20801950c46SEmmanuel Vadot reg = <0x48>; 20901950c46SEmmanuel Vadot 21001950c46SEmmanuel Vadot mode-switch; 21101950c46SEmmanuel Vadot orientation-switch; 21201950c46SEmmanuel Vadot 21301950c46SEmmanuel Vadot vcc-supply = <&mt6359_vibr_ldo_reg>; 21401950c46SEmmanuel Vadot 21501950c46SEmmanuel Vadot port { 21601950c46SEmmanuel Vadot it5205_sbu_mux: endpoint { 21701950c46SEmmanuel Vadot remote-endpoint = <&typec_con_mux>; 21801950c46SEmmanuel Vadot }; 21901950c46SEmmanuel Vadot }; 22001950c46SEmmanuel Vadot }; 22101950c46SEmmanuel Vadot}; 22201950c46SEmmanuel Vadot 22301950c46SEmmanuel Vadot&i2c4 { 22401950c46SEmmanuel Vadot clock-frequency = <400000>; 22501950c46SEmmanuel Vadot pinctrl-0 = <&i2c4_pins>; 22601950c46SEmmanuel Vadot pinctrl-names = "default"; 22701950c46SEmmanuel Vadot status = "okay"; 22801950c46SEmmanuel Vadot 22901950c46SEmmanuel Vadot /* I2C4 exposed at 39-pins MIPI-LCD connector */ 23001950c46SEmmanuel Vadot}; 23101950c46SEmmanuel Vadot 23201950c46SEmmanuel Vadot&i2c6 { 23301950c46SEmmanuel Vadot clock-frequency = <400000>; 23401950c46SEmmanuel Vadot pinctrl-0 = <&i2c6_pins>; 23501950c46SEmmanuel Vadot pinctrl-names = "default"; 23601950c46SEmmanuel Vadot status = "okay"; 23701950c46SEmmanuel Vadot 23801950c46SEmmanuel Vadot mt6360: pmic@34 { 23901950c46SEmmanuel Vadot compatible = "mediatek,mt6360"; 24001950c46SEmmanuel Vadot reg = <0x34>; 24101950c46SEmmanuel Vadot interrupts-extended = <&pio 101 IRQ_TYPE_EDGE_FALLING>; 24201950c46SEmmanuel Vadot interrupt-names = "IRQB"; 24301950c46SEmmanuel Vadot interrupt-controller; 24401950c46SEmmanuel Vadot #interrupt-cells = <1>; 24501950c46SEmmanuel Vadot pinctrl-0 = <&mt6360_pins>; 24601950c46SEmmanuel Vadot 24701950c46SEmmanuel Vadot charger { 24801950c46SEmmanuel Vadot compatible = "mediatek,mt6360-chg"; 24901950c46SEmmanuel Vadot richtek,vinovp-microvolt = <14500000>; 25001950c46SEmmanuel Vadot 25101950c46SEmmanuel Vadot otg_vbus_regulator: usb-otg-vbus-regulator { 25201950c46SEmmanuel Vadot regulator-name = "usb-otg-vbus"; 25301950c46SEmmanuel Vadot regulator-min-microvolt = <4425000>; 25401950c46SEmmanuel Vadot regulator-max-microvolt = <5825000>; 25501950c46SEmmanuel Vadot }; 25601950c46SEmmanuel Vadot }; 25701950c46SEmmanuel Vadot 25801950c46SEmmanuel Vadot regulator { 25901950c46SEmmanuel Vadot compatible = "mediatek,mt6360-regulator"; 26001950c46SEmmanuel Vadot LDO_VIN1-supply = <&vsys_buck>; 26101950c46SEmmanuel Vadot LDO_VIN3-supply = <&mt6360_buck2>; 26201950c46SEmmanuel Vadot 26301950c46SEmmanuel Vadot mt6360_buck1: buck1 { 26401950c46SEmmanuel Vadot regulator-name = "emi_vdd2"; 26501950c46SEmmanuel Vadot regulator-min-microvolt = <300000>; 26601950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 26701950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 26801950c46SEmmanuel Vadot MT6360_OPMODE_LP 26901950c46SEmmanuel Vadot MT6360_OPMODE_ULP>; 27001950c46SEmmanuel Vadot regulator-always-on; 27101950c46SEmmanuel Vadot }; 27201950c46SEmmanuel Vadot 27301950c46SEmmanuel Vadot mt6360_buck2: buck2 { 27401950c46SEmmanuel Vadot regulator-name = "emi_vddq"; 27501950c46SEmmanuel Vadot regulator-min-microvolt = <300000>; 27601950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 27701950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 27801950c46SEmmanuel Vadot MT6360_OPMODE_LP 27901950c46SEmmanuel Vadot MT6360_OPMODE_ULP>; 28001950c46SEmmanuel Vadot regulator-always-on; 28101950c46SEmmanuel Vadot }; 28201950c46SEmmanuel Vadot 28301950c46SEmmanuel Vadot mt6360_ldo1: ldo1 { 28401950c46SEmmanuel Vadot regulator-name = "ext_lcd_3v3"; 28501950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 28601950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 28701950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 28801950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 28901950c46SEmmanuel Vadot regulator-always-on; 29001950c46SEmmanuel Vadot }; 29101950c46SEmmanuel Vadot 29201950c46SEmmanuel Vadot mt6360_ldo2: ldo2 { 29301950c46SEmmanuel Vadot regulator-name = "panel1_p1v8"; 29401950c46SEmmanuel Vadot regulator-min-microvolt = <1800000>; 29501950c46SEmmanuel Vadot regulator-max-microvolt = <1800000>; 29601950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 29701950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 29801950c46SEmmanuel Vadot }; 29901950c46SEmmanuel Vadot 30001950c46SEmmanuel Vadot mt6360_ldo3: ldo3 { 30101950c46SEmmanuel Vadot regulator-name = "vmc_pmu"; 30201950c46SEmmanuel Vadot regulator-min-microvolt = <1200000>; 30301950c46SEmmanuel Vadot regulator-max-microvolt = <3600000>; 30401950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 30501950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 30601950c46SEmmanuel Vadot }; 30701950c46SEmmanuel Vadot 30801950c46SEmmanuel Vadot mt6360_ldo5: ldo5 { 30901950c46SEmmanuel Vadot regulator-name = "vmch_pmu"; 31001950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 31101950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 31201950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 31301950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 31401950c46SEmmanuel Vadot regulator-always-on; 31501950c46SEmmanuel Vadot }; 31601950c46SEmmanuel Vadot 31701950c46SEmmanuel Vadot mt6360_ldo6: ldo6 { 31801950c46SEmmanuel Vadot regulator-name = "mt6360_ldo6"; /* Test point */ 31901950c46SEmmanuel Vadot regulator-min-microvolt = <500000>; 32001950c46SEmmanuel Vadot regulator-max-microvolt = <2100000>; 32101950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 32201950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 32301950c46SEmmanuel Vadot }; 32401950c46SEmmanuel Vadot 32501950c46SEmmanuel Vadot mt6360_ldo7: ldo7 { 32601950c46SEmmanuel Vadot regulator-name = "emi_vmddr_en"; 32701950c46SEmmanuel Vadot regulator-min-microvolt = <500000>; 32801950c46SEmmanuel Vadot regulator-max-microvolt = <2100000>; 32901950c46SEmmanuel Vadot regulator-allowed-modes = <MT6360_OPMODE_NORMAL 33001950c46SEmmanuel Vadot MT6360_OPMODE_LP>; 33101950c46SEmmanuel Vadot regulator-always-on; 33201950c46SEmmanuel Vadot }; 33301950c46SEmmanuel Vadot }; 33401950c46SEmmanuel Vadot 33501950c46SEmmanuel Vadot typec { 33601950c46SEmmanuel Vadot compatible = "mediatek,mt6360-tcpc"; 33701950c46SEmmanuel Vadot interrupts-extended = <&pio 100 IRQ_TYPE_LEVEL_LOW>; 33801950c46SEmmanuel Vadot interrupt-names = "PD_IRQB"; 33901950c46SEmmanuel Vadot 34001950c46SEmmanuel Vadot connector { 34101950c46SEmmanuel Vadot compatible = "usb-c-connector"; 34201950c46SEmmanuel Vadot label = "USB-C"; 34301950c46SEmmanuel Vadot data-role = "dual"; 34401950c46SEmmanuel Vadot op-sink-microwatt = <10000000>; 34501950c46SEmmanuel Vadot power-role = "dual"; 34601950c46SEmmanuel Vadot try-power-role = "sink"; 34701950c46SEmmanuel Vadot 34801950c46SEmmanuel Vadot source-pdos = <PDO_FIXED(5000, 1000, 34901950c46SEmmanuel Vadot PDO_FIXED_DUAL_ROLE | 35001950c46SEmmanuel Vadot PDO_FIXED_DATA_SWAP)>; 35101950c46SEmmanuel Vadot sink-pdos = <PDO_FIXED(5000, 3000, 35201950c46SEmmanuel Vadot PDO_FIXED_DUAL_ROLE | 35301950c46SEmmanuel Vadot PDO_FIXED_DATA_SWAP)>; 35401950c46SEmmanuel Vadot 35501950c46SEmmanuel Vadot ports { 35601950c46SEmmanuel Vadot #address-cells = <1>; 35701950c46SEmmanuel Vadot #size-cells = <0>; 35801950c46SEmmanuel Vadot 35901950c46SEmmanuel Vadot port@0 { 36001950c46SEmmanuel Vadot reg = <0>; 36101950c46SEmmanuel Vadot typec_con_hs: endpoint { 36201950c46SEmmanuel Vadot remote-endpoint = <&mtu3_hs0_role_sw>; 36301950c46SEmmanuel Vadot }; 36401950c46SEmmanuel Vadot }; 36501950c46SEmmanuel Vadot 36601950c46SEmmanuel Vadot port@2 { 36701950c46SEmmanuel Vadot reg = <2>; 36801950c46SEmmanuel Vadot typec_con_mux: endpoint { 36901950c46SEmmanuel Vadot remote-endpoint = <&it5205_sbu_mux>; 37001950c46SEmmanuel Vadot }; 37101950c46SEmmanuel Vadot }; 37201950c46SEmmanuel Vadot }; 37301950c46SEmmanuel Vadot }; 37401950c46SEmmanuel Vadot }; 37501950c46SEmmanuel Vadot }; 37601950c46SEmmanuel Vadot}; 37701950c46SEmmanuel Vadot 3780e8011faSEmmanuel Vadot&mfg0 { 3790e8011faSEmmanuel Vadot domain-supply = <&mt6315_7_vbuck1>; 3800e8011faSEmmanuel Vadot}; 3810e8011faSEmmanuel Vadot 3820e8011faSEmmanuel Vadot&mfg1 { 3830e8011faSEmmanuel Vadot domain-supply = <&mt6359_vsram_others_ldo_reg>; 3840e8011faSEmmanuel Vadot}; 3850e8011faSEmmanuel Vadot 38601950c46SEmmanuel Vadot/* MMC0 Controller: eMMC (HS400). Power lines are shared with UFS! */ 38701950c46SEmmanuel Vadot&mmc0 { 38801950c46SEmmanuel Vadot pinctrl-names = "default", "state_uhs"; 38901950c46SEmmanuel Vadot pinctrl-0 = <&mmc0_default_pins>; 39001950c46SEmmanuel Vadot pinctrl-1 = <&mmc0_uhs_pins>; 39101950c46SEmmanuel Vadot bus-width = <8>; 39201950c46SEmmanuel Vadot max-frequency = <200000000>; 39301950c46SEmmanuel Vadot hs400-ds-delay = <0x14c11>; 39401950c46SEmmanuel Vadot cap-mmc-highspeed; 39501950c46SEmmanuel Vadot cap-mmc-hw-reset; 39601950c46SEmmanuel Vadot mmc-hs200-1_8v; 39701950c46SEmmanuel Vadot mmc-hs400-1_8v; 39801950c46SEmmanuel Vadot no-sdio; 39901950c46SEmmanuel Vadot no-sd; 40001950c46SEmmanuel Vadot non-removable; 40101950c46SEmmanuel Vadot vmmc-supply = <&mt6359_vemc_1_ldo_reg>; 40201950c46SEmmanuel Vadot vqmmc-supply = <&mt6359_vufs_ldo_reg>; 40301950c46SEmmanuel Vadot status = "okay"; 40401950c46SEmmanuel Vadot}; 40501950c46SEmmanuel Vadot 40601950c46SEmmanuel Vadot/* MMC1 Controller: MicroSD card slot */ 40701950c46SEmmanuel Vadot&mmc1 { 40801950c46SEmmanuel Vadot pinctrl-names = "default", "state_uhs"; 40901950c46SEmmanuel Vadot pinctrl-0 = <&mmc1_default_pins>, <&mmc1_pins_detect>; 41001950c46SEmmanuel Vadot pinctrl-1 = <&mmc1_default_pins>; 41101950c46SEmmanuel Vadot bus-width = <4>; 41201950c46SEmmanuel Vadot max-frequency = <200000000>; 41301950c46SEmmanuel Vadot cap-sd-highspeed; 41401950c46SEmmanuel Vadot cd-gpios = <&pio 129 GPIO_ACTIVE_LOW>; 41501950c46SEmmanuel Vadot no-mmc; 41601950c46SEmmanuel Vadot no-sdio; 41701950c46SEmmanuel Vadot sd-uhs-sdr50; 41801950c46SEmmanuel Vadot sd-uhs-sdr104; 41901950c46SEmmanuel Vadot vmmc-supply = <&mt6360_ldo5>; 42001950c46SEmmanuel Vadot vqmmc-supply = <&mt6360_ldo3>; 42101950c46SEmmanuel Vadot status = "okay"; 42201950c46SEmmanuel Vadot}; 42301950c46SEmmanuel Vadot 42401950c46SEmmanuel Vadot&mt6359_vaud18_ldo_reg { 42501950c46SEmmanuel Vadot regulator-always-on; 42601950c46SEmmanuel Vadot}; 42701950c46SEmmanuel Vadot 42801950c46SEmmanuel Vadot&mt6359_vbbck_ldo_reg { 42901950c46SEmmanuel Vadot regulator-always-on; 43001950c46SEmmanuel Vadot}; 43101950c46SEmmanuel Vadot 43201950c46SEmmanuel Vadot/* For USB Hub */ 43301950c46SEmmanuel Vadot&mt6359_vcamio_ldo_reg { 43401950c46SEmmanuel Vadot regulator-always-on; 43501950c46SEmmanuel Vadot}; 43601950c46SEmmanuel Vadot 43701950c46SEmmanuel Vadot&mt6359_vcn33_2_bt_ldo_reg { 43801950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 43901950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 44001950c46SEmmanuel Vadot}; 44101950c46SEmmanuel Vadot 44201950c46SEmmanuel Vadot&mt6359_vcore_buck_reg { 44301950c46SEmmanuel Vadot regulator-always-on; 44401950c46SEmmanuel Vadot}; 44501950c46SEmmanuel Vadot 44601950c46SEmmanuel Vadot&mt6359_vgpu11_buck_reg { 44701950c46SEmmanuel Vadot regulator-always-on; 44801950c46SEmmanuel Vadot}; 44901950c46SEmmanuel Vadot 45001950c46SEmmanuel Vadot&mt6359_vproc1_buck_reg { 45101950c46SEmmanuel Vadot regulator-always-on; 45201950c46SEmmanuel Vadot}; 45301950c46SEmmanuel Vadot 45401950c46SEmmanuel Vadot&mt6359_vproc2_buck_reg { 45501950c46SEmmanuel Vadot regulator-always-on; 45601950c46SEmmanuel Vadot}; 45701950c46SEmmanuel Vadot 45801950c46SEmmanuel Vadot&mt6359_vpu_buck_reg { 45901950c46SEmmanuel Vadot regulator-always-on; 46001950c46SEmmanuel Vadot}; 46101950c46SEmmanuel Vadot 46201950c46SEmmanuel Vadot&mt6359_vrf12_ldo_reg { 46301950c46SEmmanuel Vadot regulator-always-on; 46401950c46SEmmanuel Vadot}; 46501950c46SEmmanuel Vadot 46601950c46SEmmanuel Vadot&mt6359_vsram_md_ldo_reg { 46701950c46SEmmanuel Vadot regulator-always-on; 46801950c46SEmmanuel Vadot}; 46901950c46SEmmanuel Vadot 47001950c46SEmmanuel Vadot/* for GPU SRAM */ 47101950c46SEmmanuel Vadot&mt6359_vsram_others_ldo_reg { 47201950c46SEmmanuel Vadot regulator-min-microvolt = <750000>; 47301950c46SEmmanuel Vadot regulator-max-microvolt = <750000>; 47401950c46SEmmanuel Vadot}; 47501950c46SEmmanuel Vadot 47601950c46SEmmanuel Vadot&pio { 4770e8011faSEmmanuel Vadot mediatek,rsel-resistance-in-si-unit; 4780e8011faSEmmanuel Vadot 47901950c46SEmmanuel Vadot eth_default_pins: eth-default-pins { 48001950c46SEmmanuel Vadot pins-cc { 48101950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO85__FUNC_GBE_TXC>, 48201950c46SEmmanuel Vadot <PINMUX_GPIO86__FUNC_GBE_RXC>, 48301950c46SEmmanuel Vadot <PINMUX_GPIO87__FUNC_GBE_RXDV>, 48401950c46SEmmanuel Vadot <PINMUX_GPIO88__FUNC_GBE_TXEN>; 48501950c46SEmmanuel Vadot drive-strength = <8>; 48601950c46SEmmanuel Vadot }; 48701950c46SEmmanuel Vadot 48801950c46SEmmanuel Vadot pins-mdio { 48901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO89__FUNC_GBE_MDC>, 49001950c46SEmmanuel Vadot <PINMUX_GPIO90__FUNC_GBE_MDIO>; 49101950c46SEmmanuel Vadot input-enable; 49201950c46SEmmanuel Vadot }; 49301950c46SEmmanuel Vadot 49401950c46SEmmanuel Vadot pins-power { 49501950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO91__FUNC_GPIO91>, 49601950c46SEmmanuel Vadot <PINMUX_GPIO92__FUNC_GPIO92>; 49701950c46SEmmanuel Vadot output-high; 49801950c46SEmmanuel Vadot }; 49901950c46SEmmanuel Vadot 50001950c46SEmmanuel Vadot pins-rst { 50101950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO93__FUNC_GPIO93>; 50201950c46SEmmanuel Vadot }; 50301950c46SEmmanuel Vadot 50401950c46SEmmanuel Vadot pins-rxd { 50501950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO81__FUNC_GBE_RXD3>, 50601950c46SEmmanuel Vadot <PINMUX_GPIO82__FUNC_GBE_RXD2>, 50701950c46SEmmanuel Vadot <PINMUX_GPIO83__FUNC_GBE_RXD1>, 50801950c46SEmmanuel Vadot <PINMUX_GPIO84__FUNC_GBE_RXD0>; 50901950c46SEmmanuel Vadot }; 51001950c46SEmmanuel Vadot 51101950c46SEmmanuel Vadot pins-txd { 51201950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO77__FUNC_GBE_TXD3>, 51301950c46SEmmanuel Vadot <PINMUX_GPIO78__FUNC_GBE_TXD2>, 51401950c46SEmmanuel Vadot <PINMUX_GPIO79__FUNC_GBE_TXD1>, 51501950c46SEmmanuel Vadot <PINMUX_GPIO80__FUNC_GBE_TXD0>; 51601950c46SEmmanuel Vadot drive-strength = <8>; 51701950c46SEmmanuel Vadot }; 51801950c46SEmmanuel Vadot }; 51901950c46SEmmanuel Vadot 52001950c46SEmmanuel Vadot eth_sleep_pins: eth-sleep-pins { 52101950c46SEmmanuel Vadot pins-cc { 52201950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO85__FUNC_GPIO85>, 52301950c46SEmmanuel Vadot <PINMUX_GPIO86__FUNC_GPIO86>, 52401950c46SEmmanuel Vadot <PINMUX_GPIO87__FUNC_GPIO87>, 52501950c46SEmmanuel Vadot <PINMUX_GPIO88__FUNC_GPIO88>; 52601950c46SEmmanuel Vadot }; 52701950c46SEmmanuel Vadot 52801950c46SEmmanuel Vadot pins-mdio { 52901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO89__FUNC_GPIO89>, 53001950c46SEmmanuel Vadot <PINMUX_GPIO90__FUNC_GPIO90>; 53101950c46SEmmanuel Vadot bias-disable; 53201950c46SEmmanuel Vadot input-disable; 53301950c46SEmmanuel Vadot }; 53401950c46SEmmanuel Vadot 53501950c46SEmmanuel Vadot pins-rxd { 53601950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO81__FUNC_GPIO81>, 53701950c46SEmmanuel Vadot <PINMUX_GPIO82__FUNC_GPIO82>, 53801950c46SEmmanuel Vadot <PINMUX_GPIO83__FUNC_GPIO83>, 53901950c46SEmmanuel Vadot <PINMUX_GPIO84__FUNC_GPIO84>; 54001950c46SEmmanuel Vadot }; 54101950c46SEmmanuel Vadot 54201950c46SEmmanuel Vadot pins-txd { 54301950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO77__FUNC_GPIO77>, 54401950c46SEmmanuel Vadot <PINMUX_GPIO78__FUNC_GPIO78>, 54501950c46SEmmanuel Vadot <PINMUX_GPIO79__FUNC_GPIO79>, 54601950c46SEmmanuel Vadot <PINMUX_GPIO80__FUNC_GPIO80>; 54701950c46SEmmanuel Vadot }; 54801950c46SEmmanuel Vadot }; 54901950c46SEmmanuel Vadot 55001950c46SEmmanuel Vadot i2c2_pins: i2c2-pins { 55101950c46SEmmanuel Vadot pins-bus { 55201950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO12__FUNC_SDA2>, 55301950c46SEmmanuel Vadot <PINMUX_GPIO13__FUNC_SCL2>; 5540e8011faSEmmanuel Vadot bias-pull-up = <1000>; 55501950c46SEmmanuel Vadot drive-strength = <6>; 55601950c46SEmmanuel Vadot drive-strength-microamp = <1000>; 55701950c46SEmmanuel Vadot }; 55801950c46SEmmanuel Vadot }; 55901950c46SEmmanuel Vadot 56001950c46SEmmanuel Vadot i2c4_pins: i2c4-pins { 56101950c46SEmmanuel Vadot pins-bus { 56201950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO16__FUNC_SDA4>, 56301950c46SEmmanuel Vadot <PINMUX_GPIO17__FUNC_SCL4>; 5640e8011faSEmmanuel Vadot bias-pull-up = <1000>; 56501950c46SEmmanuel Vadot drive-strength-microamp = <1000>; 56601950c46SEmmanuel Vadot }; 56701950c46SEmmanuel Vadot }; 56801950c46SEmmanuel Vadot 56901950c46SEmmanuel Vadot i2c6_pins: i2c6-pins { 57001950c46SEmmanuel Vadot pins { 57101950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO25__FUNC_SDA6>, 57201950c46SEmmanuel Vadot <PINMUX_GPIO26__FUNC_SCL6>; 5730e8011faSEmmanuel Vadot bias-disable; 57401950c46SEmmanuel Vadot }; 57501950c46SEmmanuel Vadot }; 57601950c46SEmmanuel Vadot 57701950c46SEmmanuel Vadot mmc0_default_pins: mmc0-default-pins { 57801950c46SEmmanuel Vadot pins-clk { 57901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>; 58001950c46SEmmanuel Vadot bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 58101950c46SEmmanuel Vadot drive-strength = <6>; 58201950c46SEmmanuel Vadot }; 58301950c46SEmmanuel Vadot 58401950c46SEmmanuel Vadot pins-cmd-dat { 58501950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>, 58601950c46SEmmanuel Vadot <PINMUX_GPIO125__FUNC_MSDC0_DAT1>, 58701950c46SEmmanuel Vadot <PINMUX_GPIO124__FUNC_MSDC0_DAT2>, 58801950c46SEmmanuel Vadot <PINMUX_GPIO123__FUNC_MSDC0_DAT3>, 58901950c46SEmmanuel Vadot <PINMUX_GPIO119__FUNC_MSDC0_DAT4>, 59001950c46SEmmanuel Vadot <PINMUX_GPIO118__FUNC_MSDC0_DAT5>, 59101950c46SEmmanuel Vadot <PINMUX_GPIO117__FUNC_MSDC0_DAT6>, 59201950c46SEmmanuel Vadot <PINMUX_GPIO116__FUNC_MSDC0_DAT7>, 59301950c46SEmmanuel Vadot <PINMUX_GPIO121__FUNC_MSDC0_CMD>; 59401950c46SEmmanuel Vadot bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 59501950c46SEmmanuel Vadot drive-strength = <6>; 59601950c46SEmmanuel Vadot input-enable; 59701950c46SEmmanuel Vadot }; 59801950c46SEmmanuel Vadot 59901950c46SEmmanuel Vadot pins-rst { 60001950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>; 60101950c46SEmmanuel Vadot bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 60201950c46SEmmanuel Vadot drive-strength = <6>; 60301950c46SEmmanuel Vadot }; 60401950c46SEmmanuel Vadot }; 60501950c46SEmmanuel Vadot 60601950c46SEmmanuel Vadot mmc0_uhs_pins: mmc0-uhs-pins { 60701950c46SEmmanuel Vadot pins-clk { 60801950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO122__FUNC_MSDC0_CLK>; 60901950c46SEmmanuel Vadot bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 61001950c46SEmmanuel Vadot drive-strength = <8>; 61101950c46SEmmanuel Vadot }; 61201950c46SEmmanuel Vadot 61301950c46SEmmanuel Vadot pins-cmd-dat { 61401950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO126__FUNC_MSDC0_DAT0>, 61501950c46SEmmanuel Vadot <PINMUX_GPIO125__FUNC_MSDC0_DAT1>, 61601950c46SEmmanuel Vadot <PINMUX_GPIO124__FUNC_MSDC0_DAT2>, 61701950c46SEmmanuel Vadot <PINMUX_GPIO123__FUNC_MSDC0_DAT3>, 61801950c46SEmmanuel Vadot <PINMUX_GPIO119__FUNC_MSDC0_DAT4>, 61901950c46SEmmanuel Vadot <PINMUX_GPIO118__FUNC_MSDC0_DAT5>, 62001950c46SEmmanuel Vadot <PINMUX_GPIO117__FUNC_MSDC0_DAT6>, 62101950c46SEmmanuel Vadot <PINMUX_GPIO116__FUNC_MSDC0_DAT7>, 62201950c46SEmmanuel Vadot <PINMUX_GPIO121__FUNC_MSDC0_CMD>; 62301950c46SEmmanuel Vadot bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 62401950c46SEmmanuel Vadot drive-strength = <8>; 62501950c46SEmmanuel Vadot input-enable; 62601950c46SEmmanuel Vadot }; 62701950c46SEmmanuel Vadot 62801950c46SEmmanuel Vadot pins-ds { 62901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO127__FUNC_MSDC0_DSL>; 63001950c46SEmmanuel Vadot bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 63101950c46SEmmanuel Vadot drive-strength = <8>; 63201950c46SEmmanuel Vadot }; 63301950c46SEmmanuel Vadot 63401950c46SEmmanuel Vadot pins-rst { 63501950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO120__FUNC_MSDC0_RSTB>; 63601950c46SEmmanuel Vadot bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 63701950c46SEmmanuel Vadot drive-strength = <8>; 63801950c46SEmmanuel Vadot }; 63901950c46SEmmanuel Vadot }; 64001950c46SEmmanuel Vadot 64101950c46SEmmanuel Vadot mmc1_default_pins: mmc1-default-pins { 64201950c46SEmmanuel Vadot pins-clk { 64301950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO111__FUNC_MSDC1_CLK>; 64401950c46SEmmanuel Vadot bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 64501950c46SEmmanuel Vadot drive-strength = <8>; 64601950c46SEmmanuel Vadot }; 64701950c46SEmmanuel Vadot 64801950c46SEmmanuel Vadot pins-cmd-dat { 64901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO110__FUNC_MSDC1_CMD>, 65001950c46SEmmanuel Vadot <PINMUX_GPIO112__FUNC_MSDC1_DAT0>, 65101950c46SEmmanuel Vadot <PINMUX_GPIO113__FUNC_MSDC1_DAT1>, 65201950c46SEmmanuel Vadot <PINMUX_GPIO114__FUNC_MSDC1_DAT2>, 65301950c46SEmmanuel Vadot <PINMUX_GPIO115__FUNC_MSDC1_DAT3>; 65401950c46SEmmanuel Vadot bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 65501950c46SEmmanuel Vadot drive-strength = <8>; 65601950c46SEmmanuel Vadot input-enable; 65701950c46SEmmanuel Vadot }; 65801950c46SEmmanuel Vadot }; 65901950c46SEmmanuel Vadot 66001950c46SEmmanuel Vadot mmc1_pins_detect: mmc1-detect-pins { 66101950c46SEmmanuel Vadot pins-insert { 66201950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO129__FUNC_GPIO129>; 66301950c46SEmmanuel Vadot bias-pull-up; 66401950c46SEmmanuel Vadot }; 66501950c46SEmmanuel Vadot }; 66601950c46SEmmanuel Vadot 66701950c46SEmmanuel Vadot mt6360_pins: mt6360-pins { 66801950c46SEmmanuel Vadot pins-irq { 66901950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO100__FUNC_GPIO100>, 67001950c46SEmmanuel Vadot <PINMUX_GPIO101__FUNC_GPIO101>; 67101950c46SEmmanuel Vadot input-enable; 67201950c46SEmmanuel Vadot bias-pull-up; 67301950c46SEmmanuel Vadot }; 67401950c46SEmmanuel Vadot }; 67501950c46SEmmanuel Vadot 67601950c46SEmmanuel Vadot pcie0_default_pins: pcie0-default-pins { 67701950c46SEmmanuel Vadot pins-bus { 67801950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO19__FUNC_WAKEN>, 67901950c46SEmmanuel Vadot <PINMUX_GPIO20__FUNC_PERSTN>, 68001950c46SEmmanuel Vadot <PINMUX_GPIO21__FUNC_CLKREQN>; 68101950c46SEmmanuel Vadot bias-pull-up; 68201950c46SEmmanuel Vadot }; 68301950c46SEmmanuel Vadot }; 68401950c46SEmmanuel Vadot 68501950c46SEmmanuel Vadot pcie1_default_pins: pcie1-default-pins { 68601950c46SEmmanuel Vadot pins-bus { 68701950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO0__FUNC_PERSTN_1>, 68801950c46SEmmanuel Vadot <PINMUX_GPIO1__FUNC_CLKREQN_1>, 68901950c46SEmmanuel Vadot <PINMUX_GPIO2__FUNC_WAKEN_1>; 69001950c46SEmmanuel Vadot bias-disable; 69101950c46SEmmanuel Vadot }; 69201950c46SEmmanuel Vadot }; 69301950c46SEmmanuel Vadot 69401950c46SEmmanuel Vadot spi1_pins: spi1-default-pins { 69501950c46SEmmanuel Vadot pins-bus { 69601950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO136__FUNC_SPIM1_CSB>, 69701950c46SEmmanuel Vadot <PINMUX_GPIO137__FUNC_SPIM1_CLK>, 69801950c46SEmmanuel Vadot <PINMUX_GPIO138__FUNC_SPIM1_MO>, 69901950c46SEmmanuel Vadot <PINMUX_GPIO139__FUNC_SPIM1_MI>; 70001950c46SEmmanuel Vadot bias-disable; 70101950c46SEmmanuel Vadot }; 70201950c46SEmmanuel Vadot }; 70301950c46SEmmanuel Vadot 70401950c46SEmmanuel Vadot spi2_pins: spi2-default-pins { 70501950c46SEmmanuel Vadot pins-bus { 70601950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO140__FUNC_SPIM2_CSB>, 70701950c46SEmmanuel Vadot <PINMUX_GPIO141__FUNC_SPIM2_CLK>, 70801950c46SEmmanuel Vadot <PINMUX_GPIO142__FUNC_SPIM2_MO>, 70901950c46SEmmanuel Vadot <PINMUX_GPIO143__FUNC_SPIM2_MI>; 71001950c46SEmmanuel Vadot bias-disable; 71101950c46SEmmanuel Vadot }; 71201950c46SEmmanuel Vadot }; 71301950c46SEmmanuel Vadot 71401950c46SEmmanuel Vadot uart0_pins: uart0-pins { 71501950c46SEmmanuel Vadot pins-bus { 71601950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO98__FUNC_UTXD0>, 71701950c46SEmmanuel Vadot <PINMUX_GPIO99__FUNC_URXD0>; 71801950c46SEmmanuel Vadot }; 71901950c46SEmmanuel Vadot }; 72001950c46SEmmanuel Vadot 72101950c46SEmmanuel Vadot uart1_pins: uart1-pins { 72201950c46SEmmanuel Vadot pins-bus { 72301950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO102__FUNC_UTXD1>, 72401950c46SEmmanuel Vadot <PINMUX_GPIO103__FUNC_URXD1>; 72501950c46SEmmanuel Vadot }; 72601950c46SEmmanuel Vadot }; 72701950c46SEmmanuel Vadot 7280e8011faSEmmanuel Vadot usb3_port0_pins: usb3p0-default-pins { 7290e8011faSEmmanuel Vadot pins-vbus { 7300e8011faSEmmanuel Vadot pinmux = <PINMUX_GPIO63__FUNC_VBUSVALID>; 7310e8011faSEmmanuel Vadot input-enable; 7320e8011faSEmmanuel Vadot }; 7330e8011faSEmmanuel Vadot }; 7340e8011faSEmmanuel Vadot 7350e8011faSEmmanuel Vadot usb2_port0_pins: usb2p0-default-pins { 7360e8011faSEmmanuel Vadot pins-iddig { 7370e8011faSEmmanuel Vadot pinmux = <PINMUX_GPIO130__FUNC_IDDIG_1P>; 7380e8011faSEmmanuel Vadot input-enable; 7390e8011faSEmmanuel Vadot bias-pull-up; 7400e8011faSEmmanuel Vadot }; 7410e8011faSEmmanuel Vadot 7420e8011faSEmmanuel Vadot pins-vbus { 7430e8011faSEmmanuel Vadot pinmux = <PINMUX_GPIO131__FUNC_USB_DRVVBUS_1P>; 7440e8011faSEmmanuel Vadot output-low; 7450e8011faSEmmanuel Vadot }; 7460e8011faSEmmanuel Vadot }; 7470e8011faSEmmanuel Vadot 74801950c46SEmmanuel Vadot wifi_vreg_pins: wifi-vreg-pins { 74901950c46SEmmanuel Vadot pins-wifi-pmu-en { 75001950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO65__FUNC_GPIO65>; 75101950c46SEmmanuel Vadot output-high; 75201950c46SEmmanuel Vadot }; 75301950c46SEmmanuel Vadot 75401950c46SEmmanuel Vadot pins-wifi-vreg-en { 75501950c46SEmmanuel Vadot pinmux = <PINMUX_GPIO67__FUNC_GPIO67>; 75601950c46SEmmanuel Vadot }; 75701950c46SEmmanuel Vadot }; 75801950c46SEmmanuel Vadot}; 75901950c46SEmmanuel Vadot 76001950c46SEmmanuel Vadot&pcie0 { 76101950c46SEmmanuel Vadot pinctrl-names = "default"; 76201950c46SEmmanuel Vadot pinctrl-0 = <&pcie0_default_pins>; 76301950c46SEmmanuel Vadot status = "okay"; 76401950c46SEmmanuel Vadot}; 76501950c46SEmmanuel Vadot 76601950c46SEmmanuel Vadot&pcie1 { 76701950c46SEmmanuel Vadot pinctrl-names = "default"; 76801950c46SEmmanuel Vadot pinctrl-0 = <&pcie1_default_pins>; 76901950c46SEmmanuel Vadot status = "okay"; 77001950c46SEmmanuel Vadot}; 77101950c46SEmmanuel Vadot 7720e8011faSEmmanuel Vadot&pciephy { 7730e8011faSEmmanuel Vadot status = "okay"; 7740e8011faSEmmanuel Vadot}; 7750e8011faSEmmanuel Vadot 77601950c46SEmmanuel Vadot&pmic { 77701950c46SEmmanuel Vadot interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>; 77801950c46SEmmanuel Vadot}; 77901950c46SEmmanuel Vadot 78001950c46SEmmanuel Vadot&scp { 78101950c46SEmmanuel Vadot memory-region = <&scp_mem>; 78201950c46SEmmanuel Vadot status = "okay"; 78301950c46SEmmanuel Vadot}; 78401950c46SEmmanuel Vadot 78501950c46SEmmanuel Vadot&spi1 { 78601950c46SEmmanuel Vadot /* Exposed at 40 pin connector */ 78701950c46SEmmanuel Vadot pinctrl-0 = <&spi1_pins>; 78801950c46SEmmanuel Vadot pinctrl-names = "default"; 78901950c46SEmmanuel Vadot mediatek,pad-select = <0>; 79001950c46SEmmanuel Vadot #address-cells = <1>; 79101950c46SEmmanuel Vadot #size-cells = <0>; 79201950c46SEmmanuel Vadot status = "okay"; 79301950c46SEmmanuel Vadot}; 79401950c46SEmmanuel Vadot 79501950c46SEmmanuel Vadot&spi2 { 79601950c46SEmmanuel Vadot /* Exposed at 40 pin connector */ 79701950c46SEmmanuel Vadot pinctrl-0 = <&spi2_pins>; 79801950c46SEmmanuel Vadot pinctrl-names = "default"; 79901950c46SEmmanuel Vadot mediatek,pad-select = <0>; 80001950c46SEmmanuel Vadot #address-cells = <1>; 80101950c46SEmmanuel Vadot #size-cells = <0>; 80201950c46SEmmanuel Vadot status = "okay"; 80301950c46SEmmanuel Vadot}; 80401950c46SEmmanuel Vadot 80501950c46SEmmanuel Vadot&spmi { 80601950c46SEmmanuel Vadot #address-cells = <2>; 80701950c46SEmmanuel Vadot #size-cells = <0>; 80801950c46SEmmanuel Vadot 80901950c46SEmmanuel Vadot mt6315_6: pmic@6 { 81001950c46SEmmanuel Vadot compatible = "mediatek,mt6315-regulator"; 81101950c46SEmmanuel Vadot reg = <0x6 SPMI_USID>; 81201950c46SEmmanuel Vadot 81301950c46SEmmanuel Vadot regulators { 81401950c46SEmmanuel Vadot mt6315_6_vbuck1: vbuck1 { 81501950c46SEmmanuel Vadot regulator-compatible = "vbuck1"; 81601950c46SEmmanuel Vadot regulator-name = "Vbcpu"; 81701950c46SEmmanuel Vadot regulator-min-microvolt = <300000>; 81801950c46SEmmanuel Vadot regulator-max-microvolt = <1193750>; 81901950c46SEmmanuel Vadot regulator-enable-ramp-delay = <256>; 82001950c46SEmmanuel Vadot regulator-allowed-modes = <0 1 2>; 82101950c46SEmmanuel Vadot regulator-always-on; 82201950c46SEmmanuel Vadot }; 82301950c46SEmmanuel Vadot }; 82401950c46SEmmanuel Vadot }; 82501950c46SEmmanuel Vadot 82601950c46SEmmanuel Vadot mt6315_7: pmic@7 { 82701950c46SEmmanuel Vadot compatible = "mediatek,mt6315-regulator"; 82801950c46SEmmanuel Vadot reg = <0x7 SPMI_USID>; 82901950c46SEmmanuel Vadot 83001950c46SEmmanuel Vadot regulators { 83101950c46SEmmanuel Vadot mt6315_7_vbuck1: vbuck1 { 83201950c46SEmmanuel Vadot regulator-compatible = "vbuck1"; 83301950c46SEmmanuel Vadot regulator-name = "Vgpu"; 83401950c46SEmmanuel Vadot regulator-min-microvolt = <300000>; 83501950c46SEmmanuel Vadot regulator-max-microvolt = <1193750>; 83601950c46SEmmanuel Vadot regulator-enable-ramp-delay = <256>; 83701950c46SEmmanuel Vadot regulator-allowed-modes = <0 1 2>; 83801950c46SEmmanuel Vadot }; 83901950c46SEmmanuel Vadot }; 84001950c46SEmmanuel Vadot }; 84101950c46SEmmanuel Vadot}; 84201950c46SEmmanuel Vadot 8430e8011faSEmmanuel Vadot&u3phy0 { 8440e8011faSEmmanuel Vadot status = "okay"; 8450e8011faSEmmanuel Vadot}; 8460e8011faSEmmanuel Vadot 8470e8011faSEmmanuel Vadot&u3phy1 { 8480e8011faSEmmanuel Vadot status = "okay"; 8490e8011faSEmmanuel Vadot}; 8500e8011faSEmmanuel Vadot 8510e8011faSEmmanuel Vadot&u3phy2 { 8520e8011faSEmmanuel Vadot status = "okay"; 8530e8011faSEmmanuel Vadot}; 8540e8011faSEmmanuel Vadot 85501950c46SEmmanuel Vadot&uart0 { 85601950c46SEmmanuel Vadot /* Exposed at 40 pin connector */ 85701950c46SEmmanuel Vadot pinctrl-0 = <&uart0_pins>; 85801950c46SEmmanuel Vadot pinctrl-names = "default"; 85901950c46SEmmanuel Vadot status = "okay"; 86001950c46SEmmanuel Vadot}; 86101950c46SEmmanuel Vadot 86201950c46SEmmanuel Vadot&uart1 { 86301950c46SEmmanuel Vadot /* Exposed at 40 pin connector */ 86401950c46SEmmanuel Vadot pinctrl-0 = <&uart1_pins>; 86501950c46SEmmanuel Vadot pinctrl-names = "default"; 86601950c46SEmmanuel Vadot status = "okay"; 86701950c46SEmmanuel Vadot}; 86801950c46SEmmanuel Vadot 86901950c46SEmmanuel Vadot&ssusb0 { 8700e8011faSEmmanuel Vadot pinctrl-names = "default"; 8710e8011faSEmmanuel Vadot pinctrl-0 = <&usb3_port0_pins>; 87201950c46SEmmanuel Vadot role-switch-default-mode = "host"; 87301950c46SEmmanuel Vadot usb-role-switch; 87401950c46SEmmanuel Vadot vusb33-supply = <&mt6359_vusb_ldo_reg>; 87501950c46SEmmanuel Vadot status = "okay"; 87601950c46SEmmanuel Vadot 87701950c46SEmmanuel Vadot port { 87801950c46SEmmanuel Vadot mtu3_hs0_role_sw: endpoint { 87901950c46SEmmanuel Vadot remote-endpoint = <&typec_con_hs>; 88001950c46SEmmanuel Vadot }; 88101950c46SEmmanuel Vadot }; 88201950c46SEmmanuel Vadot}; 88301950c46SEmmanuel Vadot 88401950c46SEmmanuel Vadot&ssusb2 { 8850e8011faSEmmanuel Vadot pinctrl-names = "default"; 8860e8011faSEmmanuel Vadot pinctrl-0 = <&usb2_port0_pins>; 88701950c46SEmmanuel Vadot vusb33-supply = <&mt6359_vusb_ldo_reg>; 88801950c46SEmmanuel Vadot status = "okay"; 88901950c46SEmmanuel Vadot}; 89001950c46SEmmanuel Vadot 89101950c46SEmmanuel Vadot&xhci0 { 89201950c46SEmmanuel Vadot vbus-supply = <&otg_vbus_regulator>; 89301950c46SEmmanuel Vadot status = "okay"; 89401950c46SEmmanuel Vadot}; 89501950c46SEmmanuel Vadot 89601950c46SEmmanuel Vadot&xhci1 { 897*b2d2a78aSEmmanuel Vadot phys = <&u2port1 PHY_TYPE_USB2>; 89801950c46SEmmanuel Vadot /* MT7921's USB Bluetooth has issues with USB2 LPM */ 89901950c46SEmmanuel Vadot usb2-lpm-disable; 90001950c46SEmmanuel Vadot vusb33-supply = <&mt6359_vusb_ldo_reg>; 90101950c46SEmmanuel Vadot vbus-supply = <&vsys>; 902*b2d2a78aSEmmanuel Vadot mediatek,u3p-dis-msk = <1>; 90301950c46SEmmanuel Vadot status = "okay"; 90401950c46SEmmanuel Vadot}; 90501950c46SEmmanuel Vadot 90601950c46SEmmanuel Vadot&xhci2 { 90701950c46SEmmanuel Vadot vbus-supply = <&vsys>; 90801950c46SEmmanuel Vadot status = "okay"; 90901950c46SEmmanuel Vadot}; 910