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