1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 2df205de6SJoseph Lo#include "tegra186.dtsi" 3df205de6SJoseph Lo 402df3f03SThierry Reding#include <dt-bindings/mfd/max77620.h> 502df3f03SThierry Reding 6df205de6SJoseph Lo/ { 7df205de6SJoseph Lo model = "NVIDIA Tegra186 P3310 Processor Module"; 8df205de6SJoseph Lo compatible = "nvidia,p3310", "nvidia,tegra186"; 9df205de6SJoseph Lo 10df205de6SJoseph Lo aliases { 1180fdf7b4SThierry Reding sdhci0 = "/sdhci@3460000"; 1280fdf7b4SThierry Reding sdhci1 = "/sdhci@3400000"; 13df205de6SJoseph Lo serial0 = &uarta; 14a4c7aab2SThierry Reding i2c0 = "/bpmp/i2c"; 15a4c7aab2SThierry Reding i2c1 = "/i2c@3160000"; 16a4c7aab2SThierry Reding i2c2 = "/i2c@c240000"; 17a4c7aab2SThierry Reding i2c3 = "/i2c@3180000"; 18a4c7aab2SThierry Reding i2c4 = "/i2c@3190000"; 19a4c7aab2SThierry Reding i2c5 = "/i2c@31c0000"; 20a4c7aab2SThierry Reding i2c6 = "/i2c@c250000"; 21a4c7aab2SThierry Reding i2c7 = "/i2c@31e0000"; 22df205de6SJoseph Lo }; 23df205de6SJoseph Lo 24df205de6SJoseph Lo chosen { 25df205de6SJoseph Lo bootargs = "earlycon console=ttyS0,115200n8"; 26df205de6SJoseph Lo stdout-path = "serial0:115200n8"; 27df205de6SJoseph Lo }; 28df205de6SJoseph Lo 29df205de6SJoseph Lo memory { 30df205de6SJoseph Lo device_type = "memory"; 31df205de6SJoseph Lo reg = <0x0 0x80000000 0x2 0x00000000>; 32df205de6SJoseph Lo }; 33df205de6SJoseph Lo 3424975b8cSThierry Reding ethernet@2490000 { 3524975b8cSThierry Reding status = "okay"; 3624975b8cSThierry Reding 3724975b8cSThierry Reding phy-reset-gpios = <&gpio TEGRA_MAIN_GPIO(M, 4) GPIO_ACTIVE_LOW>; 3824975b8cSThierry Reding phy-handle = <&phy>; 3924975b8cSThierry Reding phy-mode = "rgmii"; 4024975b8cSThierry Reding 4124975b8cSThierry Reding mdio { 4224975b8cSThierry Reding #address-cells = <1>; 4324975b8cSThierry Reding #size-cells = <0>; 4424975b8cSThierry Reding 4524975b8cSThierry Reding phy: phy@0 { 4624975b8cSThierry Reding compatible = "ethernet-phy-ieee802.3-c22"; 4724975b8cSThierry Reding reg = <0x0>; 4824975b8cSThierry Reding interrupt-parent = <&gpio>; 4924975b8cSThierry Reding interrupts = <TEGRA_MAIN_GPIO(M, 5) IRQ_TYPE_LEVEL_HIGH>; 5024975b8cSThierry Reding }; 5124975b8cSThierry Reding }; 5224975b8cSThierry Reding }; 5324975b8cSThierry Reding 54301f12dcSThierry Reding memory-controller@2c00000 { 55301f12dcSThierry Reding status = "okay"; 56301f12dcSThierry Reding }; 57301f12dcSThierry Reding 58df205de6SJoseph Lo serial@3100000 { 59df205de6SJoseph Lo status = "okay"; 60df205de6SJoseph Lo }; 61df205de6SJoseph Lo 62a4c7aab2SThierry Reding i2c@3160000 { 63a4c7aab2SThierry Reding status = "okay"; 64b64994d1SThierry Reding 65b64994d1SThierry Reding power-monitor@40 { 66b64994d1SThierry Reding compatible = "ti,ina3221"; 67b64994d1SThierry Reding reg = <0x40>; 68b64994d1SThierry Reding }; 69b64994d1SThierry Reding 70b64994d1SThierry Reding power-monitor@41 { 71b64994d1SThierry Reding compatible = "ti,ina3221"; 72b64994d1SThierry Reding reg = <0x41>; 73b64994d1SThierry Reding }; 74a4c7aab2SThierry Reding }; 75a4c7aab2SThierry Reding 76a4c7aab2SThierry Reding i2c@3180000 { 77a4c7aab2SThierry Reding status = "okay"; 78a4c7aab2SThierry Reding }; 79a4c7aab2SThierry Reding 805bb88b7aSThierry Reding ddc: i2c@3190000 { 81a4c7aab2SThierry Reding status = "okay"; 82a4c7aab2SThierry Reding }; 83a4c7aab2SThierry Reding 84a4c7aab2SThierry Reding i2c@31c0000 { 85a4c7aab2SThierry Reding status = "okay"; 86a4c7aab2SThierry Reding }; 87a4c7aab2SThierry Reding 88a4c7aab2SThierry Reding i2c@31e0000 { 89a4c7aab2SThierry Reding status = "okay"; 90a4c7aab2SThierry Reding }; 91a4c7aab2SThierry Reding 9280fdf7b4SThierry Reding /* SDMMC1 (SD/MMC) */ 9380fdf7b4SThierry Reding sdhci@3400000 { 9480fdf7b4SThierry Reding cd-gpios = <&gpio TEGRA_MAIN_GPIO(P, 5) GPIO_ACTIVE_LOW>; 95102ca26aSThierry Reding wp-gpios = <&gpio TEGRA_MAIN_GPIO(P, 4) GPIO_ACTIVE_HIGH>; 9680fdf7b4SThierry Reding 9780fdf7b4SThierry Reding vqmmc-supply = <&vddio_sdmmc1>; 9880fdf7b4SThierry Reding }; 9980fdf7b4SThierry Reding 10080fdf7b4SThierry Reding /* SDMMC3 (SDIO) */ 10180fdf7b4SThierry Reding sdhci@3440000 { 10280fdf7b4SThierry Reding status = "okay"; 10380fdf7b4SThierry Reding }; 10480fdf7b4SThierry Reding 10580fdf7b4SThierry Reding /* SDMMC4 (eMMC) */ 10680fdf7b4SThierry Reding sdhci@3460000 { 10780fdf7b4SThierry Reding status = "okay"; 10880fdf7b4SThierry Reding bus-width = <8>; 10980fdf7b4SThierry Reding non-removable; 11080fdf7b4SThierry Reding 11180fdf7b4SThierry Reding vqmmc-supply = <&vdd_1v8_ap>; 11280fdf7b4SThierry Reding vmmc-supply = <&vdd_3v3_sys>; 11380fdf7b4SThierry Reding }; 11480fdf7b4SThierry Reding 115df205de6SJoseph Lo hsp@3c00000 { 116df205de6SJoseph Lo status = "okay"; 117df205de6SJoseph Lo }; 118df205de6SJoseph Lo 119a4c7aab2SThierry Reding i2c@c240000 { 120a4c7aab2SThierry Reding status = "okay"; 121a4c7aab2SThierry Reding }; 122a4c7aab2SThierry Reding 123a4c7aab2SThierry Reding i2c@c250000 { 124a4c7aab2SThierry Reding status = "okay"; 125a4c7aab2SThierry Reding }; 126a4c7aab2SThierry Reding 12793dbb44cSThierry Reding pmc@c360000 { 12893dbb44cSThierry Reding nvidia,invert-interrupt; 12993dbb44cSThierry Reding }; 13093dbb44cSThierry Reding 1310dfde133SThierry Reding cpus { 1320dfde133SThierry Reding cpu@0 { 1330dfde133SThierry Reding enable-method = "psci"; 1340dfde133SThierry Reding }; 1350dfde133SThierry Reding 1360dfde133SThierry Reding cpu@1 { 1370dfde133SThierry Reding enable-method = "psci"; 1380dfde133SThierry Reding }; 1390dfde133SThierry Reding 1400dfde133SThierry Reding cpu@2 { 1410dfde133SThierry Reding enable-method = "psci"; 1420dfde133SThierry Reding }; 1430dfde133SThierry Reding 1440dfde133SThierry Reding cpu@3 { 1450dfde133SThierry Reding enable-method = "psci"; 1460dfde133SThierry Reding }; 1470dfde133SThierry Reding 1480dfde133SThierry Reding cpu@4 { 1490dfde133SThierry Reding enable-method = "psci"; 1500dfde133SThierry Reding }; 1510dfde133SThierry Reding 1520dfde133SThierry Reding cpu@5 { 1530dfde133SThierry Reding enable-method = "psci"; 1540dfde133SThierry Reding }; 1550dfde133SThierry Reding }; 1560dfde133SThierry Reding 157df205de6SJoseph Lo bpmp { 158a4c7aab2SThierry Reding i2c { 159df205de6SJoseph Lo status = "okay"; 16002df3f03SThierry Reding 16102df3f03SThierry Reding pmic: pmic@3c { 16202df3f03SThierry Reding compatible = "maxim,max77620"; 16302df3f03SThierry Reding reg = <0x3c>; 16402df3f03SThierry Reding 16502df3f03SThierry Reding interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; 16602df3f03SThierry Reding #interrupt-cells = <2>; 16702df3f03SThierry Reding interrupt-controller; 16802df3f03SThierry Reding 16902df3f03SThierry Reding #gpio-cells = <2>; 17002df3f03SThierry Reding gpio-controller; 17102df3f03SThierry Reding 17202df3f03SThierry Reding pinctrl-names = "default"; 17302df3f03SThierry Reding pinctrl-0 = <&max77620_default>; 17402df3f03SThierry Reding 17502df3f03SThierry Reding max77620_default: pinmux { 17602df3f03SThierry Reding gpio0 { 17702df3f03SThierry Reding pins = "gpio0"; 17802df3f03SThierry Reding function = "gpio"; 17902df3f03SThierry Reding }; 18002df3f03SThierry Reding 18102df3f03SThierry Reding gpio1 { 18202df3f03SThierry Reding pins = "gpio1"; 18302df3f03SThierry Reding function = "fps-out"; 18402df3f03SThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_0>; 18502df3f03SThierry Reding }; 18602df3f03SThierry Reding 18702df3f03SThierry Reding gpio2 { 18802df3f03SThierry Reding pins = "gpio2"; 18902df3f03SThierry Reding function = "fps-out"; 19002df3f03SThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 19102df3f03SThierry Reding }; 19202df3f03SThierry Reding 19302df3f03SThierry Reding gpio3 { 19402df3f03SThierry Reding pins = "gpio3"; 19502df3f03SThierry Reding function = "fps-out"; 19602df3f03SThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 19702df3f03SThierry Reding }; 19802df3f03SThierry Reding 19902df3f03SThierry Reding gpio4 { 20002df3f03SThierry Reding pins = "gpio4"; 20102df3f03SThierry Reding function = "32k-out1"; 20202df3f03SThierry Reding drive-push-pull = <1>; 20302df3f03SThierry Reding }; 20402df3f03SThierry Reding 20502df3f03SThierry Reding gpio5 { 20602df3f03SThierry Reding pins = "gpio5"; 20702df3f03SThierry Reding function = "gpio"; 20802df3f03SThierry Reding drive-push-pull = <0>; 20902df3f03SThierry Reding }; 21002df3f03SThierry Reding 21102df3f03SThierry Reding gpio6 { 21202df3f03SThierry Reding pins = "gpio6"; 21302df3f03SThierry Reding function = "gpio"; 21402df3f03SThierry Reding drive-push-pull = <1>; 21502df3f03SThierry Reding }; 21602df3f03SThierry Reding 21702df3f03SThierry Reding gpio7 { 21802df3f03SThierry Reding pins = "gpio7"; 21902df3f03SThierry Reding function = "gpio"; 22002df3f03SThierry Reding drive-push-pull = <0>; 22102df3f03SThierry Reding }; 22202df3f03SThierry Reding }; 22302df3f03SThierry Reding 22402df3f03SThierry Reding fps { 22502df3f03SThierry Reding fps0 { 22602df3f03SThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 22702df3f03SThierry Reding maxim,shutdown-fps-time-period-us = <640>; 22802df3f03SThierry Reding }; 22902df3f03SThierry Reding 23002df3f03SThierry Reding fps1 { 23102df3f03SThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>; 23202df3f03SThierry Reding maxim,shutdown-fps-time-period-us = <640>; 23302df3f03SThierry Reding }; 23402df3f03SThierry Reding 23502df3f03SThierry Reding fps2 { 23602df3f03SThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 23702df3f03SThierry Reding maxim,shutdown-fps-time-period-us = <640>; 23802df3f03SThierry Reding }; 23902df3f03SThierry Reding }; 24002df3f03SThierry Reding 24102df3f03SThierry Reding regulators { 24202df3f03SThierry Reding in-sd0-supply = <&vdd_5v0_sys>; 24302df3f03SThierry Reding in-sd1-supply = <&vdd_5v0_sys>; 24402df3f03SThierry Reding in-sd2-supply = <&vdd_5v0_sys>; 24502df3f03SThierry Reding in-sd3-supply = <&vdd_5v0_sys>; 24602df3f03SThierry Reding 24702df3f03SThierry Reding in-ldo0-1-supply = <&vdd_5v0_sys>; 24802df3f03SThierry Reding in-ldo2-supply = <&vdd_5v0_sys>; 24902df3f03SThierry Reding in-ldo3-5-supply = <&vdd_5v0_sys>; 25002df3f03SThierry Reding in-ldo4-6-supply = <&vdd_1v8>; 25102df3f03SThierry Reding in-ldo7-8-supply = <&avdd_dsi_csi>; 25202df3f03SThierry Reding 25302df3f03SThierry Reding sd0 { 25402df3f03SThierry Reding regulator-name = "VDD_DDR_1V1_PMIC"; 25502df3f03SThierry Reding regulator-min-microvolt = <1100000>; 25602df3f03SThierry Reding regulator-max-microvolt = <1100000>; 25702df3f03SThierry Reding regulator-always-on; 25802df3f03SThierry Reding regulator-boot-on; 25902df3f03SThierry Reding }; 26002df3f03SThierry Reding 26102df3f03SThierry Reding avdd_dsi_csi: sd1 { 26202df3f03SThierry Reding regulator-name = "AVDD_DSI_CSI_1V2"; 26302df3f03SThierry Reding regulator-min-microvolt = <1200000>; 26402df3f03SThierry Reding regulator-max-microvolt = <1200000>; 26502df3f03SThierry Reding /* XXX */ 26602df3f03SThierry Reding regulator-always-on; 26702df3f03SThierry Reding regulator-boot-on; 26802df3f03SThierry Reding }; 26902df3f03SThierry Reding 27002df3f03SThierry Reding vdd_1v8: sd2 { 27102df3f03SThierry Reding regulator-name = "VDD_1V8"; 27202df3f03SThierry Reding regulator-min-microvolt = <1800000>; 27302df3f03SThierry Reding regulator-max-microvolt = <1800000>; 27402df3f03SThierry Reding /* XXX */ 27502df3f03SThierry Reding regulator-always-on; 27602df3f03SThierry Reding regulator-boot-on; 27702df3f03SThierry Reding }; 27802df3f03SThierry Reding 27902df3f03SThierry Reding vdd_3v3_sys: sd3 { 28002df3f03SThierry Reding regulator-name = "VDD_3V3_SYS"; 28102df3f03SThierry Reding regulator-min-microvolt = <3300000>; 28202df3f03SThierry Reding regulator-max-microvolt = <3300000>; 28302df3f03SThierry Reding /* XXX */ 28402df3f03SThierry Reding regulator-always-on; 28502df3f03SThierry Reding regulator-boot-on; 28602df3f03SThierry Reding }; 28702df3f03SThierry Reding 28802df3f03SThierry Reding ldo0 { 28902df3f03SThierry Reding regulator-name = "VDD_1V8_AP_PLL"; 29002df3f03SThierry Reding regulator-min-microvolt = <1800000>; 29102df3f03SThierry Reding regulator-max-microvolt = <1800000>; 29202df3f03SThierry Reding /* XXX */ 29302df3f03SThierry Reding regulator-always-on; 29402df3f03SThierry Reding regulator-boot-on; 29502df3f03SThierry Reding }; 29602df3f03SThierry Reding 29702df3f03SThierry Reding ldo2 { 29802df3f03SThierry Reding regulator-name = "VDDIO_3V3_AOHV"; 29902df3f03SThierry Reding regulator-min-microvolt = <3300000>; 30002df3f03SThierry Reding regulator-max-microvolt = <3300000>; 30102df3f03SThierry Reding /* XXX */ 30202df3f03SThierry Reding regulator-always-on; 30302df3f03SThierry Reding regulator-boot-on; 30402df3f03SThierry Reding }; 30502df3f03SThierry Reding 30602df3f03SThierry Reding vddio_sdmmc1: ldo3 { 30702df3f03SThierry Reding regulator-name = "VDDIO_SDMMC1_AP"; 30802df3f03SThierry Reding regulator-min-microvolt = <1800000>; 30902df3f03SThierry Reding regulator-max-microvolt = <3300000>; 31002df3f03SThierry Reding }; 31102df3f03SThierry Reding 31202df3f03SThierry Reding ldo4 { 31302df3f03SThierry Reding regulator-name = "VDD_RTC"; 31402df3f03SThierry Reding regulator-min-microvolt = <1000000>; 31502df3f03SThierry Reding regulator-max-microvolt = <1000000>; 31602df3f03SThierry Reding }; 31702df3f03SThierry Reding 31802df3f03SThierry Reding vddio_sdmmc3: ldo5 { 31902df3f03SThierry Reding regulator-name = "VDDIO_SDMMC3_AP"; 32002df3f03SThierry Reding regulator-min-microvolt = <2800000>; 32102df3f03SThierry Reding regulator-max-microvolt = <2800000>; 32202df3f03SThierry Reding }; 32302df3f03SThierry Reding 32436328505SThierry Reding vdd_hdmi_1v05: ldo7 { 32502df3f03SThierry Reding regulator-name = "VDD_HDMI_1V05"; 32602df3f03SThierry Reding regulator-min-microvolt = <1050000>; 32702df3f03SThierry Reding regulator-max-microvolt = <1050000>; 32802df3f03SThierry Reding /* XXX */ 32902df3f03SThierry Reding regulator-always-on; 33002df3f03SThierry Reding regulator-boot-on; 33102df3f03SThierry Reding }; 33202df3f03SThierry Reding 33302df3f03SThierry Reding vdd_pex: ldo8 { 33402df3f03SThierry Reding regulator-name = "VDD_PEX_1V05"; 33502df3f03SThierry Reding regulator-min-microvolt = <1050000>; 33602df3f03SThierry Reding regulator-max-microvolt = <1050000>; 33702df3f03SThierry Reding /* XXX */ 33802df3f03SThierry Reding regulator-always-on; 33902df3f03SThierry Reding regulator-boot-on; 34002df3f03SThierry Reding }; 34102df3f03SThierry Reding }; 34202df3f03SThierry Reding }; 343df205de6SJoseph Lo }; 344a4c7aab2SThierry Reding }; 3450dfde133SThierry Reding 3460dfde133SThierry Reding psci { 3470dfde133SThierry Reding compatible = "arm,psci-1.0"; 3480dfde133SThierry Reding status = "okay"; 3490dfde133SThierry Reding method = "smc"; 3500dfde133SThierry Reding }; 35102df3f03SThierry Reding 35202df3f03SThierry Reding regulators { 35302df3f03SThierry Reding compatible = "simple-bus"; 35402df3f03SThierry Reding #address-cells = <1>; 35502df3f03SThierry Reding #size-cells = <0>; 35602df3f03SThierry Reding 35702df3f03SThierry Reding vdd_5v0_sys: regulator@0 { 35802df3f03SThierry Reding compatible = "regulator-fixed"; 35902df3f03SThierry Reding reg = <0>; 36002df3f03SThierry Reding 36102df3f03SThierry Reding regulator-name = "VDD_5V0_SYS"; 36202df3f03SThierry Reding regulator-min-microvolt = <5000000>; 36302df3f03SThierry Reding regulator-max-microvolt = <5000000>; 36402df3f03SThierry Reding regulator-always-on; 36502df3f03SThierry Reding regulator-boot-on; 36602df3f03SThierry Reding }; 36702df3f03SThierry Reding 36802df3f03SThierry Reding vdd_1v8_ap: regulator@1 { 36902df3f03SThierry Reding compatible = "regulator-fixed"; 37002df3f03SThierry Reding reg = <1>; 37102df3f03SThierry Reding 37202df3f03SThierry Reding regulator-name = "VDD_1V8_AP"; 37302df3f03SThierry Reding regulator-min-microvolt = <1800000>; 37402df3f03SThierry Reding regulator-max-microvolt = <1800000>; 37502df3f03SThierry Reding 37602df3f03SThierry Reding /* XXX */ 37702df3f03SThierry Reding regulator-always-on; 37802df3f03SThierry Reding regulator-boot-on; 37902df3f03SThierry Reding 38002df3f03SThierry Reding gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 38102df3f03SThierry Reding enable-active-high; 38202df3f03SThierry Reding 38302df3f03SThierry Reding vin-supply = <&vdd_1v8>; 38402df3f03SThierry Reding }; 38502df3f03SThierry Reding }; 386df205de6SJoseph Lo}; 387