| // SPDX-License-Identifier: GPL-2.0 | 
| #include "tegra194.dtsi" | 
|   | 
| #include <dt-bindings/mfd/max77620.h> | 
|   | 
| / { | 
|     model = "NVIDIA Tegra194 P2888 Processor Module"; | 
|     compatible = "nvidia,p2888", "nvidia,tegra194"; | 
|   | 
|     aliases { | 
|         sdhci0 = "/cbb/sdhci@3460000"; | 
|         sdhci1 = "/cbb/sdhci@3400000"; | 
|         serial0 = &uartb; | 
|         i2c0 = "/bpmp/i2c"; | 
|         i2c1 = "/cbb/i2c@3160000"; | 
|         i2c2 = "/cbb/i2c@c240000"; | 
|         i2c3 = "/cbb/i2c@3180000"; | 
|         i2c4 = "/cbb/i2c@3190000"; | 
|         i2c5 = "/cbb/i2c@31c0000"; | 
|         i2c6 = "/cbb/i2c@c250000"; | 
|         i2c7 = "/cbb/i2c@31e0000"; | 
|     }; | 
|   | 
|     chosen { | 
|         bootargs = "console=ttyS0,115200n8"; | 
|         stdout-path = "serial0:115200n8"; | 
|     }; | 
|   | 
|     cbb { | 
|         ethernet@2490000 { | 
|             status = "okay"; | 
|   | 
|             phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 5) GPIO_ACTIVE_LOW>; | 
|             phy-handle = <&phy>; | 
|             phy-mode = "rgmii-id"; | 
|   | 
|             mdio { | 
|                 #address-cells = <1>; | 
|                 #size-cells = <0>; | 
|   | 
|                 phy: phy@0 { | 
|                     compatible = "ethernet-phy-ieee802.3-c22"; | 
|                     reg = <0x0>; | 
|                     interrupt-parent = <&gpio>; | 
|                     interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>; | 
|                 }; | 
|             }; | 
|         }; | 
|   | 
|         serial@3110000 { | 
|             status = "okay"; | 
|         }; | 
|   | 
|         /* SDMMC1 (SD/MMC) */ | 
|         sdhci@3400000 { | 
|             cd-gpios = <&gpio TEGRA194_MAIN_GPIO(A, 0) GPIO_ACTIVE_LOW>; | 
|         }; | 
|   | 
|         /* SDMMC4 (eMMC) */ | 
|         sdhci@3460000 { | 
|             status = "okay"; | 
|             bus-width = <8>; | 
|             non-removable; | 
|   | 
|             vqmmc-supply = <&vdd_1v8ls>; | 
|             vmmc-supply = <&vdd_emmc_3v3>; | 
|         }; | 
|   | 
|         pmc@c360000 { | 
|             nvidia,invert-interrupt; | 
|         }; | 
|     }; | 
|   | 
|     bpmp { | 
|         i2c { | 
|             status = "okay"; | 
|   | 
|             pmic: pmic@3c { | 
|                 compatible = "maxim,max20024"; | 
|                 reg = <0x3c>; | 
|   | 
|                 interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; | 
|                 #interrupt-cells = <2>; | 
|                 interrupt-controller; | 
|   | 
|                 #gpio-cells = <2>; | 
|                 gpio-controller; | 
|   | 
|                 pinctrl-names = "default"; | 
|                 pinctrl-0 = <&max20024_default>; | 
|   | 
|                 max20024_default: pinmux { | 
|                     gpio0 { | 
|                         pins = "gpio0"; | 
|                         function = "gpio"; | 
|                     }; | 
|   | 
|                     gpio1 { | 
|                         pins = "gpio1"; | 
|                         function = "fps-out"; | 
|                         maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>; | 
|                     }; | 
|   | 
|                     gpio2 { | 
|                         pins = "gpio2"; | 
|                         function = "fps-out"; | 
|                         maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>; | 
|                     }; | 
|   | 
|                     gpio3 { | 
|                         pins = "gpio3"; | 
|                         function = "fps-out"; | 
|                         maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>; | 
|                     }; | 
|   | 
|                     gpio4 { | 
|                         pins = "gpio4"; | 
|                         function = "32k-out1"; | 
|                         drive-push-pull = <1>; | 
|                     }; | 
|   | 
|                     gpio6 { | 
|                         pins = "gpio6"; | 
|                         function = "gpio"; | 
|                         drive-push-pull = <1>; | 
|                     }; | 
|   | 
|                     gpio7 { | 
|                         pins = "gpio7"; | 
|                         function = "gpio"; | 
|                         drive-push-pull = <0>; | 
|                     }; | 
|                 }; | 
|   | 
|                 fps { | 
|                     fps0 { | 
|                         maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; | 
|                         maxim,shutdown-fps-time-period-us = <640>; | 
|                     }; | 
|   | 
|                     fps1 { | 
|                         maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>; | 
|                         maxim,shutdown-fps-time-period-us = <640>; | 
|                         maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>; | 
|                     }; | 
|   | 
|                     fps2 { | 
|                         maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; | 
|                         maxim,shutdown-fps-time-period-us = <640>; | 
|                     }; | 
|                 }; | 
|   | 
|                 regulators { | 
|                     in-sd0-supply = <&vdd_5v0_sys>; | 
|                     in-sd1-supply = <&vdd_5v0_sys>; | 
|                     in-sd2-supply = <&vdd_5v0_sys>; | 
|                     in-sd3-supply = <&vdd_5v0_sys>; | 
|                     in-sd4-supply = <&vdd_5v0_sys>; | 
|   | 
|                     in-ldo0-1-supply = <&vdd_5v0_sys>; | 
|                     in-ldo2-supply = <&vdd_5v0_sys>; | 
|                     in-ldo3-5-supply = <&vdd_5v0_sys>; | 
|                     in-ldo4-6-supply = <&vdd_5v0_sys>; | 
|                     in-ldo7-8-supply = <&vdd_1v8ls>; | 
|   | 
|                     sd0 { | 
|                         regulator-name = "VDD_1V0"; | 
|                         regulator-min-microvolt = <1000000>; | 
|                         regulator-max-microvolt = <1000000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     sd1 { | 
|                         regulator-name = "VDD_1V8HS"; | 
|                         regulator-min-microvolt = <1800000>; | 
|                         regulator-max-microvolt = <1800000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     vdd_1v8ls: sd2 { | 
|                         regulator-name = "VDD_1V8LS"; | 
|                         regulator-min-microvolt = <1800000>; | 
|                         regulator-max-microvolt = <1800000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     sd3 { | 
|                         regulator-name = "VDD_1V8AO"; | 
|                         regulator-min-microvolt = <1800000>; | 
|                         regulator-max-microvolt = <1800000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     sd4 { | 
|                         regulator-name = "VDD_DDR_1V1"; | 
|                         regulator-min-microvolt = <1100000>; | 
|                         regulator-max-microvolt = <1100000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     ldo0 { | 
|                         regulator-name = "VDD_RTC"; | 
|                         regulator-min-microvolt = <800000>; | 
|                         regulator-max-microvolt = <800000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     ldo2 { | 
|                         regulator-name = "VDD_AO_3V3"; | 
|                         regulator-min-microvolt = <3300000>; | 
|                         regulator-max-microvolt = <3300000>; | 
|                         regulator-always-on; | 
|                         regulator-boot-on; | 
|                     }; | 
|   | 
|                     vdd_emmc_3v3: ldo3 { | 
|                         regulator-name = "VDD_EMMC_3V3"; | 
|                         regulator-min-microvolt = <3300000>; | 
|                         regulator-max-microvolt = <3300000>; | 
|                     }; | 
|   | 
|                     ldo5 { | 
|                         regulator-name = "VDD_USB_3V3"; | 
|                         regulator-min-microvolt = <3300000>; | 
|                         regulator-max-microvolt = <3300000>; | 
|                     }; | 
|   | 
|                     ldo6 { | 
|                         regulator-name = "VDD_SDIO_3V3"; | 
|                         regulator-min-microvolt = <3300000>; | 
|                         regulator-max-microvolt = <3300000>; | 
|                     }; | 
|   | 
|                     ldo7 { | 
|                         regulator-name = "VDD_CSI_1V2"; | 
|                         regulator-min-microvolt = <1200000>; | 
|                         regulator-max-microvolt = <1200000>; | 
|                     }; | 
|                 }; | 
|             }; | 
|         }; | 
|     }; | 
|   | 
|     regulators { | 
|         compatible = "simple-bus"; | 
|         #address-cells = <1>; | 
|         #size-cells = <0>; | 
|   | 
|         vdd_5v0_sys: regulator@0 { | 
|             compatible = "regulator-fixed"; | 
|             reg = <0>; | 
|   | 
|             regulator-name = "VIN_SYS_5V0"; | 
|             regulator-min-microvolt = <5000000>; | 
|             regulator-max-microvolt = <5000000>; | 
|             regulator-always-on; | 
|             regulator-boot-on; | 
|         }; | 
|     }; | 
| }; |