1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2*f126890aSEmmanuel Vadot#include <dt-bindings/clock/tegra124-car.h> 3*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/tegra-gpio.h> 4*f126890aSEmmanuel Vadot#include <dt-bindings/memory/tegra124-mc.h> 5*f126890aSEmmanuel Vadot#include <dt-bindings/pinctrl/pinctrl-tegra.h> 6*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 7*f126890aSEmmanuel Vadot#include <dt-bindings/reset/tegra124-car.h> 8*f126890aSEmmanuel Vadot#include <dt-bindings/thermal/tegra124-soctherm.h> 9*f126890aSEmmanuel Vadot#include <dt-bindings/soc/tegra-pmc.h> 10*f126890aSEmmanuel Vadot 11*f126890aSEmmanuel Vadot#include "tegra124-peripherals-opp.dtsi" 12*f126890aSEmmanuel Vadot 13*f126890aSEmmanuel Vadot/ { 14*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124"; 15*f126890aSEmmanuel Vadot interrupt-parent = <&lic>; 16*f126890aSEmmanuel Vadot #address-cells = <2>; 17*f126890aSEmmanuel Vadot #size-cells = <2>; 18*f126890aSEmmanuel Vadot 19*f126890aSEmmanuel Vadot memory@80000000 { 20*f126890aSEmmanuel Vadot device_type = "memory"; 21*f126890aSEmmanuel Vadot reg = <0x0 0x80000000 0x0 0x0>; 22*f126890aSEmmanuel Vadot }; 23*f126890aSEmmanuel Vadot 24*f126890aSEmmanuel Vadot pcie@1003000 { 25*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-pcie"; 26*f126890aSEmmanuel Vadot device_type = "pci"; 27*f126890aSEmmanuel Vadot reg = <0x0 0x01003000 0x0 0x00000800>, /* PADS registers */ 28*f126890aSEmmanuel Vadot <0x0 0x01003800 0x0 0x00000800>, /* AFI registers */ 29*f126890aSEmmanuel Vadot <0x0 0x02000000 0x0 0x10000000>; /* configuration space */ 30*f126890aSEmmanuel Vadot reg-names = "pads", "afi", "cs"; 31*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 32*f126890aSEmmanuel Vadot <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ 33*f126890aSEmmanuel Vadot interrupt-names = "intr", "msi"; 34*f126890aSEmmanuel Vadot 35*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 36*f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 0>; 37*f126890aSEmmanuel Vadot interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 38*f126890aSEmmanuel Vadot 39*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 40*f126890aSEmmanuel Vadot #address-cells = <3>; 41*f126890aSEmmanuel Vadot #size-cells = <2>; 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot ranges = <0x02000000 0 0x01000000 0x0 0x01000000 0 0x00001000>, /* port 0 configuration space */ 44*f126890aSEmmanuel Vadot <0x02000000 0 0x01001000 0x0 0x01001000 0 0x00001000>, /* port 1 configuration space */ 45*f126890aSEmmanuel Vadot <0x01000000 0 0x0 0x0 0x12000000 0 0x00010000>, /* downstream I/O (64 KiB) */ 46*f126890aSEmmanuel Vadot <0x02000000 0 0x13000000 0x0 0x13000000 0 0x0d000000>, /* non-prefetchable memory (208 MiB) */ 47*f126890aSEmmanuel Vadot <0x42000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ 48*f126890aSEmmanuel Vadot 49*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_PCIE>, 50*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_AFI>, 51*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_E>, 52*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_CML0>; 53*f126890aSEmmanuel Vadot clock-names = "pex", "afi", "pll_e", "cml"; 54*f126890aSEmmanuel Vadot resets = <&tegra_car 70>, 55*f126890aSEmmanuel Vadot <&tegra_car 72>, 56*f126890aSEmmanuel Vadot <&tegra_car 74>; 57*f126890aSEmmanuel Vadot reset-names = "pex", "afi", "pcie_x"; 58*f126890aSEmmanuel Vadot status = "disabled"; 59*f126890aSEmmanuel Vadot 60*f126890aSEmmanuel Vadot pci@1,0 { 61*f126890aSEmmanuel Vadot device_type = "pci"; 62*f126890aSEmmanuel Vadot assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>; 63*f126890aSEmmanuel Vadot reg = <0x000800 0 0 0 0>; 64*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 65*f126890aSEmmanuel Vadot status = "disabled"; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot #address-cells = <3>; 68*f126890aSEmmanuel Vadot #size-cells = <2>; 69*f126890aSEmmanuel Vadot ranges; 70*f126890aSEmmanuel Vadot 71*f126890aSEmmanuel Vadot nvidia,num-lanes = <2>; 72*f126890aSEmmanuel Vadot }; 73*f126890aSEmmanuel Vadot 74*f126890aSEmmanuel Vadot pci@2,0 { 75*f126890aSEmmanuel Vadot device_type = "pci"; 76*f126890aSEmmanuel Vadot assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>; 77*f126890aSEmmanuel Vadot reg = <0x001000 0 0 0 0>; 78*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 79*f126890aSEmmanuel Vadot status = "disabled"; 80*f126890aSEmmanuel Vadot 81*f126890aSEmmanuel Vadot #address-cells = <3>; 82*f126890aSEmmanuel Vadot #size-cells = <2>; 83*f126890aSEmmanuel Vadot ranges; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot nvidia,num-lanes = <1>; 86*f126890aSEmmanuel Vadot }; 87*f126890aSEmmanuel Vadot }; 88*f126890aSEmmanuel Vadot 89*f126890aSEmmanuel Vadot host1x@50000000 { 90*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-host1x"; 91*f126890aSEmmanuel Vadot reg = <0x0 0x50000000 0x0 0x00034000>; 92*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */ 93*f126890aSEmmanuel Vadot <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */ 94*f126890aSEmmanuel Vadot interrupt-names = "syncpt", "host1x"; 95*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_HOST1X>; 96*f126890aSEmmanuel Vadot clock-names = "host1x"; 97*f126890aSEmmanuel Vadot resets = <&tegra_car 28>, <&mc TEGRA124_MC_RESET_HC>; 98*f126890aSEmmanuel Vadot reset-names = "host1x", "mc"; 99*f126890aSEmmanuel Vadot iommus = <&mc TEGRA_SWGROUP_HC>; 100*f126890aSEmmanuel Vadot 101*f126890aSEmmanuel Vadot #address-cells = <2>; 102*f126890aSEmmanuel Vadot #size-cells = <2>; 103*f126890aSEmmanuel Vadot 104*f126890aSEmmanuel Vadot ranges = <0 0x54000000 0 0x54000000 0 0x01000000>; 105*f126890aSEmmanuel Vadot 106*f126890aSEmmanuel Vadot dc@54200000 { 107*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-dc"; 108*f126890aSEmmanuel Vadot reg = <0x0 0x54200000 0x0 0x00040000>; 109*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 110*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_DISP1>; 111*f126890aSEmmanuel Vadot clock-names = "dc"; 112*f126890aSEmmanuel Vadot resets = <&tegra_car 27>; 113*f126890aSEmmanuel Vadot reset-names = "dc"; 114*f126890aSEmmanuel Vadot 115*f126890aSEmmanuel Vadot iommus = <&mc TEGRA_SWGROUP_DC>; 116*f126890aSEmmanuel Vadot 117*f126890aSEmmanuel Vadot nvidia,head = <0>; 118*f126890aSEmmanuel Vadot 119*f126890aSEmmanuel Vadot interconnects = <&mc TEGRA124_MC_DISPLAY0A &emc>, 120*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAY0B &emc>, 121*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAY0C &emc>, 122*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAYHC &emc>, 123*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAYD &emc>, 124*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAYT &emc>; 125*f126890aSEmmanuel Vadot interconnect-names = "wina", 126*f126890aSEmmanuel Vadot "winb", 127*f126890aSEmmanuel Vadot "winc", 128*f126890aSEmmanuel Vadot "cursor", 129*f126890aSEmmanuel Vadot "wind", 130*f126890aSEmmanuel Vadot "wint"; 131*f126890aSEmmanuel Vadot }; 132*f126890aSEmmanuel Vadot 133*f126890aSEmmanuel Vadot dc@54240000 { 134*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-dc"; 135*f126890aSEmmanuel Vadot reg = <0x0 0x54240000 0x0 0x00040000>; 136*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 137*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_DISP2>; 138*f126890aSEmmanuel Vadot clock-names = "dc"; 139*f126890aSEmmanuel Vadot resets = <&tegra_car 26>; 140*f126890aSEmmanuel Vadot reset-names = "dc"; 141*f126890aSEmmanuel Vadot 142*f126890aSEmmanuel Vadot iommus = <&mc TEGRA_SWGROUP_DCB>; 143*f126890aSEmmanuel Vadot 144*f126890aSEmmanuel Vadot nvidia,head = <1>; 145*f126890aSEmmanuel Vadot 146*f126890aSEmmanuel Vadot interconnects = <&mc TEGRA124_MC_DISPLAY0AB &emc>, 147*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAY0BB &emc>, 148*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAY0CB &emc>, 149*f126890aSEmmanuel Vadot <&mc TEGRA124_MC_DISPLAYHCB &emc>; 150*f126890aSEmmanuel Vadot interconnect-names = "wina", 151*f126890aSEmmanuel Vadot "winb", 152*f126890aSEmmanuel Vadot "winc", 153*f126890aSEmmanuel Vadot "cursor"; 154*f126890aSEmmanuel Vadot }; 155*f126890aSEmmanuel Vadot 156*f126890aSEmmanuel Vadot hdmi: hdmi@54280000 { 157*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-hdmi"; 158*f126890aSEmmanuel Vadot reg = <0x0 0x54280000 0x0 0x00040000>; 159*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 160*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_HDMI>, 161*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>; 162*f126890aSEmmanuel Vadot clock-names = "hdmi", "parent"; 163*f126890aSEmmanuel Vadot resets = <&tegra_car 51>; 164*f126890aSEmmanuel Vadot reset-names = "hdmi"; 165*f126890aSEmmanuel Vadot status = "disabled"; 166*f126890aSEmmanuel Vadot }; 167*f126890aSEmmanuel Vadot 168*f126890aSEmmanuel Vadot vic@54340000 { 169*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-vic"; 170*f126890aSEmmanuel Vadot reg = <0x0 0x54340000 0x0 0x00040000>; 171*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 172*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_VIC03>; 173*f126890aSEmmanuel Vadot clock-names = "vic"; 174*f126890aSEmmanuel Vadot resets = <&tegra_car 178>; 175*f126890aSEmmanuel Vadot reset-names = "vic"; 176*f126890aSEmmanuel Vadot 177*f126890aSEmmanuel Vadot iommus = <&mc TEGRA_SWGROUP_VIC>; 178*f126890aSEmmanuel Vadot }; 179*f126890aSEmmanuel Vadot 180*f126890aSEmmanuel Vadot sor@54540000 { 181*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-sor"; 182*f126890aSEmmanuel Vadot reg = <0x0 0x54540000 0x0 0x00040000>; 183*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 184*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SOR0>, 185*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_SOR0_OUT>, 186*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_D_OUT0>, 187*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_DP>, 188*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_CLK_M>; 189*f126890aSEmmanuel Vadot clock-names = "sor", "out", "parent", "dp", "safe"; 190*f126890aSEmmanuel Vadot resets = <&tegra_car 182>; 191*f126890aSEmmanuel Vadot reset-names = "sor"; 192*f126890aSEmmanuel Vadot status = "disabled"; 193*f126890aSEmmanuel Vadot }; 194*f126890aSEmmanuel Vadot 195*f126890aSEmmanuel Vadot dpaux: dpaux@545c0000 { 196*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-dpaux"; 197*f126890aSEmmanuel Vadot reg = <0x0 0x545c0000 0x0 0x00040000>; 198*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; 199*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_DPAUX>, 200*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_DP>; 201*f126890aSEmmanuel Vadot clock-names = "dpaux", "parent"; 202*f126890aSEmmanuel Vadot resets = <&tegra_car 181>; 203*f126890aSEmmanuel Vadot reset-names = "dpaux"; 204*f126890aSEmmanuel Vadot status = "disabled"; 205*f126890aSEmmanuel Vadot 206*f126890aSEmmanuel Vadot i2c-bus { 207*f126890aSEmmanuel Vadot #address-cells = <1>; 208*f126890aSEmmanuel Vadot #size-cells = <0>; 209*f126890aSEmmanuel Vadot }; 210*f126890aSEmmanuel Vadot }; 211*f126890aSEmmanuel Vadot }; 212*f126890aSEmmanuel Vadot 213*f126890aSEmmanuel Vadot gic: interrupt-controller@50041000 { 214*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15-gic"; 215*f126890aSEmmanuel Vadot #interrupt-cells = <3>; 216*f126890aSEmmanuel Vadot interrupt-controller; 217*f126890aSEmmanuel Vadot reg = <0x0 0x50041000 0x0 0x1000>, 218*f126890aSEmmanuel Vadot <0x0 0x50042000 0x0 0x1000>, 219*f126890aSEmmanuel Vadot <0x0 0x50044000 0x0 0x2000>, 220*f126890aSEmmanuel Vadot <0x0 0x50046000 0x0 0x2000>; 221*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 9 222*f126890aSEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 223*f126890aSEmmanuel Vadot interrupt-parent = <&gic>; 224*f126890aSEmmanuel Vadot }; 225*f126890aSEmmanuel Vadot 226*f126890aSEmmanuel Vadot gpu@57000000 { 227*f126890aSEmmanuel Vadot compatible = "nvidia,gk20a"; 228*f126890aSEmmanuel Vadot reg = <0x0 0x57000000 0x0 0x01000000>, 229*f126890aSEmmanuel Vadot <0x0 0x58000000 0x0 0x01000000>; 230*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 231*f126890aSEmmanuel Vadot <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>; 232*f126890aSEmmanuel Vadot interrupt-names = "stall", "nonstall"; 233*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_GPU>, 234*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_P_OUT5>; 235*f126890aSEmmanuel Vadot clock-names = "gpu", "pwr"; 236*f126890aSEmmanuel Vadot resets = <&tegra_car 184>; 237*f126890aSEmmanuel Vadot reset-names = "gpu"; 238*f126890aSEmmanuel Vadot 239*f126890aSEmmanuel Vadot iommus = <&mc TEGRA_SWGROUP_GPU>; 240*f126890aSEmmanuel Vadot 241*f126890aSEmmanuel Vadot status = "disabled"; 242*f126890aSEmmanuel Vadot }; 243*f126890aSEmmanuel Vadot 244*f126890aSEmmanuel Vadot lic: interrupt-controller@60004000 { 245*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ictlr", "nvidia,tegra30-ictlr"; 246*f126890aSEmmanuel Vadot reg = <0x0 0x60004000 0x0 0x100>, 247*f126890aSEmmanuel Vadot <0x0 0x60004100 0x0 0x100>, 248*f126890aSEmmanuel Vadot <0x0 0x60004200 0x0 0x100>, 249*f126890aSEmmanuel Vadot <0x0 0x60004300 0x0 0x100>, 250*f126890aSEmmanuel Vadot <0x0 0x60004400 0x0 0x100>; 251*f126890aSEmmanuel Vadot interrupt-controller; 252*f126890aSEmmanuel Vadot #interrupt-cells = <3>; 253*f126890aSEmmanuel Vadot interrupt-parent = <&gic>; 254*f126890aSEmmanuel Vadot }; 255*f126890aSEmmanuel Vadot 256*f126890aSEmmanuel Vadot timer@60005000 { 257*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-timer", "nvidia,tegra30-timer"; 258*f126890aSEmmanuel Vadot reg = <0x0 0x60005000 0x0 0x400>; 259*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 260*f126890aSEmmanuel Vadot <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 261*f126890aSEmmanuel Vadot <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 262*f126890aSEmmanuel Vadot <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 263*f126890aSEmmanuel Vadot <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 264*f126890aSEmmanuel Vadot <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 265*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_TIMER>; 266*f126890aSEmmanuel Vadot }; 267*f126890aSEmmanuel Vadot 268*f126890aSEmmanuel Vadot tegra_car: clock@60006000 { 269*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-car"; 270*f126890aSEmmanuel Vadot reg = <0x0 0x60006000 0x0 0x1000>; 271*f126890aSEmmanuel Vadot #clock-cells = <1>; 272*f126890aSEmmanuel Vadot #reset-cells = <1>; 273*f126890aSEmmanuel Vadot nvidia,external-memory-controller = <&emc>; 274*f126890aSEmmanuel Vadot }; 275*f126890aSEmmanuel Vadot 276*f126890aSEmmanuel Vadot flow-controller@60007000 { 277*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-flowctrl"; 278*f126890aSEmmanuel Vadot reg = <0x0 0x60007000 0x0 0x1000>; 279*f126890aSEmmanuel Vadot }; 280*f126890aSEmmanuel Vadot 281*f126890aSEmmanuel Vadot actmon: actmon@6000c800 { 282*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-actmon"; 283*f126890aSEmmanuel Vadot reg = <0x0 0x6000c800 0x0 0x400>; 284*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 285*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_ACTMON>, 286*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_EMC>; 287*f126890aSEmmanuel Vadot clock-names = "actmon", "emc"; 288*f126890aSEmmanuel Vadot resets = <&tegra_car 119>; 289*f126890aSEmmanuel Vadot reset-names = "actmon"; 290*f126890aSEmmanuel Vadot operating-points-v2 = <&emc_bw_dfs_opp_table>; 291*f126890aSEmmanuel Vadot interconnects = <&mc TEGRA124_MC_MPCORER &emc>; 292*f126890aSEmmanuel Vadot interconnect-names = "cpu-read"; 293*f126890aSEmmanuel Vadot #cooling-cells = <2>; 294*f126890aSEmmanuel Vadot }; 295*f126890aSEmmanuel Vadot 296*f126890aSEmmanuel Vadot gpio: gpio@6000d000 { 297*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio"; 298*f126890aSEmmanuel Vadot reg = <0x0 0x6000d000 0x0 0x1000>; 299*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 300*f126890aSEmmanuel Vadot <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 301*f126890aSEmmanuel Vadot <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 302*f126890aSEmmanuel Vadot <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 303*f126890aSEmmanuel Vadot <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 304*f126890aSEmmanuel Vadot <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, 305*f126890aSEmmanuel Vadot <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 306*f126890aSEmmanuel Vadot <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 307*f126890aSEmmanuel Vadot #gpio-cells = <2>; 308*f126890aSEmmanuel Vadot gpio-controller; 309*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 310*f126890aSEmmanuel Vadot interrupt-controller; 311*f126890aSEmmanuel Vadot gpio-ranges = <&pinmux 0 0 251>; 312*f126890aSEmmanuel Vadot }; 313*f126890aSEmmanuel Vadot 314*f126890aSEmmanuel Vadot apbdma: dma@60020000 { 315*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-apbdma", "nvidia,tegra148-apbdma"; 316*f126890aSEmmanuel Vadot reg = <0x0 0x60020000 0x0 0x1400>; 317*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 318*f126890aSEmmanuel Vadot <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 319*f126890aSEmmanuel Vadot <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 320*f126890aSEmmanuel Vadot <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 321*f126890aSEmmanuel Vadot <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 322*f126890aSEmmanuel Vadot <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 323*f126890aSEmmanuel Vadot <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 324*f126890aSEmmanuel Vadot <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 325*f126890aSEmmanuel Vadot <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 326*f126890aSEmmanuel Vadot <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 327*f126890aSEmmanuel Vadot <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 328*f126890aSEmmanuel Vadot <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 329*f126890aSEmmanuel Vadot <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 330*f126890aSEmmanuel Vadot <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 331*f126890aSEmmanuel Vadot <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 332*f126890aSEmmanuel Vadot <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 333*f126890aSEmmanuel Vadot <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 334*f126890aSEmmanuel Vadot <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 335*f126890aSEmmanuel Vadot <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 336*f126890aSEmmanuel Vadot <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 337*f126890aSEmmanuel Vadot <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 338*f126890aSEmmanuel Vadot <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 339*f126890aSEmmanuel Vadot <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 340*f126890aSEmmanuel Vadot <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 341*f126890aSEmmanuel Vadot <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 342*f126890aSEmmanuel Vadot <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 343*f126890aSEmmanuel Vadot <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 344*f126890aSEmmanuel Vadot <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 345*f126890aSEmmanuel Vadot <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 346*f126890aSEmmanuel Vadot <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 347*f126890aSEmmanuel Vadot <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 348*f126890aSEmmanuel Vadot <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 349*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_APBDMA>; 350*f126890aSEmmanuel Vadot resets = <&tegra_car 34>; 351*f126890aSEmmanuel Vadot reset-names = "dma"; 352*f126890aSEmmanuel Vadot #dma-cells = <1>; 353*f126890aSEmmanuel Vadot }; 354*f126890aSEmmanuel Vadot 355*f126890aSEmmanuel Vadot apbmisc@70000800 { 356*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-apbmisc", "nvidia,tegra20-apbmisc"; 357*f126890aSEmmanuel Vadot reg = <0x0 0x70000800 0x0 0x64>, /* Chip revision */ 358*f126890aSEmmanuel Vadot <0x0 0x7000e864 0x0 0x04>; /* Strapping options */ 359*f126890aSEmmanuel Vadot }; 360*f126890aSEmmanuel Vadot 361*f126890aSEmmanuel Vadot pinmux: pinmux@70000868 { 362*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-pinmux"; 363*f126890aSEmmanuel Vadot reg = <0x0 0x70000868 0x0 0x164>, /* Pad control registers */ 364*f126890aSEmmanuel Vadot <0x0 0x70003000 0x0 0x434>, /* Mux registers */ 365*f126890aSEmmanuel Vadot <0x0 0x70000820 0x0 0x008>; /* MIPI pad control */ 366*f126890aSEmmanuel Vadot }; 367*f126890aSEmmanuel Vadot 368*f126890aSEmmanuel Vadot /* 369*f126890aSEmmanuel Vadot * There are two serial driver i.e. 8250 based simple serial 370*f126890aSEmmanuel Vadot * driver and APB DMA based serial driver for higher baudrate 371*f126890aSEmmanuel Vadot * and performace. To enable the 8250 based driver, the compatible 372*f126890aSEmmanuel Vadot * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable 373*f126890aSEmmanuel Vadot * the APB DMA based serial driver, the compatible is 374*f126890aSEmmanuel Vadot * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart". 375*f126890aSEmmanuel Vadot */ 376*f126890aSEmmanuel Vadot uarta: serial@70006000 { 377*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart"; 378*f126890aSEmmanuel Vadot reg = <0x0 0x70006000 0x0 0x40>; 379*f126890aSEmmanuel Vadot reg-shift = <2>; 380*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 381*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_UARTA>; 382*f126890aSEmmanuel Vadot resets = <&tegra_car 6>; 383*f126890aSEmmanuel Vadot dmas = <&apbdma 8>, <&apbdma 8>; 384*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 385*f126890aSEmmanuel Vadot status = "disabled"; 386*f126890aSEmmanuel Vadot }; 387*f126890aSEmmanuel Vadot 388*f126890aSEmmanuel Vadot uartb: serial@70006040 { 389*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart"; 390*f126890aSEmmanuel Vadot reg = <0x0 0x70006040 0x0 0x40>; 391*f126890aSEmmanuel Vadot reg-shift = <2>; 392*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 393*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_UARTB>; 394*f126890aSEmmanuel Vadot resets = <&tegra_car 7>; 395*f126890aSEmmanuel Vadot dmas = <&apbdma 9>, <&apbdma 9>; 396*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 397*f126890aSEmmanuel Vadot status = "disabled"; 398*f126890aSEmmanuel Vadot }; 399*f126890aSEmmanuel Vadot 400*f126890aSEmmanuel Vadot uartc: serial@70006200 { 401*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart"; 402*f126890aSEmmanuel Vadot reg = <0x0 0x70006200 0x0 0x40>; 403*f126890aSEmmanuel Vadot reg-shift = <2>; 404*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 405*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_UARTC>; 406*f126890aSEmmanuel Vadot resets = <&tegra_car 55>; 407*f126890aSEmmanuel Vadot dmas = <&apbdma 10>, <&apbdma 10>; 408*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 409*f126890aSEmmanuel Vadot status = "disabled"; 410*f126890aSEmmanuel Vadot }; 411*f126890aSEmmanuel Vadot 412*f126890aSEmmanuel Vadot uartd: serial@70006300 { 413*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart"; 414*f126890aSEmmanuel Vadot reg = <0x0 0x70006300 0x0 0x40>; 415*f126890aSEmmanuel Vadot reg-shift = <2>; 416*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 417*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_UARTD>; 418*f126890aSEmmanuel Vadot resets = <&tegra_car 65>; 419*f126890aSEmmanuel Vadot dmas = <&apbdma 19>, <&apbdma 19>; 420*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 421*f126890aSEmmanuel Vadot status = "disabled"; 422*f126890aSEmmanuel Vadot }; 423*f126890aSEmmanuel Vadot 424*f126890aSEmmanuel Vadot pwm: pwm@7000a000 { 425*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm"; 426*f126890aSEmmanuel Vadot reg = <0x0 0x7000a000 0x0 0x100>; 427*f126890aSEmmanuel Vadot #pwm-cells = <2>; 428*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_PWM>; 429*f126890aSEmmanuel Vadot resets = <&tegra_car 17>; 430*f126890aSEmmanuel Vadot reset-names = "pwm"; 431*f126890aSEmmanuel Vadot status = "disabled"; 432*f126890aSEmmanuel Vadot }; 433*f126890aSEmmanuel Vadot 434*f126890aSEmmanuel Vadot i2c@7000c000 { 435*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 436*f126890aSEmmanuel Vadot reg = <0x0 0x7000c000 0x0 0x100>; 437*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 438*f126890aSEmmanuel Vadot #address-cells = <1>; 439*f126890aSEmmanuel Vadot #size-cells = <0>; 440*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C1>; 441*f126890aSEmmanuel Vadot clock-names = "div-clk"; 442*f126890aSEmmanuel Vadot resets = <&tegra_car 12>; 443*f126890aSEmmanuel Vadot reset-names = "i2c"; 444*f126890aSEmmanuel Vadot dmas = <&apbdma 21>, <&apbdma 21>; 445*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 446*f126890aSEmmanuel Vadot status = "disabled"; 447*f126890aSEmmanuel Vadot }; 448*f126890aSEmmanuel Vadot 449*f126890aSEmmanuel Vadot i2c@7000c400 { 450*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 451*f126890aSEmmanuel Vadot reg = <0x0 0x7000c400 0x0 0x100>; 452*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 453*f126890aSEmmanuel Vadot #address-cells = <1>; 454*f126890aSEmmanuel Vadot #size-cells = <0>; 455*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C2>; 456*f126890aSEmmanuel Vadot clock-names = "div-clk"; 457*f126890aSEmmanuel Vadot resets = <&tegra_car 54>; 458*f126890aSEmmanuel Vadot reset-names = "i2c"; 459*f126890aSEmmanuel Vadot dmas = <&apbdma 22>, <&apbdma 22>; 460*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 461*f126890aSEmmanuel Vadot status = "disabled"; 462*f126890aSEmmanuel Vadot }; 463*f126890aSEmmanuel Vadot 464*f126890aSEmmanuel Vadot i2c@7000c500 { 465*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 466*f126890aSEmmanuel Vadot reg = <0x0 0x7000c500 0x0 0x100>; 467*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 468*f126890aSEmmanuel Vadot #address-cells = <1>; 469*f126890aSEmmanuel Vadot #size-cells = <0>; 470*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C3>; 471*f126890aSEmmanuel Vadot clock-names = "div-clk"; 472*f126890aSEmmanuel Vadot resets = <&tegra_car 67>; 473*f126890aSEmmanuel Vadot reset-names = "i2c"; 474*f126890aSEmmanuel Vadot dmas = <&apbdma 23>, <&apbdma 23>; 475*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 476*f126890aSEmmanuel Vadot status = "disabled"; 477*f126890aSEmmanuel Vadot }; 478*f126890aSEmmanuel Vadot 479*f126890aSEmmanuel Vadot i2c@7000c700 { 480*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 481*f126890aSEmmanuel Vadot reg = <0x0 0x7000c700 0x0 0x100>; 482*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 483*f126890aSEmmanuel Vadot #address-cells = <1>; 484*f126890aSEmmanuel Vadot #size-cells = <0>; 485*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C4>; 486*f126890aSEmmanuel Vadot clock-names = "div-clk"; 487*f126890aSEmmanuel Vadot resets = <&tegra_car 103>; 488*f126890aSEmmanuel Vadot reset-names = "i2c"; 489*f126890aSEmmanuel Vadot dmas = <&apbdma 26>, <&apbdma 26>; 490*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 491*f126890aSEmmanuel Vadot status = "disabled"; 492*f126890aSEmmanuel Vadot }; 493*f126890aSEmmanuel Vadot 494*f126890aSEmmanuel Vadot i2c@7000d000 { 495*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 496*f126890aSEmmanuel Vadot reg = <0x0 0x7000d000 0x0 0x100>; 497*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 498*f126890aSEmmanuel Vadot #address-cells = <1>; 499*f126890aSEmmanuel Vadot #size-cells = <0>; 500*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C5>; 501*f126890aSEmmanuel Vadot clock-names = "div-clk"; 502*f126890aSEmmanuel Vadot resets = <&tegra_car 47>; 503*f126890aSEmmanuel Vadot reset-names = "i2c"; 504*f126890aSEmmanuel Vadot dmas = <&apbdma 24>, <&apbdma 24>; 505*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 506*f126890aSEmmanuel Vadot status = "disabled"; 507*f126890aSEmmanuel Vadot }; 508*f126890aSEmmanuel Vadot 509*f126890aSEmmanuel Vadot i2c@7000d100 { 510*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2c"; 511*f126890aSEmmanuel Vadot reg = <0x0 0x7000d100 0x0 0x100>; 512*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 513*f126890aSEmmanuel Vadot #address-cells = <1>; 514*f126890aSEmmanuel Vadot #size-cells = <0>; 515*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2C6>; 516*f126890aSEmmanuel Vadot clock-names = "div-clk"; 517*f126890aSEmmanuel Vadot resets = <&tegra_car 166>; 518*f126890aSEmmanuel Vadot reset-names = "i2c"; 519*f126890aSEmmanuel Vadot dmas = <&apbdma 30>, <&apbdma 30>; 520*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 521*f126890aSEmmanuel Vadot status = "disabled"; 522*f126890aSEmmanuel Vadot }; 523*f126890aSEmmanuel Vadot 524*f126890aSEmmanuel Vadot spi@7000d400 { 525*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 526*f126890aSEmmanuel Vadot reg = <0x0 0x7000d400 0x0 0x200>; 527*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 528*f126890aSEmmanuel Vadot #address-cells = <1>; 529*f126890aSEmmanuel Vadot #size-cells = <0>; 530*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC1>; 531*f126890aSEmmanuel Vadot clock-names = "spi"; 532*f126890aSEmmanuel Vadot resets = <&tegra_car 41>; 533*f126890aSEmmanuel Vadot reset-names = "spi"; 534*f126890aSEmmanuel Vadot dmas = <&apbdma 15>, <&apbdma 15>; 535*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 536*f126890aSEmmanuel Vadot status = "disabled"; 537*f126890aSEmmanuel Vadot }; 538*f126890aSEmmanuel Vadot 539*f126890aSEmmanuel Vadot spi@7000d600 { 540*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 541*f126890aSEmmanuel Vadot reg = <0x0 0x7000d600 0x0 0x200>; 542*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 543*f126890aSEmmanuel Vadot #address-cells = <1>; 544*f126890aSEmmanuel Vadot #size-cells = <0>; 545*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC2>; 546*f126890aSEmmanuel Vadot clock-names = "spi"; 547*f126890aSEmmanuel Vadot resets = <&tegra_car 44>; 548*f126890aSEmmanuel Vadot reset-names = "spi"; 549*f126890aSEmmanuel Vadot dmas = <&apbdma 16>, <&apbdma 16>; 550*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 551*f126890aSEmmanuel Vadot status = "disabled"; 552*f126890aSEmmanuel Vadot }; 553*f126890aSEmmanuel Vadot 554*f126890aSEmmanuel Vadot spi@7000d800 { 555*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 556*f126890aSEmmanuel Vadot reg = <0x0 0x7000d800 0x0 0x200>; 557*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 558*f126890aSEmmanuel Vadot #address-cells = <1>; 559*f126890aSEmmanuel Vadot #size-cells = <0>; 560*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC3>; 561*f126890aSEmmanuel Vadot clock-names = "spi"; 562*f126890aSEmmanuel Vadot resets = <&tegra_car 46>; 563*f126890aSEmmanuel Vadot reset-names = "spi"; 564*f126890aSEmmanuel Vadot dmas = <&apbdma 17>, <&apbdma 17>; 565*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 566*f126890aSEmmanuel Vadot status = "disabled"; 567*f126890aSEmmanuel Vadot }; 568*f126890aSEmmanuel Vadot 569*f126890aSEmmanuel Vadot spi@7000da00 { 570*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 571*f126890aSEmmanuel Vadot reg = <0x0 0x7000da00 0x0 0x200>; 572*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 573*f126890aSEmmanuel Vadot #address-cells = <1>; 574*f126890aSEmmanuel Vadot #size-cells = <0>; 575*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC4>; 576*f126890aSEmmanuel Vadot clock-names = "spi"; 577*f126890aSEmmanuel Vadot resets = <&tegra_car 68>; 578*f126890aSEmmanuel Vadot reset-names = "spi"; 579*f126890aSEmmanuel Vadot dmas = <&apbdma 18>, <&apbdma 18>; 580*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 581*f126890aSEmmanuel Vadot status = "disabled"; 582*f126890aSEmmanuel Vadot }; 583*f126890aSEmmanuel Vadot 584*f126890aSEmmanuel Vadot spi@7000dc00 { 585*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 586*f126890aSEmmanuel Vadot reg = <0x0 0x7000dc00 0x0 0x200>; 587*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 588*f126890aSEmmanuel Vadot #address-cells = <1>; 589*f126890aSEmmanuel Vadot #size-cells = <0>; 590*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC5>; 591*f126890aSEmmanuel Vadot clock-names = "spi"; 592*f126890aSEmmanuel Vadot resets = <&tegra_car 104>; 593*f126890aSEmmanuel Vadot reset-names = "spi"; 594*f126890aSEmmanuel Vadot dmas = <&apbdma 27>, <&apbdma 27>; 595*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 596*f126890aSEmmanuel Vadot status = "disabled"; 597*f126890aSEmmanuel Vadot }; 598*f126890aSEmmanuel Vadot 599*f126890aSEmmanuel Vadot spi@7000de00 { 600*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi"; 601*f126890aSEmmanuel Vadot reg = <0x0 0x7000de00 0x0 0x200>; 602*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 603*f126890aSEmmanuel Vadot #address-cells = <1>; 604*f126890aSEmmanuel Vadot #size-cells = <0>; 605*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SBC6>; 606*f126890aSEmmanuel Vadot clock-names = "spi"; 607*f126890aSEmmanuel Vadot resets = <&tegra_car 105>; 608*f126890aSEmmanuel Vadot reset-names = "spi"; 609*f126890aSEmmanuel Vadot dmas = <&apbdma 28>, <&apbdma 28>; 610*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 611*f126890aSEmmanuel Vadot status = "disabled"; 612*f126890aSEmmanuel Vadot }; 613*f126890aSEmmanuel Vadot 614*f126890aSEmmanuel Vadot rtc@7000e000 { 615*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc"; 616*f126890aSEmmanuel Vadot reg = <0x0 0x7000e000 0x0 0x100>; 617*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 618*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_RTC>; 619*f126890aSEmmanuel Vadot }; 620*f126890aSEmmanuel Vadot 621*f126890aSEmmanuel Vadot tegra_pmc: pmc@7000e400 { 622*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-pmc"; 623*f126890aSEmmanuel Vadot reg = <0x0 0x7000e400 0x0 0x400>; 624*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_PCLK>, <&clk32k_in>; 625*f126890aSEmmanuel Vadot clock-names = "pclk", "clk32k_in"; 626*f126890aSEmmanuel Vadot #clock-cells = <1>; 627*f126890aSEmmanuel Vadot }; 628*f126890aSEmmanuel Vadot 629*f126890aSEmmanuel Vadot fuse@7000f800 { 630*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-efuse"; 631*f126890aSEmmanuel Vadot reg = <0x0 0x7000f800 0x0 0x400>; 632*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_FUSE>; 633*f126890aSEmmanuel Vadot clock-names = "fuse"; 634*f126890aSEmmanuel Vadot resets = <&tegra_car 39>; 635*f126890aSEmmanuel Vadot reset-names = "fuse"; 636*f126890aSEmmanuel Vadot }; 637*f126890aSEmmanuel Vadot 638*f126890aSEmmanuel Vadot cec@70015000 { 639*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-cec"; 640*f126890aSEmmanuel Vadot reg = <0x0 0x70015000 0x0 0x00001000>; 641*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 642*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_CEC>; 643*f126890aSEmmanuel Vadot clock-names = "cec"; 644*f126890aSEmmanuel Vadot status = "disabled"; 645*f126890aSEmmanuel Vadot hdmi-phandle = <&hdmi>; 646*f126890aSEmmanuel Vadot }; 647*f126890aSEmmanuel Vadot 648*f126890aSEmmanuel Vadot mc: memory-controller@70019000 { 649*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-mc"; 650*f126890aSEmmanuel Vadot reg = <0x0 0x70019000 0x0 0x1000>; 651*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_MC>; 652*f126890aSEmmanuel Vadot clock-names = "mc"; 653*f126890aSEmmanuel Vadot 654*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 655*f126890aSEmmanuel Vadot 656*f126890aSEmmanuel Vadot #iommu-cells = <1>; 657*f126890aSEmmanuel Vadot #reset-cells = <1>; 658*f126890aSEmmanuel Vadot #interconnect-cells = <1>; 659*f126890aSEmmanuel Vadot }; 660*f126890aSEmmanuel Vadot 661*f126890aSEmmanuel Vadot emc: external-memory-controller@7001b000 { 662*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-emc"; 663*f126890aSEmmanuel Vadot reg = <0x0 0x7001b000 0x0 0x1000>; 664*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_EMC>; 665*f126890aSEmmanuel Vadot clock-names = "emc"; 666*f126890aSEmmanuel Vadot 667*f126890aSEmmanuel Vadot nvidia,memory-controller = <&mc>; 668*f126890aSEmmanuel Vadot operating-points-v2 = <&emc_icc_dvfs_opp_table>; 669*f126890aSEmmanuel Vadot 670*f126890aSEmmanuel Vadot #interconnect-cells = <0>; 671*f126890aSEmmanuel Vadot }; 672*f126890aSEmmanuel Vadot 673*f126890aSEmmanuel Vadot sata@70020000 { 674*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ahci"; 675*f126890aSEmmanuel Vadot reg = <0x0 0x70027000 0x0 0x2000>, /* AHCI */ 676*f126890aSEmmanuel Vadot <0x0 0x70020000 0x0 0x7000>; /* SATA */ 677*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 678*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SATA>, 679*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_SATA_OOB>; 680*f126890aSEmmanuel Vadot clock-names = "sata", "sata-oob"; 681*f126890aSEmmanuel Vadot resets = <&tegra_car 124>, 682*f126890aSEmmanuel Vadot <&tegra_car 129>, 683*f126890aSEmmanuel Vadot <&tegra_car 123>; 684*f126890aSEmmanuel Vadot reset-names = "sata", "sata-cold", "sata-oob"; 685*f126890aSEmmanuel Vadot status = "disabled"; 686*f126890aSEmmanuel Vadot }; 687*f126890aSEmmanuel Vadot 688*f126890aSEmmanuel Vadot hda@70030000 { 689*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-hda", "nvidia,tegra30-hda"; 690*f126890aSEmmanuel Vadot reg = <0x0 0x70030000 0x0 0x10000>; 691*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 692*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_HDA>, 693*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_HDA2HDMI>, 694*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_HDA2CODEC_2X>; 695*f126890aSEmmanuel Vadot clock-names = "hda", "hda2hdmi", "hda2codec_2x"; 696*f126890aSEmmanuel Vadot resets = <&tegra_car 125>, /* hda */ 697*f126890aSEmmanuel Vadot <&tegra_car 128>, /* hda2hdmi */ 698*f126890aSEmmanuel Vadot <&tegra_car 111>; /* hda2codec_2x */ 699*f126890aSEmmanuel Vadot reset-names = "hda", "hda2hdmi", "hda2codec_2x"; 700*f126890aSEmmanuel Vadot status = "disabled"; 701*f126890aSEmmanuel Vadot }; 702*f126890aSEmmanuel Vadot 703*f126890aSEmmanuel Vadot usb@70090000 { 704*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-xusb"; 705*f126890aSEmmanuel Vadot reg = <0x0 0x70090000 0x0 0x8000>, 706*f126890aSEmmanuel Vadot <0x0 0x70098000 0x0 0x1000>, 707*f126890aSEmmanuel Vadot <0x0 0x70099000 0x0 0x1000>; 708*f126890aSEmmanuel Vadot reg-names = "hcd", "fpci", "ipfs"; 709*f126890aSEmmanuel Vadot 710*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 711*f126890aSEmmanuel Vadot <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 712*f126890aSEmmanuel Vadot 713*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_XUSB_HOST>, 714*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_HOST_SRC>, 715*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_FALCON_SRC>, 716*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_SS>, 717*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>, 718*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_SS_SRC>, 719*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_HS_SRC>, 720*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_XUSB_FS_SRC>, 721*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_U_480M>, 722*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_CLK_M>, 723*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_E>; 724*f126890aSEmmanuel Vadot clock-names = "xusb_host", "xusb_host_src", 725*f126890aSEmmanuel Vadot "xusb_falcon_src", "xusb_ss", 726*f126890aSEmmanuel Vadot "xusb_ss_div2", "xusb_ss_src", 727*f126890aSEmmanuel Vadot "xusb_hs_src", "xusb_fs_src", 728*f126890aSEmmanuel Vadot "pll_u_480m", "clk_m", "pll_e"; 729*f126890aSEmmanuel Vadot resets = <&tegra_car 89>, <&tegra_car 156>, 730*f126890aSEmmanuel Vadot <&tegra_car 143>; 731*f126890aSEmmanuel Vadot reset-names = "xusb_host", "xusb_ss", "xusb_src"; 732*f126890aSEmmanuel Vadot 733*f126890aSEmmanuel Vadot nvidia,xusb-padctl = <&padctl>; 734*f126890aSEmmanuel Vadot 735*f126890aSEmmanuel Vadot status = "disabled"; 736*f126890aSEmmanuel Vadot }; 737*f126890aSEmmanuel Vadot 738*f126890aSEmmanuel Vadot padctl: padctl@7009f000 { 739*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-xusb-padctl"; 740*f126890aSEmmanuel Vadot reg = <0x0 0x7009f000 0x0 0x1000>; 741*f126890aSEmmanuel Vadot resets = <&tegra_car 142>; 742*f126890aSEmmanuel Vadot reset-names = "padctl"; 743*f126890aSEmmanuel Vadot 744*f126890aSEmmanuel Vadot pads { 745*f126890aSEmmanuel Vadot usb2 { 746*f126890aSEmmanuel Vadot status = "disabled"; 747*f126890aSEmmanuel Vadot 748*f126890aSEmmanuel Vadot lanes { 749*f126890aSEmmanuel Vadot usb2-0 { 750*f126890aSEmmanuel Vadot status = "disabled"; 751*f126890aSEmmanuel Vadot #phy-cells = <0>; 752*f126890aSEmmanuel Vadot }; 753*f126890aSEmmanuel Vadot 754*f126890aSEmmanuel Vadot usb2-1 { 755*f126890aSEmmanuel Vadot status = "disabled"; 756*f126890aSEmmanuel Vadot #phy-cells = <0>; 757*f126890aSEmmanuel Vadot }; 758*f126890aSEmmanuel Vadot 759*f126890aSEmmanuel Vadot usb2-2 { 760*f126890aSEmmanuel Vadot status = "disabled"; 761*f126890aSEmmanuel Vadot #phy-cells = <0>; 762*f126890aSEmmanuel Vadot }; 763*f126890aSEmmanuel Vadot }; 764*f126890aSEmmanuel Vadot }; 765*f126890aSEmmanuel Vadot 766*f126890aSEmmanuel Vadot ulpi { 767*f126890aSEmmanuel Vadot status = "disabled"; 768*f126890aSEmmanuel Vadot 769*f126890aSEmmanuel Vadot lanes { 770*f126890aSEmmanuel Vadot ulpi-0 { 771*f126890aSEmmanuel Vadot status = "disabled"; 772*f126890aSEmmanuel Vadot #phy-cells = <0>; 773*f126890aSEmmanuel Vadot }; 774*f126890aSEmmanuel Vadot }; 775*f126890aSEmmanuel Vadot }; 776*f126890aSEmmanuel Vadot 777*f126890aSEmmanuel Vadot hsic { 778*f126890aSEmmanuel Vadot status = "disabled"; 779*f126890aSEmmanuel Vadot 780*f126890aSEmmanuel Vadot lanes { 781*f126890aSEmmanuel Vadot hsic-0 { 782*f126890aSEmmanuel Vadot status = "disabled"; 783*f126890aSEmmanuel Vadot #phy-cells = <0>; 784*f126890aSEmmanuel Vadot }; 785*f126890aSEmmanuel Vadot 786*f126890aSEmmanuel Vadot hsic-1 { 787*f126890aSEmmanuel Vadot status = "disabled"; 788*f126890aSEmmanuel Vadot #phy-cells = <0>; 789*f126890aSEmmanuel Vadot }; 790*f126890aSEmmanuel Vadot }; 791*f126890aSEmmanuel Vadot }; 792*f126890aSEmmanuel Vadot 793*f126890aSEmmanuel Vadot pcie { 794*f126890aSEmmanuel Vadot status = "disabled"; 795*f126890aSEmmanuel Vadot 796*f126890aSEmmanuel Vadot lanes { 797*f126890aSEmmanuel Vadot pcie-0 { 798*f126890aSEmmanuel Vadot status = "disabled"; 799*f126890aSEmmanuel Vadot #phy-cells = <0>; 800*f126890aSEmmanuel Vadot }; 801*f126890aSEmmanuel Vadot 802*f126890aSEmmanuel Vadot pcie-1 { 803*f126890aSEmmanuel Vadot status = "disabled"; 804*f126890aSEmmanuel Vadot #phy-cells = <0>; 805*f126890aSEmmanuel Vadot }; 806*f126890aSEmmanuel Vadot 807*f126890aSEmmanuel Vadot pcie-2 { 808*f126890aSEmmanuel Vadot status = "disabled"; 809*f126890aSEmmanuel Vadot #phy-cells = <0>; 810*f126890aSEmmanuel Vadot }; 811*f126890aSEmmanuel Vadot 812*f126890aSEmmanuel Vadot pcie-3 { 813*f126890aSEmmanuel Vadot status = "disabled"; 814*f126890aSEmmanuel Vadot #phy-cells = <0>; 815*f126890aSEmmanuel Vadot }; 816*f126890aSEmmanuel Vadot 817*f126890aSEmmanuel Vadot pcie-4 { 818*f126890aSEmmanuel Vadot status = "disabled"; 819*f126890aSEmmanuel Vadot #phy-cells = <0>; 820*f126890aSEmmanuel Vadot }; 821*f126890aSEmmanuel Vadot }; 822*f126890aSEmmanuel Vadot }; 823*f126890aSEmmanuel Vadot 824*f126890aSEmmanuel Vadot sata { 825*f126890aSEmmanuel Vadot status = "disabled"; 826*f126890aSEmmanuel Vadot 827*f126890aSEmmanuel Vadot lanes { 828*f126890aSEmmanuel Vadot sata-0 { 829*f126890aSEmmanuel Vadot status = "disabled"; 830*f126890aSEmmanuel Vadot #phy-cells = <0>; 831*f126890aSEmmanuel Vadot }; 832*f126890aSEmmanuel Vadot }; 833*f126890aSEmmanuel Vadot }; 834*f126890aSEmmanuel Vadot }; 835*f126890aSEmmanuel Vadot 836*f126890aSEmmanuel Vadot ports { 837*f126890aSEmmanuel Vadot usb2-0 { 838*f126890aSEmmanuel Vadot status = "disabled"; 839*f126890aSEmmanuel Vadot }; 840*f126890aSEmmanuel Vadot 841*f126890aSEmmanuel Vadot usb2-1 { 842*f126890aSEmmanuel Vadot status = "disabled"; 843*f126890aSEmmanuel Vadot }; 844*f126890aSEmmanuel Vadot 845*f126890aSEmmanuel Vadot usb2-2 { 846*f126890aSEmmanuel Vadot status = "disabled"; 847*f126890aSEmmanuel Vadot }; 848*f126890aSEmmanuel Vadot 849*f126890aSEmmanuel Vadot ulpi-0 { 850*f126890aSEmmanuel Vadot status = "disabled"; 851*f126890aSEmmanuel Vadot }; 852*f126890aSEmmanuel Vadot 853*f126890aSEmmanuel Vadot hsic-0 { 854*f126890aSEmmanuel Vadot status = "disabled"; 855*f126890aSEmmanuel Vadot }; 856*f126890aSEmmanuel Vadot 857*f126890aSEmmanuel Vadot hsic-1 { 858*f126890aSEmmanuel Vadot status = "disabled"; 859*f126890aSEmmanuel Vadot }; 860*f126890aSEmmanuel Vadot 861*f126890aSEmmanuel Vadot usb3-0 { 862*f126890aSEmmanuel Vadot status = "disabled"; 863*f126890aSEmmanuel Vadot }; 864*f126890aSEmmanuel Vadot 865*f126890aSEmmanuel Vadot usb3-1 { 866*f126890aSEmmanuel Vadot status = "disabled"; 867*f126890aSEmmanuel Vadot }; 868*f126890aSEmmanuel Vadot }; 869*f126890aSEmmanuel Vadot }; 870*f126890aSEmmanuel Vadot 871*f126890aSEmmanuel Vadot mmc@700b0000 { 872*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-sdhci"; 873*f126890aSEmmanuel Vadot reg = <0x0 0x700b0000 0x0 0x200>; 874*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 875*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SDMMC1>; 876*f126890aSEmmanuel Vadot clock-names = "sdhci"; 877*f126890aSEmmanuel Vadot resets = <&tegra_car 14>; 878*f126890aSEmmanuel Vadot reset-names = "sdhci"; 879*f126890aSEmmanuel Vadot status = "disabled"; 880*f126890aSEmmanuel Vadot }; 881*f126890aSEmmanuel Vadot 882*f126890aSEmmanuel Vadot mmc@700b0200 { 883*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-sdhci"; 884*f126890aSEmmanuel Vadot reg = <0x0 0x700b0200 0x0 0x200>; 885*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 886*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SDMMC2>; 887*f126890aSEmmanuel Vadot clock-names = "sdhci"; 888*f126890aSEmmanuel Vadot resets = <&tegra_car 9>; 889*f126890aSEmmanuel Vadot reset-names = "sdhci"; 890*f126890aSEmmanuel Vadot status = "disabled"; 891*f126890aSEmmanuel Vadot }; 892*f126890aSEmmanuel Vadot 893*f126890aSEmmanuel Vadot mmc@700b0400 { 894*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-sdhci"; 895*f126890aSEmmanuel Vadot reg = <0x0 0x700b0400 0x0 0x200>; 896*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 897*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SDMMC3>; 898*f126890aSEmmanuel Vadot clock-names = "sdhci"; 899*f126890aSEmmanuel Vadot resets = <&tegra_car 69>; 900*f126890aSEmmanuel Vadot reset-names = "sdhci"; 901*f126890aSEmmanuel Vadot status = "disabled"; 902*f126890aSEmmanuel Vadot }; 903*f126890aSEmmanuel Vadot 904*f126890aSEmmanuel Vadot mmc@700b0600 { 905*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-sdhci"; 906*f126890aSEmmanuel Vadot reg = <0x0 0x700b0600 0x0 0x200>; 907*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 908*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_SDMMC4>; 909*f126890aSEmmanuel Vadot clock-names = "sdhci"; 910*f126890aSEmmanuel Vadot resets = <&tegra_car 15>; 911*f126890aSEmmanuel Vadot reset-names = "sdhci"; 912*f126890aSEmmanuel Vadot status = "disabled"; 913*f126890aSEmmanuel Vadot }; 914*f126890aSEmmanuel Vadot 915*f126890aSEmmanuel Vadot soctherm: thermal-sensor@700e2000 { 916*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-soctherm"; 917*f126890aSEmmanuel Vadot reg = <0x0 0x700e2000 0x0 0x600>, /* SOC_THERM reg_base */ 918*f126890aSEmmanuel Vadot <0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ 919*f126890aSEmmanuel Vadot reg-names = "soctherm-reg", "car-reg"; 920*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 921*f126890aSEmmanuel Vadot <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 922*f126890aSEmmanuel Vadot interrupt-names = "thermal", "edp"; 923*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_TSENSOR>, 924*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_SOC_THERM>; 925*f126890aSEmmanuel Vadot clock-names = "tsensor", "soctherm"; 926*f126890aSEmmanuel Vadot resets = <&tegra_car 78>; 927*f126890aSEmmanuel Vadot reset-names = "soctherm"; 928*f126890aSEmmanuel Vadot #thermal-sensor-cells = <1>; 929*f126890aSEmmanuel Vadot 930*f126890aSEmmanuel Vadot throttle-cfgs { 931*f126890aSEmmanuel Vadot throttle_heavy: heavy { 932*f126890aSEmmanuel Vadot nvidia,priority = <100>; 933*f126890aSEmmanuel Vadot nvidia,cpu-throt-percent = <85>; 934*f126890aSEmmanuel Vadot nvidia,gpu-throt-level = <TEGRA_SOCTHERM_THROT_LEVEL_HIGH>; 935*f126890aSEmmanuel Vadot 936*f126890aSEmmanuel Vadot #cooling-cells = <2>; 937*f126890aSEmmanuel Vadot }; 938*f126890aSEmmanuel Vadot }; 939*f126890aSEmmanuel Vadot }; 940*f126890aSEmmanuel Vadot 941*f126890aSEmmanuel Vadot dfll: clock@70110000 { 942*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-dfll"; 943*f126890aSEmmanuel Vadot reg = <0 0x70110000 0 0x100>, /* DFLL control */ 944*f126890aSEmmanuel Vadot <0 0x70110000 0 0x100>, /* I2C output control */ 945*f126890aSEmmanuel Vadot <0 0x70110100 0 0x100>, /* Integrated I2C controller */ 946*f126890aSEmmanuel Vadot <0 0x70110200 0 0x100>; /* Look-up table RAM */ 947*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 948*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_DFLL_SOC>, 949*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_DFLL_REF>, 950*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_I2C5>; 951*f126890aSEmmanuel Vadot clock-names = "soc", "ref", "i2c"; 952*f126890aSEmmanuel Vadot resets = <&tegra_car TEGRA124_RST_DFLL_DVCO>; 953*f126890aSEmmanuel Vadot reset-names = "dvco"; 954*f126890aSEmmanuel Vadot #clock-cells = <0>; 955*f126890aSEmmanuel Vadot clock-output-names = "dfllCPU_out"; 956*f126890aSEmmanuel Vadot nvidia,sample-rate = <12500>; 957*f126890aSEmmanuel Vadot nvidia,droop-ctrl = <0x00000f00>; 958*f126890aSEmmanuel Vadot nvidia,force-mode = <1>; 959*f126890aSEmmanuel Vadot nvidia,cf = <10>; 960*f126890aSEmmanuel Vadot nvidia,ci = <0>; 961*f126890aSEmmanuel Vadot nvidia,cg = <2>; 962*f126890aSEmmanuel Vadot status = "disabled"; 963*f126890aSEmmanuel Vadot }; 964*f126890aSEmmanuel Vadot 965*f126890aSEmmanuel Vadot ahub@70300000 { 966*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ahub"; 967*f126890aSEmmanuel Vadot reg = <0x0 0x70300000 0x0 0x200>, 968*f126890aSEmmanuel Vadot <0x0 0x70300800 0x0 0x800>, 969*f126890aSEmmanuel Vadot <0x0 0x70300200 0x0 0x600>; 970*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 971*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>, 972*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_APBIF>; 973*f126890aSEmmanuel Vadot clock-names = "d_audio", "apbif"; 974*f126890aSEmmanuel Vadot resets = <&tegra_car 106>, /* d_audio */ 975*f126890aSEmmanuel Vadot <&tegra_car 107>, /* apbif */ 976*f126890aSEmmanuel Vadot <&tegra_car 30>, /* i2s0 */ 977*f126890aSEmmanuel Vadot <&tegra_car 11>, /* i2s1 */ 978*f126890aSEmmanuel Vadot <&tegra_car 18>, /* i2s2 */ 979*f126890aSEmmanuel Vadot <&tegra_car 101>, /* i2s3 */ 980*f126890aSEmmanuel Vadot <&tegra_car 102>, /* i2s4 */ 981*f126890aSEmmanuel Vadot <&tegra_car 108>, /* dam0 */ 982*f126890aSEmmanuel Vadot <&tegra_car 109>, /* dam1 */ 983*f126890aSEmmanuel Vadot <&tegra_car 110>, /* dam2 */ 984*f126890aSEmmanuel Vadot <&tegra_car 10>, /* spdif */ 985*f126890aSEmmanuel Vadot <&tegra_car 153>, /* amx */ 986*f126890aSEmmanuel Vadot <&tegra_car 185>, /* amx1 */ 987*f126890aSEmmanuel Vadot <&tegra_car 154>, /* adx */ 988*f126890aSEmmanuel Vadot <&tegra_car 180>, /* adx1 */ 989*f126890aSEmmanuel Vadot <&tegra_car 186>, /* afc0 */ 990*f126890aSEmmanuel Vadot <&tegra_car 187>, /* afc1 */ 991*f126890aSEmmanuel Vadot <&tegra_car 188>, /* afc2 */ 992*f126890aSEmmanuel Vadot <&tegra_car 189>, /* afc3 */ 993*f126890aSEmmanuel Vadot <&tegra_car 190>, /* afc4 */ 994*f126890aSEmmanuel Vadot <&tegra_car 191>; /* afc5 */ 995*f126890aSEmmanuel Vadot reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2", 996*f126890aSEmmanuel Vadot "i2s3", "i2s4", "dam0", "dam1", "dam2", 997*f126890aSEmmanuel Vadot "spdif", "amx", "amx1", "adx", "adx1", 998*f126890aSEmmanuel Vadot "afc0", "afc1", "afc2", "afc3", "afc4", "afc5"; 999*f126890aSEmmanuel Vadot dmas = <&apbdma 1>, <&apbdma 1>, 1000*f126890aSEmmanuel Vadot <&apbdma 2>, <&apbdma 2>, 1001*f126890aSEmmanuel Vadot <&apbdma 3>, <&apbdma 3>, 1002*f126890aSEmmanuel Vadot <&apbdma 4>, <&apbdma 4>, 1003*f126890aSEmmanuel Vadot <&apbdma 6>, <&apbdma 6>, 1004*f126890aSEmmanuel Vadot <&apbdma 7>, <&apbdma 7>, 1005*f126890aSEmmanuel Vadot <&apbdma 12>, <&apbdma 12>, 1006*f126890aSEmmanuel Vadot <&apbdma 13>, <&apbdma 13>, 1007*f126890aSEmmanuel Vadot <&apbdma 14>, <&apbdma 14>, 1008*f126890aSEmmanuel Vadot <&apbdma 29>, <&apbdma 29>; 1009*f126890aSEmmanuel Vadot dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2", 1010*f126890aSEmmanuel Vadot "rx3", "tx3", "rx4", "tx4", "rx5", "tx5", 1011*f126890aSEmmanuel Vadot "rx6", "tx6", "rx7", "tx7", "rx8", "tx8", 1012*f126890aSEmmanuel Vadot "rx9", "tx9"; 1013*f126890aSEmmanuel Vadot ranges; 1014*f126890aSEmmanuel Vadot #address-cells = <2>; 1015*f126890aSEmmanuel Vadot #size-cells = <2>; 1016*f126890aSEmmanuel Vadot 1017*f126890aSEmmanuel Vadot tegra_i2s0: i2s@70301000 { 1018*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2s"; 1019*f126890aSEmmanuel Vadot reg = <0x0 0x70301000 0x0 0x100>; 1020*f126890aSEmmanuel Vadot nvidia,ahub-cif-ids = <4 4>; 1021*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2S0>; 1022*f126890aSEmmanuel Vadot resets = <&tegra_car 30>; 1023*f126890aSEmmanuel Vadot reset-names = "i2s"; 1024*f126890aSEmmanuel Vadot status = "disabled"; 1025*f126890aSEmmanuel Vadot }; 1026*f126890aSEmmanuel Vadot 1027*f126890aSEmmanuel Vadot tegra_i2s1: i2s@70301100 { 1028*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2s"; 1029*f126890aSEmmanuel Vadot reg = <0x0 0x70301100 0x0 0x100>; 1030*f126890aSEmmanuel Vadot nvidia,ahub-cif-ids = <5 5>; 1031*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2S1>; 1032*f126890aSEmmanuel Vadot resets = <&tegra_car 11>; 1033*f126890aSEmmanuel Vadot reset-names = "i2s"; 1034*f126890aSEmmanuel Vadot status = "disabled"; 1035*f126890aSEmmanuel Vadot }; 1036*f126890aSEmmanuel Vadot 1037*f126890aSEmmanuel Vadot tegra_i2s2: i2s@70301200 { 1038*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2s"; 1039*f126890aSEmmanuel Vadot reg = <0x0 0x70301200 0x0 0x100>; 1040*f126890aSEmmanuel Vadot nvidia,ahub-cif-ids = <6 6>; 1041*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2S2>; 1042*f126890aSEmmanuel Vadot resets = <&tegra_car 18>; 1043*f126890aSEmmanuel Vadot reset-names = "i2s"; 1044*f126890aSEmmanuel Vadot status = "disabled"; 1045*f126890aSEmmanuel Vadot }; 1046*f126890aSEmmanuel Vadot 1047*f126890aSEmmanuel Vadot tegra_i2s3: i2s@70301300 { 1048*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2s"; 1049*f126890aSEmmanuel Vadot reg = <0x0 0x70301300 0x0 0x100>; 1050*f126890aSEmmanuel Vadot nvidia,ahub-cif-ids = <7 7>; 1051*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2S3>; 1052*f126890aSEmmanuel Vadot resets = <&tegra_car 101>; 1053*f126890aSEmmanuel Vadot reset-names = "i2s"; 1054*f126890aSEmmanuel Vadot status = "disabled"; 1055*f126890aSEmmanuel Vadot }; 1056*f126890aSEmmanuel Vadot 1057*f126890aSEmmanuel Vadot tegra_i2s4: i2s@70301400 { 1058*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-i2s"; 1059*f126890aSEmmanuel Vadot reg = <0x0 0x70301400 0x0 0x100>; 1060*f126890aSEmmanuel Vadot nvidia,ahub-cif-ids = <8 8>; 1061*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_I2S4>; 1062*f126890aSEmmanuel Vadot resets = <&tegra_car 102>; 1063*f126890aSEmmanuel Vadot reset-names = "i2s"; 1064*f126890aSEmmanuel Vadot status = "disabled"; 1065*f126890aSEmmanuel Vadot }; 1066*f126890aSEmmanuel Vadot }; 1067*f126890aSEmmanuel Vadot 1068*f126890aSEmmanuel Vadot usb@7d000000 { 1069*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci"; 1070*f126890aSEmmanuel Vadot reg = <0x0 0x7d000000 0x0 0x4000>; 1071*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 1072*f126890aSEmmanuel Vadot phy_type = "utmi"; 1073*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USBD>; 1074*f126890aSEmmanuel Vadot resets = <&tegra_car 22>; 1075*f126890aSEmmanuel Vadot reset-names = "usb"; 1076*f126890aSEmmanuel Vadot nvidia,phy = <&phy1>; 1077*f126890aSEmmanuel Vadot status = "disabled"; 1078*f126890aSEmmanuel Vadot }; 1079*f126890aSEmmanuel Vadot 1080*f126890aSEmmanuel Vadot phy1: usb-phy@7d000000 { 1081*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; 1082*f126890aSEmmanuel Vadot reg = <0x0 0x7d000000 0x0 0x4000>, 1083*f126890aSEmmanuel Vadot <0x0 0x7d000000 0x0 0x4000>; 1084*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 1085*f126890aSEmmanuel Vadot phy_type = "utmi"; 1086*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USBD>, 1087*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_U>, 1088*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_USBD>; 1089*f126890aSEmmanuel Vadot clock-names = "reg", "pll_u", "utmi-pads"; 1090*f126890aSEmmanuel Vadot resets = <&tegra_car 22>, <&tegra_car 22>; 1091*f126890aSEmmanuel Vadot reset-names = "usb", "utmi-pads"; 1092*f126890aSEmmanuel Vadot #phy-cells = <0>; 1093*f126890aSEmmanuel Vadot nvidia,hssync-start-delay = <0>; 1094*f126890aSEmmanuel Vadot nvidia,idle-wait-delay = <17>; 1095*f126890aSEmmanuel Vadot nvidia,elastic-limit = <16>; 1096*f126890aSEmmanuel Vadot nvidia,term-range-adj = <6>; 1097*f126890aSEmmanuel Vadot nvidia,xcvr-setup = <9>; 1098*f126890aSEmmanuel Vadot nvidia,xcvr-lsfslew = <0>; 1099*f126890aSEmmanuel Vadot nvidia,xcvr-lsrslew = <3>; 1100*f126890aSEmmanuel Vadot nvidia,hssquelch-level = <2>; 1101*f126890aSEmmanuel Vadot nvidia,hsdiscon-level = <5>; 1102*f126890aSEmmanuel Vadot nvidia,xcvr-hsslew = <12>; 1103*f126890aSEmmanuel Vadot nvidia,has-utmi-pad-registers; 1104*f126890aSEmmanuel Vadot nvidia,pmc = <&tegra_pmc 0>; 1105*f126890aSEmmanuel Vadot status = "disabled"; 1106*f126890aSEmmanuel Vadot }; 1107*f126890aSEmmanuel Vadot 1108*f126890aSEmmanuel Vadot usb@7d004000 { 1109*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci"; 1110*f126890aSEmmanuel Vadot reg = <0x0 0x7d004000 0x0 0x4000>; 1111*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 1112*f126890aSEmmanuel Vadot phy_type = "utmi"; 1113*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USB2>; 1114*f126890aSEmmanuel Vadot resets = <&tegra_car 58>; 1115*f126890aSEmmanuel Vadot reset-names = "usb"; 1116*f126890aSEmmanuel Vadot nvidia,phy = <&phy2>; 1117*f126890aSEmmanuel Vadot status = "disabled"; 1118*f126890aSEmmanuel Vadot }; 1119*f126890aSEmmanuel Vadot 1120*f126890aSEmmanuel Vadot phy2: usb-phy@7d004000 { 1121*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; 1122*f126890aSEmmanuel Vadot reg = <0x0 0x7d004000 0x0 0x4000>, 1123*f126890aSEmmanuel Vadot <0x0 0x7d000000 0x0 0x4000>; 1124*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 1125*f126890aSEmmanuel Vadot phy_type = "utmi"; 1126*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USB2>, 1127*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_U>, 1128*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_USBD>; 1129*f126890aSEmmanuel Vadot clock-names = "reg", "pll_u", "utmi-pads"; 1130*f126890aSEmmanuel Vadot resets = <&tegra_car 58>, <&tegra_car 22>; 1131*f126890aSEmmanuel Vadot reset-names = "usb", "utmi-pads"; 1132*f126890aSEmmanuel Vadot #phy-cells = <0>; 1133*f126890aSEmmanuel Vadot nvidia,hssync-start-delay = <0>; 1134*f126890aSEmmanuel Vadot nvidia,idle-wait-delay = <17>; 1135*f126890aSEmmanuel Vadot nvidia,elastic-limit = <16>; 1136*f126890aSEmmanuel Vadot nvidia,term-range-adj = <6>; 1137*f126890aSEmmanuel Vadot nvidia,xcvr-setup = <9>; 1138*f126890aSEmmanuel Vadot nvidia,xcvr-lsfslew = <0>; 1139*f126890aSEmmanuel Vadot nvidia,xcvr-lsrslew = <3>; 1140*f126890aSEmmanuel Vadot nvidia,hssquelch-level = <2>; 1141*f126890aSEmmanuel Vadot nvidia,hsdiscon-level = <5>; 1142*f126890aSEmmanuel Vadot nvidia,xcvr-hsslew = <12>; 1143*f126890aSEmmanuel Vadot nvidia,pmc = <&tegra_pmc 1>; 1144*f126890aSEmmanuel Vadot status = "disabled"; 1145*f126890aSEmmanuel Vadot }; 1146*f126890aSEmmanuel Vadot 1147*f126890aSEmmanuel Vadot usb@7d008000 { 1148*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci"; 1149*f126890aSEmmanuel Vadot reg = <0x0 0x7d008000 0x0 0x4000>; 1150*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 1151*f126890aSEmmanuel Vadot phy_type = "utmi"; 1152*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USB3>; 1153*f126890aSEmmanuel Vadot resets = <&tegra_car 59>; 1154*f126890aSEmmanuel Vadot reset-names = "usb"; 1155*f126890aSEmmanuel Vadot nvidia,phy = <&phy3>; 1156*f126890aSEmmanuel Vadot status = "disabled"; 1157*f126890aSEmmanuel Vadot }; 1158*f126890aSEmmanuel Vadot 1159*f126890aSEmmanuel Vadot phy3: usb-phy@7d008000 { 1160*f126890aSEmmanuel Vadot compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; 1161*f126890aSEmmanuel Vadot reg = <0x0 0x7d008000 0x0 0x4000>, 1162*f126890aSEmmanuel Vadot <0x0 0x7d000000 0x0 0x4000>; 1163*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 1164*f126890aSEmmanuel Vadot phy_type = "utmi"; 1165*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_USB3>, 1166*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_U>, 1167*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_USBD>; 1168*f126890aSEmmanuel Vadot clock-names = "reg", "pll_u", "utmi-pads"; 1169*f126890aSEmmanuel Vadot resets = <&tegra_car 59>, <&tegra_car 22>; 1170*f126890aSEmmanuel Vadot reset-names = "usb", "utmi-pads"; 1171*f126890aSEmmanuel Vadot #phy-cells = <0>; 1172*f126890aSEmmanuel Vadot nvidia,hssync-start-delay = <0>; 1173*f126890aSEmmanuel Vadot nvidia,idle-wait-delay = <17>; 1174*f126890aSEmmanuel Vadot nvidia,elastic-limit = <16>; 1175*f126890aSEmmanuel Vadot nvidia,term-range-adj = <6>; 1176*f126890aSEmmanuel Vadot nvidia,xcvr-setup = <9>; 1177*f126890aSEmmanuel Vadot nvidia,xcvr-lsfslew = <0>; 1178*f126890aSEmmanuel Vadot nvidia,xcvr-lsrslew = <3>; 1179*f126890aSEmmanuel Vadot nvidia,hssquelch-level = <2>; 1180*f126890aSEmmanuel Vadot nvidia,hsdiscon-level = <5>; 1181*f126890aSEmmanuel Vadot nvidia,xcvr-hsslew = <12>; 1182*f126890aSEmmanuel Vadot nvidia,pmc = <&tegra_pmc 2>; 1183*f126890aSEmmanuel Vadot status = "disabled"; 1184*f126890aSEmmanuel Vadot }; 1185*f126890aSEmmanuel Vadot 1186*f126890aSEmmanuel Vadot cpus { 1187*f126890aSEmmanuel Vadot #address-cells = <1>; 1188*f126890aSEmmanuel Vadot #size-cells = <0>; 1189*f126890aSEmmanuel Vadot 1190*f126890aSEmmanuel Vadot cpu@0 { 1191*f126890aSEmmanuel Vadot device_type = "cpu"; 1192*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15"; 1193*f126890aSEmmanuel Vadot reg = <0>; 1194*f126890aSEmmanuel Vadot 1195*f126890aSEmmanuel Vadot clocks = <&tegra_car TEGRA124_CLK_CCLK_G>, 1196*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_CCLK_LP>, 1197*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_X>, 1198*f126890aSEmmanuel Vadot <&tegra_car TEGRA124_CLK_PLL_P>, 1199*f126890aSEmmanuel Vadot <&dfll>; 1200*f126890aSEmmanuel Vadot clock-names = "cpu_g", "cpu_lp", "pll_x", "pll_p", "dfll"; 1201*f126890aSEmmanuel Vadot /* FIXME: what's the actual transition time? */ 1202*f126890aSEmmanuel Vadot clock-latency = <300000>; 1203*f126890aSEmmanuel Vadot }; 1204*f126890aSEmmanuel Vadot 1205*f126890aSEmmanuel Vadot cpu@1 { 1206*f126890aSEmmanuel Vadot device_type = "cpu"; 1207*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15"; 1208*f126890aSEmmanuel Vadot reg = <1>; 1209*f126890aSEmmanuel Vadot }; 1210*f126890aSEmmanuel Vadot 1211*f126890aSEmmanuel Vadot cpu@2 { 1212*f126890aSEmmanuel Vadot device_type = "cpu"; 1213*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15"; 1214*f126890aSEmmanuel Vadot reg = <2>; 1215*f126890aSEmmanuel Vadot }; 1216*f126890aSEmmanuel Vadot 1217*f126890aSEmmanuel Vadot cpu@3 { 1218*f126890aSEmmanuel Vadot device_type = "cpu"; 1219*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15"; 1220*f126890aSEmmanuel Vadot reg = <3>; 1221*f126890aSEmmanuel Vadot }; 1222*f126890aSEmmanuel Vadot }; 1223*f126890aSEmmanuel Vadot 1224*f126890aSEmmanuel Vadot pmu { 1225*f126890aSEmmanuel Vadot compatible = "arm,cortex-a15-pmu"; 1226*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 1227*f126890aSEmmanuel Vadot <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 1228*f126890aSEmmanuel Vadot <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 1229*f126890aSEmmanuel Vadot <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 1230*f126890aSEmmanuel Vadot interrupt-affinity = <&{/cpus/cpu@0}>, 1231*f126890aSEmmanuel Vadot <&{/cpus/cpu@1}>, 1232*f126890aSEmmanuel Vadot <&{/cpus/cpu@2}>, 1233*f126890aSEmmanuel Vadot <&{/cpus/cpu@3}>; 1234*f126890aSEmmanuel Vadot }; 1235*f126890aSEmmanuel Vadot 1236*f126890aSEmmanuel Vadot thermal-zones { 1237*f126890aSEmmanuel Vadot cpu-thermal { 1238*f126890aSEmmanuel Vadot polling-delay-passive = <1000>; 1239*f126890aSEmmanuel Vadot polling-delay = <1000>; 1240*f126890aSEmmanuel Vadot 1241*f126890aSEmmanuel Vadot thermal-sensors = 1242*f126890aSEmmanuel Vadot <&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>; 1243*f126890aSEmmanuel Vadot 1244*f126890aSEmmanuel Vadot trips { 1245*f126890aSEmmanuel Vadot cpu-shutdown-trip { 1246*f126890aSEmmanuel Vadot temperature = <103000>; 1247*f126890aSEmmanuel Vadot hysteresis = <0>; 1248*f126890aSEmmanuel Vadot type = "critical"; 1249*f126890aSEmmanuel Vadot }; 1250*f126890aSEmmanuel Vadot cpu_throttle_trip: throttle-trip { 1251*f126890aSEmmanuel Vadot temperature = <100000>; 1252*f126890aSEmmanuel Vadot hysteresis = <1000>; 1253*f126890aSEmmanuel Vadot type = "hot"; 1254*f126890aSEmmanuel Vadot }; 1255*f126890aSEmmanuel Vadot }; 1256*f126890aSEmmanuel Vadot 1257*f126890aSEmmanuel Vadot cooling-maps { 1258*f126890aSEmmanuel Vadot map0 { 1259*f126890aSEmmanuel Vadot trip = <&cpu_throttle_trip>; 1260*f126890aSEmmanuel Vadot cooling-device = <&throttle_heavy 1 1>; 1261*f126890aSEmmanuel Vadot }; 1262*f126890aSEmmanuel Vadot }; 1263*f126890aSEmmanuel Vadot }; 1264*f126890aSEmmanuel Vadot 1265*f126890aSEmmanuel Vadot mem-thermal { 1266*f126890aSEmmanuel Vadot polling-delay-passive = <1000>; 1267*f126890aSEmmanuel Vadot polling-delay = <1000>; 1268*f126890aSEmmanuel Vadot 1269*f126890aSEmmanuel Vadot thermal-sensors = 1270*f126890aSEmmanuel Vadot <&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>; 1271*f126890aSEmmanuel Vadot 1272*f126890aSEmmanuel Vadot trips { 1273*f126890aSEmmanuel Vadot mem-shutdown-trip { 1274*f126890aSEmmanuel Vadot temperature = <103000>; 1275*f126890aSEmmanuel Vadot hysteresis = <0>; 1276*f126890aSEmmanuel Vadot type = "critical"; 1277*f126890aSEmmanuel Vadot }; 1278*f126890aSEmmanuel Vadot mem-throttle-trip { 1279*f126890aSEmmanuel Vadot temperature = <99000>; 1280*f126890aSEmmanuel Vadot hysteresis = <1000>; 1281*f126890aSEmmanuel Vadot type = "hot"; 1282*f126890aSEmmanuel Vadot }; 1283*f126890aSEmmanuel Vadot }; 1284*f126890aSEmmanuel Vadot 1285*f126890aSEmmanuel Vadot cooling-maps { 1286*f126890aSEmmanuel Vadot /* 1287*f126890aSEmmanuel Vadot * There are currently no cooling maps, 1288*f126890aSEmmanuel Vadot * because there are no cooling devices. 1289*f126890aSEmmanuel Vadot */ 1290*f126890aSEmmanuel Vadot }; 1291*f126890aSEmmanuel Vadot }; 1292*f126890aSEmmanuel Vadot 1293*f126890aSEmmanuel Vadot gpu-thermal { 1294*f126890aSEmmanuel Vadot polling-delay-passive = <1000>; 1295*f126890aSEmmanuel Vadot polling-delay = <1000>; 1296*f126890aSEmmanuel Vadot 1297*f126890aSEmmanuel Vadot thermal-sensors = 1298*f126890aSEmmanuel Vadot <&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>; 1299*f126890aSEmmanuel Vadot 1300*f126890aSEmmanuel Vadot trips { 1301*f126890aSEmmanuel Vadot gpu-shutdown-trip { 1302*f126890aSEmmanuel Vadot temperature = <101000>; 1303*f126890aSEmmanuel Vadot hysteresis = <0>; 1304*f126890aSEmmanuel Vadot type = "critical"; 1305*f126890aSEmmanuel Vadot }; 1306*f126890aSEmmanuel Vadot gpu_throttle_trip: throttle-trip { 1307*f126890aSEmmanuel Vadot temperature = <99000>; 1308*f126890aSEmmanuel Vadot hysteresis = <1000>; 1309*f126890aSEmmanuel Vadot type = "hot"; 1310*f126890aSEmmanuel Vadot }; 1311*f126890aSEmmanuel Vadot }; 1312*f126890aSEmmanuel Vadot 1313*f126890aSEmmanuel Vadot cooling-maps { 1314*f126890aSEmmanuel Vadot map0 { 1315*f126890aSEmmanuel Vadot trip = <&gpu_throttle_trip>; 1316*f126890aSEmmanuel Vadot cooling-device = <&throttle_heavy 1 1>; 1317*f126890aSEmmanuel Vadot }; 1318*f126890aSEmmanuel Vadot }; 1319*f126890aSEmmanuel Vadot }; 1320*f126890aSEmmanuel Vadot 1321*f126890aSEmmanuel Vadot pllx-thermal { 1322*f126890aSEmmanuel Vadot polling-delay-passive = <1000>; 1323*f126890aSEmmanuel Vadot polling-delay = <1000>; 1324*f126890aSEmmanuel Vadot 1325*f126890aSEmmanuel Vadot thermal-sensors = 1326*f126890aSEmmanuel Vadot <&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>; 1327*f126890aSEmmanuel Vadot 1328*f126890aSEmmanuel Vadot trips { 1329*f126890aSEmmanuel Vadot pllx-shutdown-trip { 1330*f126890aSEmmanuel Vadot temperature = <103000>; 1331*f126890aSEmmanuel Vadot hysteresis = <0>; 1332*f126890aSEmmanuel Vadot type = "critical"; 1333*f126890aSEmmanuel Vadot }; 1334*f126890aSEmmanuel Vadot pllx-throttle-trip { 1335*f126890aSEmmanuel Vadot temperature = <99000>; 1336*f126890aSEmmanuel Vadot hysteresis = <1000>; 1337*f126890aSEmmanuel Vadot type = "hot"; 1338*f126890aSEmmanuel Vadot }; 1339*f126890aSEmmanuel Vadot }; 1340*f126890aSEmmanuel Vadot 1341*f126890aSEmmanuel Vadot cooling-maps { 1342*f126890aSEmmanuel Vadot /* 1343*f126890aSEmmanuel Vadot * There are currently no cooling maps, 1344*f126890aSEmmanuel Vadot * because there are no cooling devices. 1345*f126890aSEmmanuel Vadot */ 1346*f126890aSEmmanuel Vadot }; 1347*f126890aSEmmanuel Vadot }; 1348*f126890aSEmmanuel Vadot }; 1349*f126890aSEmmanuel Vadot 1350*f126890aSEmmanuel Vadot timer { 1351*f126890aSEmmanuel Vadot compatible = "arm,armv7-timer"; 1352*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 13 1353*f126890aSEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1354*f126890aSEmmanuel Vadot <GIC_PPI 14 1355*f126890aSEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1356*f126890aSEmmanuel Vadot <GIC_PPI 11 1357*f126890aSEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1358*f126890aSEmmanuel Vadot <GIC_PPI 10 1359*f126890aSEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 1360*f126890aSEmmanuel Vadot interrupt-parent = <&gic>; 1361*f126890aSEmmanuel Vadot }; 1362*f126890aSEmmanuel Vadot}; 1363