1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 2c58f5f88SThierry Reding#include <dt-bindings/clock/tegra186-clock.h> 3fc4bb754SThierry Reding#include <dt-bindings/gpio/tegra186-gpio.h> 439cb62cbSJoseph Lo#include <dt-bindings/interrupt-controller/arm-gic.h> 55edcebb9SThierry Reding#include <dt-bindings/mailbox/tegra186-hsp.h> 6d25a3bf1SThierry Reding#include <dt-bindings/memory/tegra186-mc.h> 724005fd1SAapo Vienamo#include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 8dfd7a384SAlexandre Courbot#include <dt-bindings/power/tegra186-powergate.h> 97bcf2664SThierry Reding#include <dt-bindings/reset/tegra186-reset.h> 1015274c23SMikko Perttunen#include <dt-bindings/thermal/tegra186-bpmp-thermal.h> 1139cb62cbSJoseph Lo 1239cb62cbSJoseph Lo/ { 1339cb62cbSJoseph Lo compatible = "nvidia,tegra186"; 1439cb62cbSJoseph Lo interrupt-parent = <&gic>; 1539cb62cbSJoseph Lo #address-cells = <2>; 1639cb62cbSJoseph Lo #size-cells = <2>; 1739cb62cbSJoseph Lo 1894e25dc3SThierry Reding misc@100000 { 1994e25dc3SThierry Reding compatible = "nvidia,tegra186-misc"; 2094e25dc3SThierry Reding reg = <0x0 0x00100000 0x0 0xf000>, 2194e25dc3SThierry Reding <0x0 0x0010f000 0x0 0x1000>; 2294e25dc3SThierry Reding }; 2394e25dc3SThierry Reding 24fc4bb754SThierry Reding gpio: gpio@2200000 { 25fc4bb754SThierry Reding compatible = "nvidia,tegra186-gpio"; 26fc4bb754SThierry Reding reg-names = "security", "gpio"; 27fc4bb754SThierry Reding reg = <0x0 0x2200000 0x0 0x10000>, 28fc4bb754SThierry Reding <0x0 0x2210000 0x0 0x10000>; 29fc4bb754SThierry Reding interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>, 30fc4bb754SThierry Reding <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>, 31fc4bb754SThierry Reding <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, 32fc4bb754SThierry Reding <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 33fc4bb754SThierry Reding <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, 34fc4bb754SThierry Reding <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>; 35fc4bb754SThierry Reding #interrupt-cells = <2>; 36fc4bb754SThierry Reding interrupt-controller; 37fc4bb754SThierry Reding #gpio-cells = <2>; 38fc4bb754SThierry Reding gpio-controller; 39fc4bb754SThierry Reding }; 40fc4bb754SThierry Reding 410caafbdeSThierry Reding ethernet@2490000 { 420caafbdeSThierry Reding compatible = "nvidia,tegra186-eqos", 430caafbdeSThierry Reding "snps,dwc-qos-ethernet-4.10"; 440caafbdeSThierry Reding reg = <0x0 0x02490000 0x0 0x10000>; 450caafbdeSThierry Reding interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /* common */ 460caafbdeSThierry Reding <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>, /* power */ 470caafbdeSThierry Reding <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, /* rx0 */ 480caafbdeSThierry Reding <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, /* tx0 */ 490caafbdeSThierry Reding <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, /* rx1 */ 500caafbdeSThierry Reding <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, /* tx1 */ 510caafbdeSThierry Reding <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, /* rx2 */ 520caafbdeSThierry Reding <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* tx2 */ 530caafbdeSThierry Reding <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, /* rx3 */ 540caafbdeSThierry Reding <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>; /* tx3 */ 550caafbdeSThierry Reding clocks = <&bpmp TEGRA186_CLK_AXI_CBB>, 560caafbdeSThierry Reding <&bpmp TEGRA186_CLK_EQOS_AXI>, 570caafbdeSThierry Reding <&bpmp TEGRA186_CLK_EQOS_RX>, 580caafbdeSThierry Reding <&bpmp TEGRA186_CLK_EQOS_TX>, 590caafbdeSThierry Reding <&bpmp TEGRA186_CLK_EQOS_PTP_REF>; 600caafbdeSThierry Reding clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref"; 610caafbdeSThierry Reding resets = <&bpmp TEGRA186_RESET_EQOS>; 620caafbdeSThierry Reding reset-names = "eqos"; 630caafbdeSThierry Reding status = "disabled"; 640caafbdeSThierry Reding 650caafbdeSThierry Reding snps,write-requests = <1>; 660caafbdeSThierry Reding snps,read-requests = <3>; 670caafbdeSThierry Reding snps,burst-map = <0x7>; 680caafbdeSThierry Reding snps,txpbl = <32>; 690caafbdeSThierry Reding snps,rxpbl = <8>; 700caafbdeSThierry Reding }; 710caafbdeSThierry Reding 72d25a3bf1SThierry Reding memory-controller@2c00000 { 73d25a3bf1SThierry Reding compatible = "nvidia,tegra186-mc"; 74d25a3bf1SThierry Reding reg = <0x0 0x02c00000 0x0 0xb0000>; 75d25a3bf1SThierry Reding status = "disabled"; 76d25a3bf1SThierry Reding }; 77d25a3bf1SThierry Reding 7839cb62cbSJoseph Lo uarta: serial@3100000 { 7939cb62cbSJoseph Lo compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 8039cb62cbSJoseph Lo reg = <0x0 0x03100000 0x0 0x40>; 8139cb62cbSJoseph Lo reg-shift = <2>; 8239cb62cbSJoseph Lo interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; 83c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTA>; 84a7a77e2eSThierry Reding clock-names = "serial"; 857bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTA>; 86a7a77e2eSThierry Reding reset-names = "serial"; 87a7a77e2eSThierry Reding status = "disabled"; 88a7a77e2eSThierry Reding }; 89a7a77e2eSThierry Reding 90a7a77e2eSThierry Reding uartb: serial@3110000 { 91a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 92a7a77e2eSThierry Reding reg = <0x0 0x03110000 0x0 0x40>; 93a7a77e2eSThierry Reding reg-shift = <2>; 94a7a77e2eSThierry Reding interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 95c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTB>; 96a7a77e2eSThierry Reding clock-names = "serial"; 977bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTB>; 98a7a77e2eSThierry Reding reset-names = "serial"; 99a7a77e2eSThierry Reding status = "disabled"; 100a7a77e2eSThierry Reding }; 101a7a77e2eSThierry Reding 102a7a77e2eSThierry Reding uartd: serial@3130000 { 103a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 104a7a77e2eSThierry Reding reg = <0x0 0x03130000 0x0 0x40>; 105a7a77e2eSThierry Reding reg-shift = <2>; 106a7a77e2eSThierry Reding interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>; 107c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTD>; 108a7a77e2eSThierry Reding clock-names = "serial"; 1097bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTD>; 110a7a77e2eSThierry Reding reset-names = "serial"; 111a7a77e2eSThierry Reding status = "disabled"; 112a7a77e2eSThierry Reding }; 113a7a77e2eSThierry Reding 114a7a77e2eSThierry Reding uarte: serial@3140000 { 115a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 116a7a77e2eSThierry Reding reg = <0x0 0x03140000 0x0 0x40>; 117a7a77e2eSThierry Reding reg-shift = <2>; 118a7a77e2eSThierry Reding interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 119c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTE>; 120a7a77e2eSThierry Reding clock-names = "serial"; 1217bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTE>; 122a7a77e2eSThierry Reding reset-names = "serial"; 123a7a77e2eSThierry Reding status = "disabled"; 124a7a77e2eSThierry Reding }; 125a7a77e2eSThierry Reding 126a7a77e2eSThierry Reding uartf: serial@3150000 { 127a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 128a7a77e2eSThierry Reding reg = <0x0 0x03150000 0x0 0x40>; 129a7a77e2eSThierry Reding reg-shift = <2>; 130a7a77e2eSThierry Reding interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 131c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTF>; 132a7a77e2eSThierry Reding clock-names = "serial"; 1337bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTF>; 134a7a77e2eSThierry Reding reset-names = "serial"; 13539cb62cbSJoseph Lo status = "disabled"; 13639cb62cbSJoseph Lo }; 13739cb62cbSJoseph Lo 13840cc83b3SThierry Reding gen1_i2c: i2c@3160000 { 13940cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 14040cc83b3SThierry Reding reg = <0x0 0x03160000 0x0 0x10000>; 14140cc83b3SThierry Reding interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 14240cc83b3SThierry Reding #address-cells = <1>; 14340cc83b3SThierry Reding #size-cells = <0>; 144c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C1>; 14540cc83b3SThierry Reding clock-names = "div-clk"; 1467bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C1>; 14740cc83b3SThierry Reding reset-names = "i2c"; 14840cc83b3SThierry Reding status = "disabled"; 14940cc83b3SThierry Reding }; 15040cc83b3SThierry Reding 15140cc83b3SThierry Reding cam_i2c: i2c@3180000 { 15240cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 15340cc83b3SThierry Reding reg = <0x0 0x03180000 0x0 0x10000>; 15440cc83b3SThierry Reding interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 15540cc83b3SThierry Reding #address-cells = <1>; 15640cc83b3SThierry Reding #size-cells = <0>; 157c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C3>; 15840cc83b3SThierry Reding clock-names = "div-clk"; 1597bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C3>; 16040cc83b3SThierry Reding reset-names = "i2c"; 16140cc83b3SThierry Reding status = "disabled"; 16240cc83b3SThierry Reding }; 16340cc83b3SThierry Reding 16440cc83b3SThierry Reding /* shares pads with dpaux1 */ 16540cc83b3SThierry Reding dp_aux_ch1_i2c: i2c@3190000 { 16640cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 16740cc83b3SThierry Reding reg = <0x0 0x03190000 0x0 0x10000>; 16840cc83b3SThierry Reding interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 16940cc83b3SThierry Reding #address-cells = <1>; 17040cc83b3SThierry Reding #size-cells = <0>; 171c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C4>; 17240cc83b3SThierry Reding clock-names = "div-clk"; 1737bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C4>; 17440cc83b3SThierry Reding reset-names = "i2c"; 17540cc83b3SThierry Reding status = "disabled"; 17640cc83b3SThierry Reding }; 17740cc83b3SThierry Reding 17840cc83b3SThierry Reding /* controlled by BPMP, should not be enabled */ 17940cc83b3SThierry Reding pwr_i2c: i2c@31a0000 { 18040cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 18140cc83b3SThierry Reding reg = <0x0 0x031a0000 0x0 0x10000>; 18240cc83b3SThierry Reding interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 18340cc83b3SThierry Reding #address-cells = <1>; 18440cc83b3SThierry Reding #size-cells = <0>; 185c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C5>; 18640cc83b3SThierry Reding clock-names = "div-clk"; 1877bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C5>; 18840cc83b3SThierry Reding reset-names = "i2c"; 18940cc83b3SThierry Reding status = "disabled"; 19040cc83b3SThierry Reding }; 19140cc83b3SThierry Reding 19240cc83b3SThierry Reding /* shares pads with dpaux0 */ 19340cc83b3SThierry Reding dp_aux_ch0_i2c: i2c@31b0000 { 19440cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 19540cc83b3SThierry Reding reg = <0x0 0x031b0000 0x0 0x10000>; 19640cc83b3SThierry Reding interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 19740cc83b3SThierry Reding #address-cells = <1>; 19840cc83b3SThierry Reding #size-cells = <0>; 199c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C6>; 20040cc83b3SThierry Reding clock-names = "div-clk"; 2017bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C6>; 20240cc83b3SThierry Reding reset-names = "i2c"; 20340cc83b3SThierry Reding status = "disabled"; 20440cc83b3SThierry Reding }; 20540cc83b3SThierry Reding 20640cc83b3SThierry Reding gen7_i2c: i2c@31c0000 { 20740cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 20840cc83b3SThierry Reding reg = <0x0 0x031c0000 0x0 0x10000>; 20940cc83b3SThierry Reding interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 21040cc83b3SThierry Reding #address-cells = <1>; 21140cc83b3SThierry Reding #size-cells = <0>; 212c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C7>; 21340cc83b3SThierry Reding clock-names = "div-clk"; 2147bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C7>; 21540cc83b3SThierry Reding reset-names = "i2c"; 21640cc83b3SThierry Reding status = "disabled"; 21740cc83b3SThierry Reding }; 21840cc83b3SThierry Reding 21940cc83b3SThierry Reding gen9_i2c: i2c@31e0000 { 22040cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 22140cc83b3SThierry Reding reg = <0x0 0x031e0000 0x0 0x10000>; 22240cc83b3SThierry Reding interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 22340cc83b3SThierry Reding #address-cells = <1>; 22440cc83b3SThierry Reding #size-cells = <0>; 225c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C9>; 22640cc83b3SThierry Reding clock-names = "div-clk"; 2277bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C9>; 22840cc83b3SThierry Reding reset-names = "i2c"; 22940cc83b3SThierry Reding status = "disabled"; 23040cc83b3SThierry Reding }; 23140cc83b3SThierry Reding 23299425dfdSThierry Reding sdmmc1: sdhci@3400000 { 23399425dfdSThierry Reding compatible = "nvidia,tegra186-sdhci"; 23499425dfdSThierry Reding reg = <0x0 0x03400000 0x0 0x10000>; 23599425dfdSThierry Reding interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 236c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_SDMMC1>; 23799425dfdSThierry Reding clock-names = "sdhci"; 2387bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_SDMMC1>; 23999425dfdSThierry Reding reset-names = "sdhci"; 24024005fd1SAapo Vienamo pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 24124005fd1SAapo Vienamo pinctrl-0 = <&sdmmc1_3v3>; 24224005fd1SAapo Vienamo pinctrl-1 = <&sdmmc1_1v8>; 24341408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>; 24441408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>; 24541408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>; 24641408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>; 24741408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-sdr104 = <0x03>; 24841408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-sdr104 = <0x05>; 2496f90c6f0SAapo Vienamo nvidia,default-tap = <0x5>; 2506f90c6f0SAapo Vienamo nvidia,default-trim = <0xb>; 25198a2494fSAapo Vienamo assigned-clocks = <&bpmp TEGRA186_CLK_SDMMC1>, 25298a2494fSAapo Vienamo <&bpmp TEGRA186_CLK_PLLP_OUT0>; 25398a2494fSAapo Vienamo assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLP_OUT0>; 25499425dfdSThierry Reding status = "disabled"; 25599425dfdSThierry Reding }; 25699425dfdSThierry Reding 25799425dfdSThierry Reding sdmmc2: sdhci@3420000 { 25899425dfdSThierry Reding compatible = "nvidia,tegra186-sdhci"; 25999425dfdSThierry Reding reg = <0x0 0x03420000 0x0 0x10000>; 26099425dfdSThierry Reding interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 261c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_SDMMC2>; 26299425dfdSThierry Reding clock-names = "sdhci"; 2637bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_SDMMC2>; 26499425dfdSThierry Reding reset-names = "sdhci"; 26524005fd1SAapo Vienamo pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 26624005fd1SAapo Vienamo pinctrl-0 = <&sdmmc2_3v3>; 26724005fd1SAapo Vienamo pinctrl-1 = <&sdmmc2_1v8>; 26841408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>; 26941408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>; 27041408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>; 27141408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>; 2726f90c6f0SAapo Vienamo nvidia,default-tap = <0x5>; 2736f90c6f0SAapo Vienamo nvidia,default-trim = <0xb>; 27499425dfdSThierry Reding status = "disabled"; 27599425dfdSThierry Reding }; 27699425dfdSThierry Reding 27799425dfdSThierry Reding sdmmc3: sdhci@3440000 { 27899425dfdSThierry Reding compatible = "nvidia,tegra186-sdhci"; 27999425dfdSThierry Reding reg = <0x0 0x03440000 0x0 0x10000>; 28099425dfdSThierry Reding interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 281c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_SDMMC3>; 28299425dfdSThierry Reding clock-names = "sdhci"; 2837bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_SDMMC3>; 28499425dfdSThierry Reding reset-names = "sdhci"; 28524005fd1SAapo Vienamo pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 28624005fd1SAapo Vienamo pinctrl-0 = <&sdmmc3_3v3>; 28724005fd1SAapo Vienamo pinctrl-1 = <&sdmmc3_1v8>; 28841408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-1v8 = <0x00>; 28941408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-1v8 = <0x7a>; 29041408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>; 29141408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>; 29241408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>; 29341408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>; 2946f90c6f0SAapo Vienamo nvidia,default-tap = <0x5>; 2956f90c6f0SAapo Vienamo nvidia,default-trim = <0xb>; 29699425dfdSThierry Reding status = "disabled"; 29799425dfdSThierry Reding }; 29899425dfdSThierry Reding 29999425dfdSThierry Reding sdmmc4: sdhci@3460000 { 30099425dfdSThierry Reding compatible = "nvidia,tegra186-sdhci"; 30199425dfdSThierry Reding reg = <0x0 0x03460000 0x0 0x10000>; 30299425dfdSThierry Reding interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 303c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_SDMMC4>; 30499425dfdSThierry Reding clock-names = "sdhci"; 30598a2494fSAapo Vienamo assigned-clocks = <&bpmp TEGRA186_CLK_SDMMC4>, 30698a2494fSAapo Vienamo <&bpmp TEGRA186_CLK_PLLC4_VCO>; 30798a2494fSAapo Vienamo assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLC4_VCO>; 3087bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_SDMMC4>; 30999425dfdSThierry Reding reset-names = "sdhci"; 31041408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-hs400 = <0x05>; 31141408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-hs400 = <0x05>; 31241408c21SAapo Vienamo nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x0a>; 31341408c21SAapo Vienamo nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x0a>; 3146f90c6f0SAapo Vienamo nvidia,default-tap = <0x5>; 3156f90c6f0SAapo Vienamo nvidia,default-trim = <0x9>; 31622248e91SAapo Vienamo nvidia,dqs-trim = <63>; 317207f60baSAapo Vienamo mmc-hs400-1_8v; 31899425dfdSThierry Reding status = "disabled"; 31999425dfdSThierry Reding }; 32099425dfdSThierry Reding 32185593b75SThierry Reding fuse@3820000 { 32285593b75SThierry Reding compatible = "nvidia,tegra186-efuse"; 32385593b75SThierry Reding reg = <0x0 0x03820000 0x0 0x10000>; 32485593b75SThierry Reding clocks = <&bpmp TEGRA186_CLK_FUSE>; 32585593b75SThierry Reding clock-names = "fuse"; 32685593b75SThierry Reding }; 32785593b75SThierry Reding 32839cb62cbSJoseph Lo gic: interrupt-controller@3881000 { 32939cb62cbSJoseph Lo compatible = "arm,gic-400"; 33039cb62cbSJoseph Lo #interrupt-cells = <3>; 33139cb62cbSJoseph Lo interrupt-controller; 33239cb62cbSJoseph Lo reg = <0x0 0x03881000 0x0 0x1000>, 33339cb62cbSJoseph Lo <0x0 0x03882000 0x0 0x2000>; 33439cb62cbSJoseph Lo interrupts = <GIC_PPI 9 33539cb62cbSJoseph Lo (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 33639cb62cbSJoseph Lo interrupt-parent = <&gic>; 33739cb62cbSJoseph Lo }; 33839cb62cbSJoseph Lo 33939cb62cbSJoseph Lo hsp_top0: hsp@3c00000 { 34039cb62cbSJoseph Lo compatible = "nvidia,tegra186-hsp"; 34139cb62cbSJoseph Lo reg = <0x0 0x03c00000 0x0 0xa0000>; 34239cb62cbSJoseph Lo interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; 34339cb62cbSJoseph Lo interrupt-names = "doorbell"; 34439cb62cbSJoseph Lo #mbox-cells = <2>; 34539cb62cbSJoseph Lo status = "disabled"; 34639cb62cbSJoseph Lo }; 34739cb62cbSJoseph Lo 34840cc83b3SThierry Reding gen2_i2c: i2c@c240000 { 34940cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 35040cc83b3SThierry Reding reg = <0x0 0x0c240000 0x0 0x10000>; 35140cc83b3SThierry Reding interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 35240cc83b3SThierry Reding #address-cells = <1>; 35340cc83b3SThierry Reding #size-cells = <0>; 354c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C2>; 35540cc83b3SThierry Reding clock-names = "div-clk"; 3567bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C2>; 35740cc83b3SThierry Reding reset-names = "i2c"; 35840cc83b3SThierry Reding status = "disabled"; 35940cc83b3SThierry Reding }; 36040cc83b3SThierry Reding 36140cc83b3SThierry Reding gen8_i2c: i2c@c250000 { 36240cc83b3SThierry Reding compatible = "nvidia,tegra186-i2c", "nvidia,tegra114-i2c"; 36340cc83b3SThierry Reding reg = <0x0 0x0c250000 0x0 0x10000>; 36440cc83b3SThierry Reding interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 36540cc83b3SThierry Reding #address-cells = <1>; 36640cc83b3SThierry Reding #size-cells = <0>; 367c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_I2C8>; 36840cc83b3SThierry Reding clock-names = "div-clk"; 3697bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_I2C8>; 37040cc83b3SThierry Reding reset-names = "i2c"; 37140cc83b3SThierry Reding status = "disabled"; 37240cc83b3SThierry Reding }; 37340cc83b3SThierry Reding 374a7a77e2eSThierry Reding uartc: serial@c280000 { 375a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 376a7a77e2eSThierry Reding reg = <0x0 0x0c280000 0x0 0x40>; 377a7a77e2eSThierry Reding reg-shift = <2>; 378a7a77e2eSThierry Reding interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 379c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTC>; 380a7a77e2eSThierry Reding clock-names = "serial"; 3817bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTC>; 382a7a77e2eSThierry Reding reset-names = "serial"; 383a7a77e2eSThierry Reding status = "disabled"; 384a7a77e2eSThierry Reding }; 385a7a77e2eSThierry Reding 386a7a77e2eSThierry Reding uartg: serial@c290000 { 387a7a77e2eSThierry Reding compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart"; 388a7a77e2eSThierry Reding reg = <0x0 0x0c290000 0x0 0x40>; 389a7a77e2eSThierry Reding reg-shift = <2>; 390a7a77e2eSThierry Reding interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; 391c58f5f88SThierry Reding clocks = <&bpmp TEGRA186_CLK_UARTG>; 392a7a77e2eSThierry Reding clock-names = "serial"; 3937bcf2664SThierry Reding resets = <&bpmp TEGRA186_RESET_UARTG>; 394a7a77e2eSThierry Reding reset-names = "serial"; 395a7a77e2eSThierry Reding status = "disabled"; 396a7a77e2eSThierry Reding }; 397a7a77e2eSThierry Reding 398fc4bb754SThierry Reding gpio_aon: gpio@c2f0000 { 399fc4bb754SThierry Reding compatible = "nvidia,tegra186-gpio-aon"; 400fc4bb754SThierry Reding reg-names = "security", "gpio"; 401fc4bb754SThierry Reding reg = <0x0 0xc2f0000 0x0 0x1000>, 402fc4bb754SThierry Reding <0x0 0xc2f1000 0x0 0x1000>; 403fc4bb754SThierry Reding interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 404fc4bb754SThierry Reding gpio-controller; 405fc4bb754SThierry Reding #gpio-cells = <2>; 406fc4bb754SThierry Reding interrupt-controller; 407fc4bb754SThierry Reding #interrupt-cells = <2>; 408fc4bb754SThierry Reding }; 409fc4bb754SThierry Reding 41032e66e46SThierry Reding pmc: pmc@c360000 { 41173bf90d4SThierry Reding compatible = "nvidia,tegra186-pmc"; 41273bf90d4SThierry Reding reg = <0 0x0c360000 0 0x10000>, 41373bf90d4SThierry Reding <0 0x0c370000 0 0x10000>, 41473bf90d4SThierry Reding <0 0x0c380000 0 0x10000>, 41573bf90d4SThierry Reding <0 0x0c390000 0 0x10000>; 41673bf90d4SThierry Reding reg-names = "pmc", "wake", "aotag", "scratch"; 41724005fd1SAapo Vienamo 41832e66e46SThierry Reding #interrupt-cells = <2>; 41932e66e46SThierry Reding interrupt-controller; 42032e66e46SThierry Reding 42124005fd1SAapo Vienamo sdmmc1_3v3: sdmmc1-3v3 { 42224005fd1SAapo Vienamo pins = "sdmmc1-hv"; 42324005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>; 42424005fd1SAapo Vienamo }; 42524005fd1SAapo Vienamo 42624005fd1SAapo Vienamo sdmmc1_1v8: sdmmc1-1v8 { 42724005fd1SAapo Vienamo pins = "sdmmc1-hv"; 42824005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>; 42924005fd1SAapo Vienamo }; 43024005fd1SAapo Vienamo 43124005fd1SAapo Vienamo sdmmc2_3v3: sdmmc2-3v3 { 43224005fd1SAapo Vienamo pins = "sdmmc2-hv"; 43324005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>; 43424005fd1SAapo Vienamo }; 43524005fd1SAapo Vienamo 43624005fd1SAapo Vienamo sdmmc2_1v8: sdmmc2-1v8 { 43724005fd1SAapo Vienamo pins = "sdmmc2-hv"; 43824005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>; 43924005fd1SAapo Vienamo }; 44024005fd1SAapo Vienamo 44124005fd1SAapo Vienamo sdmmc3_3v3: sdmmc3-3v3 { 44224005fd1SAapo Vienamo pins = "sdmmc3-hv"; 44324005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>; 44424005fd1SAapo Vienamo }; 44524005fd1SAapo Vienamo 44624005fd1SAapo Vienamo sdmmc3_1v8: sdmmc3-1v8 { 44724005fd1SAapo Vienamo pins = "sdmmc3-hv"; 44824005fd1SAapo Vienamo power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>; 44924005fd1SAapo Vienamo }; 45073bf90d4SThierry Reding }; 45173bf90d4SThierry Reding 4527b7ef494SMikko Perttunen ccplex@e000000 { 4537b7ef494SMikko Perttunen compatible = "nvidia,tegra186-ccplex-cluster"; 4547b7ef494SMikko Perttunen reg = <0x0 0x0e000000 0x0 0x3fffff>; 4557b7ef494SMikko Perttunen 4567b7ef494SMikko Perttunen nvidia,bpmp = <&bpmp>; 4577b7ef494SMikko Perttunen }; 4587b7ef494SMikko Perttunen 459f8973cf4SManikanta Maddireddy pcie@10003000 { 460f8973cf4SManikanta Maddireddy compatible = "nvidia,tegra186-pcie"; 461f8973cf4SManikanta Maddireddy power-domains = <&bpmp TEGRA186_POWER_DOMAIN_PCX>; 462f8973cf4SManikanta Maddireddy device_type = "pci"; 463f8973cf4SManikanta Maddireddy reg = <0x0 0x10003000 0x0 0x00000800 /* PADS registers */ 464f8973cf4SManikanta Maddireddy 0x0 0x10003800 0x0 0x00000800 /* AFI registers */ 465f8973cf4SManikanta Maddireddy 0x0 0x40000000 0x0 0x10000000>; /* configuration space */ 466f8973cf4SManikanta Maddireddy reg-names = "pads", "afi", "cs"; 467f8973cf4SManikanta Maddireddy 468f8973cf4SManikanta Maddireddy interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 469f8973cf4SManikanta Maddireddy <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ 470f8973cf4SManikanta Maddireddy interrupt-names = "intr", "msi"; 471f8973cf4SManikanta Maddireddy 472f8973cf4SManikanta Maddireddy #interrupt-cells = <1>; 473f8973cf4SManikanta Maddireddy interrupt-map-mask = <0 0 0 0>; 474f8973cf4SManikanta Maddireddy interrupt-map = <0 0 0 0 &gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 475f8973cf4SManikanta Maddireddy 476f8973cf4SManikanta Maddireddy bus-range = <0x00 0xff>; 477f8973cf4SManikanta Maddireddy #address-cells = <3>; 478f8973cf4SManikanta Maddireddy #size-cells = <2>; 479f8973cf4SManikanta Maddireddy 480f8973cf4SManikanta Maddireddy ranges = <0x82000000 0 0x10000000 0x0 0x10000000 0 0x00001000 /* port 0 configuration space */ 481f8973cf4SManikanta Maddireddy 0x82000000 0 0x10001000 0x0 0x10001000 0 0x00001000 /* port 1 configuration space */ 482f8973cf4SManikanta Maddireddy 0x82000000 0 0x10004000 0x0 0x10004000 0 0x00001000 /* port 2 configuration space */ 483f8973cf4SManikanta Maddireddy 0x81000000 0 0x0 0x0 0x50000000 0 0x00010000 /* downstream I/O (64 KiB) */ 484f8973cf4SManikanta Maddireddy 0x82000000 0 0x50100000 0x0 0x50100000 0 0x07F00000 /* non-prefetchable memory (127 MiB) */ 485f8973cf4SManikanta Maddireddy 0xc2000000 0 0x58000000 0x0 0x58000000 0 0x28000000>; /* prefetchable memory (640 MiB) */ 486f8973cf4SManikanta Maddireddy 487f8973cf4SManikanta Maddireddy clocks = <&bpmp TEGRA186_CLK_AFI>, 488f8973cf4SManikanta Maddireddy <&bpmp TEGRA186_CLK_PCIE>, 489f8973cf4SManikanta Maddireddy <&bpmp TEGRA186_CLK_PLLE>; 490f8973cf4SManikanta Maddireddy clock-names = "afi", "pex", "pll_e"; 491f8973cf4SManikanta Maddireddy 492f8973cf4SManikanta Maddireddy resets = <&bpmp TEGRA186_RESET_AFI>, 493f8973cf4SManikanta Maddireddy <&bpmp TEGRA186_RESET_PCIE>, 494f8973cf4SManikanta Maddireddy <&bpmp TEGRA186_RESET_PCIEXCLK>; 495f8973cf4SManikanta Maddireddy reset-names = "afi", "pex", "pcie_x"; 496f8973cf4SManikanta Maddireddy 497f8973cf4SManikanta Maddireddy status = "disabled"; 498f8973cf4SManikanta Maddireddy 499f8973cf4SManikanta Maddireddy pci@1,0 { 500f8973cf4SManikanta Maddireddy device_type = "pci"; 501f8973cf4SManikanta Maddireddy assigned-addresses = <0x82000800 0 0x10000000 0 0x1000>; 502f8973cf4SManikanta Maddireddy reg = <0x000800 0 0 0 0>; 503f8973cf4SManikanta Maddireddy status = "disabled"; 504f8973cf4SManikanta Maddireddy 505f8973cf4SManikanta Maddireddy #address-cells = <3>; 506f8973cf4SManikanta Maddireddy #size-cells = <2>; 507f8973cf4SManikanta Maddireddy ranges; 508f8973cf4SManikanta Maddireddy 509f8973cf4SManikanta Maddireddy nvidia,num-lanes = <2>; 510f8973cf4SManikanta Maddireddy }; 511f8973cf4SManikanta Maddireddy 512f8973cf4SManikanta Maddireddy pci@2,0 { 513f8973cf4SManikanta Maddireddy device_type = "pci"; 514f8973cf4SManikanta Maddireddy assigned-addresses = <0x82001000 0 0x10001000 0 0x1000>; 515f8973cf4SManikanta Maddireddy reg = <0x001000 0 0 0 0>; 516f8973cf4SManikanta Maddireddy status = "disabled"; 517f8973cf4SManikanta Maddireddy 518f8973cf4SManikanta Maddireddy #address-cells = <3>; 519f8973cf4SManikanta Maddireddy #size-cells = <2>; 520f8973cf4SManikanta Maddireddy ranges; 521f8973cf4SManikanta Maddireddy 522f8973cf4SManikanta Maddireddy nvidia,num-lanes = <1>; 523f8973cf4SManikanta Maddireddy }; 524f8973cf4SManikanta Maddireddy 525f8973cf4SManikanta Maddireddy pci@3,0 { 526f8973cf4SManikanta Maddireddy device_type = "pci"; 527f8973cf4SManikanta Maddireddy assigned-addresses = <0x82001800 0 0x10004000 0 0x1000>; 528f8973cf4SManikanta Maddireddy reg = <0x001800 0 0 0 0>; 529f8973cf4SManikanta Maddireddy status = "disabled"; 530f8973cf4SManikanta Maddireddy 531f8973cf4SManikanta Maddireddy #address-cells = <3>; 532f8973cf4SManikanta Maddireddy #size-cells = <2>; 533f8973cf4SManikanta Maddireddy ranges; 534f8973cf4SManikanta Maddireddy 535f8973cf4SManikanta Maddireddy nvidia,num-lanes = <1>; 536f8973cf4SManikanta Maddireddy }; 537f8973cf4SManikanta Maddireddy }; 538f8973cf4SManikanta Maddireddy 539b30a8e61SThierry Reding smmu: iommu@12000000 { 540b30a8e61SThierry Reding compatible = "arm,mmu-500"; 541b30a8e61SThierry Reding reg = <0 0x12000000 0 0x800000>; 542b30a8e61SThierry Reding interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 543b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 544b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 545b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 546b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 547b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 548b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 549b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 550b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 551b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 552b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 553b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 554b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 555b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 556b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 557b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 558b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 559b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 560b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 561b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 562b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 563b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 564b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 565b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 566b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 567b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 568b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 569b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 570b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 571b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 572b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 573b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 574b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 575b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 576b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 577b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 578b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 579b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 580b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 581b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 582b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 583b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 584b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 585b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 586b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 587b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 588b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 589b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 590b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 591b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 592b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 593b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 594b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 595b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 596b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 597b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 598b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 599b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 600b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 601b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 602b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 603b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 604b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 605b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 606b30a8e61SThierry Reding <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>; 607b30a8e61SThierry Reding stream-match-mask = <0x7f80>; 608b30a8e61SThierry Reding #global-interrupts = <1>; 609b30a8e61SThierry Reding #iommu-cells = <1>; 610b30a8e61SThierry Reding }; 611b30a8e61SThierry Reding 6125524c61fSMikko Perttunen host1x@13e00000 { 6135524c61fSMikko Perttunen compatible = "nvidia,tegra186-host1x", "simple-bus"; 6145524c61fSMikko Perttunen reg = <0x0 0x13e00000 0x0 0x10000>, 6155524c61fSMikko Perttunen <0x0 0x13e10000 0x0 0x10000>; 6165524c61fSMikko Perttunen reg-names = "hypervisor", "vm"; 6175524c61fSMikko Perttunen interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>, 6185524c61fSMikko Perttunen <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>; 6195524c61fSMikko Perttunen clocks = <&bpmp TEGRA186_CLK_HOST1X>; 6205524c61fSMikko Perttunen clock-names = "host1x"; 6215524c61fSMikko Perttunen resets = <&bpmp TEGRA186_RESET_HOST1X>; 6225524c61fSMikko Perttunen reset-names = "host1x"; 6235524c61fSMikko Perttunen 6245524c61fSMikko Perttunen #address-cells = <1>; 6255524c61fSMikko Perttunen #size-cells = <1>; 6265524c61fSMikko Perttunen 6275524c61fSMikko Perttunen ranges = <0x15000000 0x0 0x15000000 0x01000000>; 628c2599da7SThierry Reding iommus = <&smmu TEGRA186_SID_HOST1X>; 629c2599da7SThierry Reding 630c2599da7SThierry Reding dpaux1: dpaux@15040000 { 631c2599da7SThierry Reding compatible = "nvidia,tegra186-dpaux"; 632c2599da7SThierry Reding reg = <0x15040000 0x10000>; 633c2599da7SThierry Reding interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>; 634c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DPAUX1>, 635c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLDP>; 636c2599da7SThierry Reding clock-names = "dpaux", "parent"; 637c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DPAUX1>; 638c2599da7SThierry Reding reset-names = "dpaux"; 639c2599da7SThierry Reding status = "disabled"; 640c2599da7SThierry Reding 641c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 642c2599da7SThierry Reding 643c2599da7SThierry Reding state_dpaux1_aux: pinmux-aux { 644c2599da7SThierry Reding groups = "dpaux-io"; 645c2599da7SThierry Reding function = "aux"; 646c2599da7SThierry Reding }; 647c2599da7SThierry Reding 648c2599da7SThierry Reding state_dpaux1_i2c: pinmux-i2c { 649c2599da7SThierry Reding groups = "dpaux-io"; 650c2599da7SThierry Reding function = "i2c"; 651c2599da7SThierry Reding }; 652c2599da7SThierry Reding 653c2599da7SThierry Reding state_dpaux1_off: pinmux-off { 654c2599da7SThierry Reding groups = "dpaux-io"; 655c2599da7SThierry Reding function = "off"; 656c2599da7SThierry Reding }; 657c2599da7SThierry Reding 658c2599da7SThierry Reding i2c-bus { 659c2599da7SThierry Reding #address-cells = <1>; 660c2599da7SThierry Reding #size-cells = <0>; 661c2599da7SThierry Reding }; 662c2599da7SThierry Reding }; 663c2599da7SThierry Reding 664c2599da7SThierry Reding display-hub@15200000 { 665c2599da7SThierry Reding compatible = "nvidia,tegra186-display", "simple-bus"; 666c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_MISC>, 667c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP0>, 668c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP1>, 669c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP2>, 670c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP3>, 671c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP4>, 672c2599da7SThierry Reding <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP5>; 673c2599da7SThierry Reding reset-names = "misc", "wgrp0", "wgrp1", "wgrp2", 674c2599da7SThierry Reding "wgrp3", "wgrp4", "wgrp5"; 675c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_DISP>, 676c2599da7SThierry Reding <&bpmp TEGRA186_CLK_NVDISPLAY_DSC>, 677c2599da7SThierry Reding <&bpmp TEGRA186_CLK_NVDISPLAYHUB>; 678c2599da7SThierry Reding clock-names = "disp", "dsc", "hub"; 679c2599da7SThierry Reding status = "disabled"; 680c2599da7SThierry Reding 681c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 682c2599da7SThierry Reding 683c2599da7SThierry Reding #address-cells = <1>; 684c2599da7SThierry Reding #size-cells = <1>; 685c2599da7SThierry Reding 686c2599da7SThierry Reding ranges = <0x15200000 0x15200000 0x40000>; 687c2599da7SThierry Reding 688c2599da7SThierry Reding display@15200000 { 689c2599da7SThierry Reding compatible = "nvidia,tegra186-dc"; 690c2599da7SThierry Reding reg = <0x15200000 0x10000>; 691c2599da7SThierry Reding interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; 692c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P0>; 693c2599da7SThierry Reding clock-names = "dc"; 694c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD0>; 695c2599da7SThierry Reding reset-names = "dc"; 696c2599da7SThierry Reding 697c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 698c2599da7SThierry Reding iommus = <&smmu TEGRA186_SID_NVDISPLAY>; 699c2599da7SThierry Reding 700c2599da7SThierry Reding nvidia,outputs = <&dsia &dsib &sor0 &sor1>; 701c2599da7SThierry Reding nvidia,head = <0>; 702c2599da7SThierry Reding }; 703c2599da7SThierry Reding 704c2599da7SThierry Reding display@15210000 { 705c2599da7SThierry Reding compatible = "nvidia,tegra186-dc"; 706c2599da7SThierry Reding reg = <0x15210000 0x10000>; 707c2599da7SThierry Reding interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 708c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P1>; 709c2599da7SThierry Reding clock-names = "dc"; 710c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD1>; 711c2599da7SThierry Reding reset-names = "dc"; 712c2599da7SThierry Reding 713c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISPB>; 714c2599da7SThierry Reding iommus = <&smmu TEGRA186_SID_NVDISPLAY>; 715c2599da7SThierry Reding 716c2599da7SThierry Reding nvidia,outputs = <&dsia &dsib &sor0 &sor1>; 717c2599da7SThierry Reding nvidia,head = <1>; 718c2599da7SThierry Reding }; 719c2599da7SThierry Reding 720c2599da7SThierry Reding display@15220000 { 721c2599da7SThierry Reding compatible = "nvidia,tegra186-dc"; 722c2599da7SThierry Reding reg = <0x15220000 0x10000>; 723c2599da7SThierry Reding interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 724c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P2>; 725c2599da7SThierry Reding clock-names = "dc"; 726c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD2>; 727c2599da7SThierry Reding reset-names = "dc"; 728c2599da7SThierry Reding 729c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISPC>; 730c2599da7SThierry Reding iommus = <&smmu TEGRA186_SID_NVDISPLAY>; 731c2599da7SThierry Reding 732c2599da7SThierry Reding nvidia,outputs = <&sor0 &sor1>; 733c2599da7SThierry Reding nvidia,head = <2>; 734c2599da7SThierry Reding }; 735c2599da7SThierry Reding }; 736c2599da7SThierry Reding 737c2599da7SThierry Reding dsia: dsi@15300000 { 738c2599da7SThierry Reding compatible = "nvidia,tegra186-dsi"; 739c2599da7SThierry Reding reg = <0x15300000 0x10000>; 740c2599da7SThierry Reding interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 741c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DSI>, 742c2599da7SThierry Reding <&bpmp TEGRA186_CLK_DSIA_LP>, 743c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD>; 744c2599da7SThierry Reding clock-names = "dsi", "lp", "parent"; 745c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DSI>; 746c2599da7SThierry Reding reset-names = "dsi"; 747c2599da7SThierry Reding status = "disabled"; 748c2599da7SThierry Reding 749c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 750c2599da7SThierry Reding }; 751effc4b44SMikko Perttunen 752effc4b44SMikko Perttunen vic@15340000 { 753effc4b44SMikko Perttunen compatible = "nvidia,tegra186-vic"; 754effc4b44SMikko Perttunen reg = <0x15340000 0x40000>; 755effc4b44SMikko Perttunen interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>; 756effc4b44SMikko Perttunen clocks = <&bpmp TEGRA186_CLK_VIC>; 757effc4b44SMikko Perttunen clock-names = "vic"; 758effc4b44SMikko Perttunen resets = <&bpmp TEGRA186_RESET_VIC>; 759effc4b44SMikko Perttunen reset-names = "vic"; 760effc4b44SMikko Perttunen 761effc4b44SMikko Perttunen power-domains = <&bpmp TEGRA186_POWER_DOMAIN_VIC>; 762effc4b44SMikko Perttunen }; 763c2599da7SThierry Reding 764c2599da7SThierry Reding dsib: dsi@15400000 { 765c2599da7SThierry Reding compatible = "nvidia,tegra186-dsi"; 766c2599da7SThierry Reding reg = <0x15400000 0x10000>; 767c2599da7SThierry Reding interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 768c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DSIB>, 769c2599da7SThierry Reding <&bpmp TEGRA186_CLK_DSIB_LP>, 770c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD>; 771c2599da7SThierry Reding clock-names = "dsi", "lp", "parent"; 772c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DSIB>; 773c2599da7SThierry Reding reset-names = "dsi"; 774c2599da7SThierry Reding status = "disabled"; 775c2599da7SThierry Reding 776c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 777c2599da7SThierry Reding }; 778c2599da7SThierry Reding 779c2599da7SThierry Reding sor0: sor@15540000 { 780c2599da7SThierry Reding compatible = "nvidia,tegra186-sor"; 781c2599da7SThierry Reding reg = <0x15540000 0x10000>; 782c2599da7SThierry Reding interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>; 783c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_SOR0>, 784c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR0_OUT>, 785c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD2>, 786c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLDP>, 787c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR_SAFE>, 788c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR0_PAD_CLKOUT>; 789c2599da7SThierry Reding clock-names = "sor", "out", "parent", "dp", "safe", 790c2599da7SThierry Reding "pad"; 791c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_SOR0>; 792c2599da7SThierry Reding reset-names = "sor"; 793c2599da7SThierry Reding pinctrl-0 = <&state_dpaux_aux>; 794c2599da7SThierry Reding pinctrl-1 = <&state_dpaux_i2c>; 795c2599da7SThierry Reding pinctrl-2 = <&state_dpaux_off>; 796c2599da7SThierry Reding pinctrl-names = "aux", "i2c", "off"; 797c2599da7SThierry Reding status = "disabled"; 798c2599da7SThierry Reding 799c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 800c2599da7SThierry Reding nvidia,interface = <0>; 801c2599da7SThierry Reding }; 802c2599da7SThierry Reding 803c2599da7SThierry Reding sor1: sor@15580000 { 804c2599da7SThierry Reding compatible = "nvidia,tegra186-sor1"; 805c2599da7SThierry Reding reg = <0x15580000 0x10000>; 806c2599da7SThierry Reding interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>; 807c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_SOR1>, 808c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR1_OUT>, 809c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD3>, 810c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLDP>, 811c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR_SAFE>, 812c2599da7SThierry Reding <&bpmp TEGRA186_CLK_SOR1_PAD_CLKOUT>; 813c2599da7SThierry Reding clock-names = "sor", "out", "parent", "dp", "safe", 814c2599da7SThierry Reding "pad"; 815c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_SOR1>; 816c2599da7SThierry Reding reset-names = "sor"; 817c2599da7SThierry Reding pinctrl-0 = <&state_dpaux1_aux>; 818c2599da7SThierry Reding pinctrl-1 = <&state_dpaux1_i2c>; 819c2599da7SThierry Reding pinctrl-2 = <&state_dpaux1_off>; 820c2599da7SThierry Reding pinctrl-names = "aux", "i2c", "off"; 821c2599da7SThierry Reding status = "disabled"; 822c2599da7SThierry Reding 823c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 824c2599da7SThierry Reding nvidia,interface = <1>; 825c2599da7SThierry Reding }; 826c2599da7SThierry Reding 827c2599da7SThierry Reding dpaux: dpaux@155c0000 { 828c2599da7SThierry Reding compatible = "nvidia,tegra186-dpaux"; 829c2599da7SThierry Reding reg = <0x155c0000 0x10000>; 830c2599da7SThierry Reding interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; 831c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DPAUX>, 832c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLDP>; 833c2599da7SThierry Reding clock-names = "dpaux", "parent"; 834c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DPAUX>; 835c2599da7SThierry Reding reset-names = "dpaux"; 836c2599da7SThierry Reding status = "disabled"; 837c2599da7SThierry Reding 838c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 839c2599da7SThierry Reding 840c2599da7SThierry Reding state_dpaux_aux: pinmux-aux { 841c2599da7SThierry Reding groups = "dpaux-io"; 842c2599da7SThierry Reding function = "aux"; 843c2599da7SThierry Reding }; 844c2599da7SThierry Reding 845c2599da7SThierry Reding state_dpaux_i2c: pinmux-i2c { 846c2599da7SThierry Reding groups = "dpaux-io"; 847c2599da7SThierry Reding function = "i2c"; 848c2599da7SThierry Reding }; 849c2599da7SThierry Reding 850c2599da7SThierry Reding state_dpaux_off: pinmux-off { 851c2599da7SThierry Reding groups = "dpaux-io"; 852c2599da7SThierry Reding function = "off"; 853c2599da7SThierry Reding }; 854c2599da7SThierry Reding 855c2599da7SThierry Reding i2c-bus { 856c2599da7SThierry Reding #address-cells = <1>; 857c2599da7SThierry Reding #size-cells = <0>; 858c2599da7SThierry Reding }; 859c2599da7SThierry Reding }; 860c2599da7SThierry Reding 861c2599da7SThierry Reding padctl@15880000 { 862c2599da7SThierry Reding compatible = "nvidia,tegra186-dsi-padctl"; 863c2599da7SThierry Reding reg = <0x15880000 0x10000>; 864c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DSI>; 865c2599da7SThierry Reding reset-names = "dsi"; 866c2599da7SThierry Reding status = "disabled"; 867c2599da7SThierry Reding }; 868c2599da7SThierry Reding 869c2599da7SThierry Reding dsic: dsi@15900000 { 870c2599da7SThierry Reding compatible = "nvidia,tegra186-dsi"; 871c2599da7SThierry Reding reg = <0x15900000 0x10000>; 872c2599da7SThierry Reding interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 873c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DSIC>, 874c2599da7SThierry Reding <&bpmp TEGRA186_CLK_DSIC_LP>, 875c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD>; 876c2599da7SThierry Reding clock-names = "dsi", "lp", "parent"; 877c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DSIC>; 878c2599da7SThierry Reding reset-names = "dsi"; 879c2599da7SThierry Reding status = "disabled"; 880c2599da7SThierry Reding 881c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 882c2599da7SThierry Reding }; 883c2599da7SThierry Reding 884c2599da7SThierry Reding dsid: dsi@15940000 { 885c2599da7SThierry Reding compatible = "nvidia,tegra186-dsi"; 886c2599da7SThierry Reding reg = <0x15940000 0x10000>; 887c2599da7SThierry Reding interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 888c2599da7SThierry Reding clocks = <&bpmp TEGRA186_CLK_DSID>, 889c2599da7SThierry Reding <&bpmp TEGRA186_CLK_DSID_LP>, 890c2599da7SThierry Reding <&bpmp TEGRA186_CLK_PLLD>; 891c2599da7SThierry Reding clock-names = "dsi", "lp", "parent"; 892c2599da7SThierry Reding resets = <&bpmp TEGRA186_RESET_DSID>; 893c2599da7SThierry Reding reset-names = "dsi"; 894c2599da7SThierry Reding status = "disabled"; 895c2599da7SThierry Reding 896c2599da7SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; 897c2599da7SThierry Reding }; 8985524c61fSMikko Perttunen }; 8995524c61fSMikko Perttunen 900dfd7a384SAlexandre Courbot gpu@17000000 { 901dfd7a384SAlexandre Courbot compatible = "nvidia,gp10b"; 902dfd7a384SAlexandre Courbot reg = <0x0 0x17000000 0x0 0x1000000>, 903dfd7a384SAlexandre Courbot <0x0 0x18000000 0x0 0x1000000>; 904dfd7a384SAlexandre Courbot interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH 905dfd7a384SAlexandre Courbot GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 906dfd7a384SAlexandre Courbot interrupt-names = "stall", "nonstall"; 907dfd7a384SAlexandre Courbot 908dfd7a384SAlexandre Courbot clocks = <&bpmp TEGRA186_CLK_GPCCLK>, 909dfd7a384SAlexandre Courbot <&bpmp TEGRA186_CLK_GPU>; 910dfd7a384SAlexandre Courbot clock-names = "gpu", "pwr"; 911dfd7a384SAlexandre Courbot resets = <&bpmp TEGRA186_RESET_GPU>; 912dfd7a384SAlexandre Courbot reset-names = "gpu"; 913dfd7a384SAlexandre Courbot status = "disabled"; 914dfd7a384SAlexandre Courbot 915dfd7a384SAlexandre Courbot power-domains = <&bpmp TEGRA186_POWER_DOMAIN_GPU>; 916dfd7a384SAlexandre Courbot }; 917dfd7a384SAlexandre Courbot 91839cb62cbSJoseph Lo sysram@30000000 { 91939cb62cbSJoseph Lo compatible = "nvidia,tegra186-sysram", "mmio-sram"; 92039cb62cbSJoseph Lo reg = <0x0 0x30000000 0x0 0x50000>; 92139cb62cbSJoseph Lo #address-cells = <2>; 92239cb62cbSJoseph Lo #size-cells = <2>; 92339cb62cbSJoseph Lo ranges = <0 0x0 0x0 0x30000000 0x0 0x50000>; 92439cb62cbSJoseph Lo 92539cb62cbSJoseph Lo cpu_bpmp_tx: shmem@4e000 { 92639cb62cbSJoseph Lo compatible = "nvidia,tegra186-bpmp-shmem"; 92739cb62cbSJoseph Lo reg = <0x0 0x4e000 0x0 0x1000>; 92839cb62cbSJoseph Lo label = "cpu-bpmp-tx"; 92939cb62cbSJoseph Lo pool; 93039cb62cbSJoseph Lo }; 93139cb62cbSJoseph Lo 93239cb62cbSJoseph Lo cpu_bpmp_rx: shmem@4f000 { 93339cb62cbSJoseph Lo compatible = "nvidia,tegra186-bpmp-shmem"; 93439cb62cbSJoseph Lo reg = <0x0 0x4f000 0x0 0x1000>; 93539cb62cbSJoseph Lo label = "cpu-bpmp-rx"; 93639cb62cbSJoseph Lo pool; 93739cb62cbSJoseph Lo }; 93839cb62cbSJoseph Lo }; 93939cb62cbSJoseph Lo 940cd6fe32eSThierry Reding cpus { 941cd6fe32eSThierry Reding #address-cells = <1>; 942cd6fe32eSThierry Reding #size-cells = <0>; 943cd6fe32eSThierry Reding 944cd6fe32eSThierry Reding cpu@0 { 945cd6fe32eSThierry Reding compatible = "nvidia,tegra186-denver", "arm,armv8"; 946cd6fe32eSThierry Reding device_type = "cpu"; 947cd6fe32eSThierry Reding reg = <0x000>; 948cd6fe32eSThierry Reding }; 949cd6fe32eSThierry Reding 950cd6fe32eSThierry Reding cpu@1 { 951cd6fe32eSThierry Reding compatible = "nvidia,tegra186-denver", "arm,armv8"; 952cd6fe32eSThierry Reding device_type = "cpu"; 953cd6fe32eSThierry Reding reg = <0x001>; 954cd6fe32eSThierry Reding }; 955cd6fe32eSThierry Reding 956cd6fe32eSThierry Reding cpu@2 { 957cd6fe32eSThierry Reding compatible = "arm,cortex-a57", "arm,armv8"; 958cd6fe32eSThierry Reding device_type = "cpu"; 959cd6fe32eSThierry Reding reg = <0x100>; 960cd6fe32eSThierry Reding }; 961cd6fe32eSThierry Reding 962cd6fe32eSThierry Reding cpu@3 { 963cd6fe32eSThierry Reding compatible = "arm,cortex-a57", "arm,armv8"; 964cd6fe32eSThierry Reding device_type = "cpu"; 965cd6fe32eSThierry Reding reg = <0x101>; 966cd6fe32eSThierry Reding }; 967cd6fe32eSThierry Reding 968cd6fe32eSThierry Reding cpu@4 { 969cd6fe32eSThierry Reding compatible = "arm,cortex-a57", "arm,armv8"; 970cd6fe32eSThierry Reding device_type = "cpu"; 971cd6fe32eSThierry Reding reg = <0x102>; 972cd6fe32eSThierry Reding }; 973cd6fe32eSThierry Reding 974cd6fe32eSThierry Reding cpu@5 { 975cd6fe32eSThierry Reding compatible = "arm,cortex-a57", "arm,armv8"; 976cd6fe32eSThierry Reding device_type = "cpu"; 977cd6fe32eSThierry Reding reg = <0x103>; 978cd6fe32eSThierry Reding }; 979cd6fe32eSThierry Reding }; 980cd6fe32eSThierry Reding 98139cb62cbSJoseph Lo bpmp: bpmp { 98239cb62cbSJoseph Lo compatible = "nvidia,tegra186-bpmp"; 9835edcebb9SThierry Reding mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB 9845edcebb9SThierry Reding TEGRA_HSP_DB_MASTER_BPMP>; 98539cb62cbSJoseph Lo shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>; 98639cb62cbSJoseph Lo #clock-cells = <1>; 98739cb62cbSJoseph Lo #reset-cells = <1>; 988dcbc5e44SMikko Perttunen #power-domain-cells = <1>; 98939cb62cbSJoseph Lo 99039cb62cbSJoseph Lo bpmp_i2c: i2c { 99139cb62cbSJoseph Lo compatible = "nvidia,tegra186-bpmp-i2c"; 99239cb62cbSJoseph Lo nvidia,bpmp-bus-id = <5>; 99339cb62cbSJoseph Lo #address-cells = <1>; 99439cb62cbSJoseph Lo #size-cells = <0>; 99539cb62cbSJoseph Lo status = "disabled"; 99639cb62cbSJoseph Lo }; 99715274c23SMikko Perttunen 99815274c23SMikko Perttunen bpmp_thermal: thermal { 99915274c23SMikko Perttunen compatible = "nvidia,tegra186-bpmp-thermal"; 100015274c23SMikko Perttunen #thermal-sensor-cells = <1>; 100115274c23SMikko Perttunen }; 100215274c23SMikko Perttunen }; 100315274c23SMikko Perttunen 100415274c23SMikko Perttunen thermal-zones { 100515274c23SMikko Perttunen a57 { 100615274c23SMikko Perttunen polling-delay = <0>; 100715274c23SMikko Perttunen polling-delay-passive = <1000>; 100815274c23SMikko Perttunen 100915274c23SMikko Perttunen thermal-sensors = 101015274c23SMikko Perttunen <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_CPU>; 101115274c23SMikko Perttunen 101215274c23SMikko Perttunen trips { 101315274c23SMikko Perttunen critical { 101415274c23SMikko Perttunen temperature = <101000>; 101515274c23SMikko Perttunen hysteresis = <0>; 101615274c23SMikko Perttunen type = "critical"; 101715274c23SMikko Perttunen }; 101815274c23SMikko Perttunen }; 101915274c23SMikko Perttunen 102015274c23SMikko Perttunen cooling-maps { 102115274c23SMikko Perttunen }; 102215274c23SMikko Perttunen }; 102315274c23SMikko Perttunen 102415274c23SMikko Perttunen denver { 102515274c23SMikko Perttunen polling-delay = <0>; 102615274c23SMikko Perttunen polling-delay-passive = <1000>; 102715274c23SMikko Perttunen 102815274c23SMikko Perttunen thermal-sensors = 102915274c23SMikko Perttunen <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AUX>; 103015274c23SMikko Perttunen 103115274c23SMikko Perttunen trips { 103215274c23SMikko Perttunen critical { 103315274c23SMikko Perttunen temperature = <101000>; 103415274c23SMikko Perttunen hysteresis = <0>; 103515274c23SMikko Perttunen type = "critical"; 103615274c23SMikko Perttunen }; 103715274c23SMikko Perttunen }; 103815274c23SMikko Perttunen 103915274c23SMikko Perttunen cooling-maps { 104015274c23SMikko Perttunen }; 104115274c23SMikko Perttunen }; 104215274c23SMikko Perttunen 104315274c23SMikko Perttunen gpu { 104415274c23SMikko Perttunen polling-delay = <0>; 104515274c23SMikko Perttunen polling-delay-passive = <1000>; 104615274c23SMikko Perttunen 104715274c23SMikko Perttunen thermal-sensors = 104815274c23SMikko Perttunen <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_GPU>; 104915274c23SMikko Perttunen 105015274c23SMikko Perttunen trips { 105115274c23SMikko Perttunen critical { 105215274c23SMikko Perttunen temperature = <101000>; 105315274c23SMikko Perttunen hysteresis = <0>; 105415274c23SMikko Perttunen type = "critical"; 105515274c23SMikko Perttunen }; 105615274c23SMikko Perttunen }; 105715274c23SMikko Perttunen 105815274c23SMikko Perttunen cooling-maps { 105915274c23SMikko Perttunen }; 106015274c23SMikko Perttunen }; 106115274c23SMikko Perttunen 106215274c23SMikko Perttunen pll { 106315274c23SMikko Perttunen polling-delay = <0>; 106415274c23SMikko Perttunen polling-delay-passive = <1000>; 106515274c23SMikko Perttunen 106615274c23SMikko Perttunen thermal-sensors = 106715274c23SMikko Perttunen <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_PLLX>; 106815274c23SMikko Perttunen 106915274c23SMikko Perttunen trips { 107015274c23SMikko Perttunen critical { 107115274c23SMikko Perttunen temperature = <101000>; 107215274c23SMikko Perttunen hysteresis = <0>; 107315274c23SMikko Perttunen type = "critical"; 107415274c23SMikko Perttunen }; 107515274c23SMikko Perttunen }; 107615274c23SMikko Perttunen 107715274c23SMikko Perttunen cooling-maps { 107815274c23SMikko Perttunen }; 107915274c23SMikko Perttunen }; 108015274c23SMikko Perttunen 108115274c23SMikko Perttunen always_on { 108215274c23SMikko Perttunen polling-delay = <0>; 108315274c23SMikko Perttunen polling-delay-passive = <1000>; 108415274c23SMikko Perttunen 108515274c23SMikko Perttunen thermal-sensors = 108615274c23SMikko Perttunen <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AO>; 108715274c23SMikko Perttunen 108815274c23SMikko Perttunen trips { 108915274c23SMikko Perttunen critical { 109015274c23SMikko Perttunen temperature = <101000>; 109115274c23SMikko Perttunen hysteresis = <0>; 109215274c23SMikko Perttunen type = "critical"; 109315274c23SMikko Perttunen }; 109415274c23SMikko Perttunen }; 109515274c23SMikko Perttunen 109615274c23SMikko Perttunen cooling-maps { 109715274c23SMikko Perttunen }; 109815274c23SMikko Perttunen }; 109939cb62cbSJoseph Lo }; 110039cb62cbSJoseph Lo 110139cb62cbSJoseph Lo timer { 110239cb62cbSJoseph Lo compatible = "arm,armv8-timer"; 110339cb62cbSJoseph Lo interrupts = <GIC_PPI 13 110439cb62cbSJoseph Lo (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 110539cb62cbSJoseph Lo <GIC_PPI 14 110639cb62cbSJoseph Lo (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 110739cb62cbSJoseph Lo <GIC_PPI 11 110839cb62cbSJoseph Lo (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 110939cb62cbSJoseph Lo <GIC_PPI 10 111039cb62cbSJoseph Lo (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 111139cb62cbSJoseph Lo interrupt-parent = <&gic>; 111239cb62cbSJoseph Lo }; 111339cb62cbSJoseph Lo}; 1114