16d9b8d20SAnson Huang// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 26d9b8d20SAnson Huang/* 36d9b8d20SAnson Huang * Copyright 2019 NXP 46d9b8d20SAnson Huang */ 56d9b8d20SAnson Huang 66d9b8d20SAnson Huang#include <dt-bindings/clock/imx8mp-clock.h> 7fc0f0512SLucas Stach#include <dt-bindings/power/imx8mp-power.h> 89e65987bSRichard Zhu#include <dt-bindings/reset/imx8mp-reset.h> 96d9b8d20SAnson Huang#include <dt-bindings/gpio/gpio.h> 106d9b8d20SAnson Huang#include <dt-bindings/input/input.h> 113175c706SPeng Fan#include <dt-bindings/interconnect/fsl,imx8mp.h> 126d9b8d20SAnson Huang#include <dt-bindings/interrupt-controller/arm-gic.h> 1330cdd62dSAnson Huang#include <dt-bindings/thermal/thermal.h> 146d9b8d20SAnson Huang 156d9b8d20SAnson Huang#include "imx8mp-pinfunc.h" 166d9b8d20SAnson Huang 176d9b8d20SAnson Huang/ { 186d9b8d20SAnson Huang interrupt-parent = <&gic>; 196d9b8d20SAnson Huang #address-cells = <2>; 206d9b8d20SAnson Huang #size-cells = <2>; 216d9b8d20SAnson Huang 226d9b8d20SAnson Huang aliases { 236d9b8d20SAnson Huang ethernet0 = &fec; 24ec4d1196SMarek Vasut ethernet1 = &eqos; 256d9b8d20SAnson Huang gpio0 = &gpio1; 266d9b8d20SAnson Huang gpio1 = &gpio2; 276d9b8d20SAnson Huang gpio2 = &gpio3; 286d9b8d20SAnson Huang gpio3 = &gpio4; 296d9b8d20SAnson Huang gpio4 = &gpio5; 30ac4af2b1SPeng Fan i2c0 = &i2c1; 31ac4af2b1SPeng Fan i2c1 = &i2c2; 32ac4af2b1SPeng Fan i2c2 = &i2c3; 33ac4af2b1SPeng Fan i2c3 = &i2c4; 34ac4af2b1SPeng Fan i2c4 = &i2c5; 35ac4af2b1SPeng Fan i2c5 = &i2c6; 366d9b8d20SAnson Huang mmc0 = &usdhc1; 376d9b8d20SAnson Huang mmc1 = &usdhc2; 386d9b8d20SAnson Huang mmc2 = &usdhc3; 396d9b8d20SAnson Huang serial0 = &uart1; 406d9b8d20SAnson Huang serial1 = &uart2; 416d9b8d20SAnson Huang serial2 = &uart3; 426d9b8d20SAnson Huang serial3 = &uart4; 436914d1baSHeiko Schocher spi0 = &flexspi; 446d9b8d20SAnson Huang }; 456d9b8d20SAnson Huang 466d9b8d20SAnson Huang cpus { 476d9b8d20SAnson Huang #address-cells = <1>; 486d9b8d20SAnson Huang #size-cells = <0>; 496d9b8d20SAnson Huang 506d9b8d20SAnson Huang A53_0: cpu@0 { 516d9b8d20SAnson Huang device_type = "cpu"; 526d9b8d20SAnson Huang compatible = "arm,cortex-a53"; 536d9b8d20SAnson Huang reg = <0x0>; 546d9b8d20SAnson Huang clock-latency = <61036>; 556d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ARM>; 566d9b8d20SAnson Huang enable-method = "psci"; 57cb551b5eSPeng Fan i-cache-size = <0x8000>; 58cb551b5eSPeng Fan i-cache-line-size = <64>; 59cb551b5eSPeng Fan i-cache-sets = <256>; 60cb551b5eSPeng Fan d-cache-size = <0x8000>; 61cb551b5eSPeng Fan d-cache-line-size = <64>; 62cb551b5eSPeng Fan d-cache-sets = <128>; 636d9b8d20SAnson Huang next-level-cache = <&A53_L2>; 649ad9773eSMarek Vasut nvmem-cells = <&cpu_speed_grade>; 659ad9773eSMarek Vasut nvmem-cell-names = "speed_grade"; 6621a14c68SMarek Vasut operating-points-v2 = <&a53_opp_table>; 6730cdd62dSAnson Huang #cooling-cells = <2>; 686d9b8d20SAnson Huang }; 696d9b8d20SAnson Huang 706d9b8d20SAnson Huang A53_1: cpu@1 { 716d9b8d20SAnson Huang device_type = "cpu"; 726d9b8d20SAnson Huang compatible = "arm,cortex-a53"; 736d9b8d20SAnson Huang reg = <0x1>; 746d9b8d20SAnson Huang clock-latency = <61036>; 756d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ARM>; 766d9b8d20SAnson Huang enable-method = "psci"; 77cb551b5eSPeng Fan i-cache-size = <0x8000>; 78cb551b5eSPeng Fan i-cache-line-size = <64>; 79cb551b5eSPeng Fan i-cache-sets = <256>; 80cb551b5eSPeng Fan d-cache-size = <0x8000>; 81cb551b5eSPeng Fan d-cache-line-size = <64>; 82cb551b5eSPeng Fan d-cache-sets = <128>; 836d9b8d20SAnson Huang next-level-cache = <&A53_L2>; 8421a14c68SMarek Vasut operating-points-v2 = <&a53_opp_table>; 8530cdd62dSAnson Huang #cooling-cells = <2>; 866d9b8d20SAnson Huang }; 876d9b8d20SAnson Huang 886d9b8d20SAnson Huang A53_2: cpu@2 { 896d9b8d20SAnson Huang device_type = "cpu"; 906d9b8d20SAnson Huang compatible = "arm,cortex-a53"; 916d9b8d20SAnson Huang reg = <0x2>; 926d9b8d20SAnson Huang clock-latency = <61036>; 936d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ARM>; 946d9b8d20SAnson Huang enable-method = "psci"; 95cb551b5eSPeng Fan i-cache-size = <0x8000>; 96cb551b5eSPeng Fan i-cache-line-size = <64>; 97cb551b5eSPeng Fan i-cache-sets = <256>; 98cb551b5eSPeng Fan d-cache-size = <0x8000>; 99cb551b5eSPeng Fan d-cache-line-size = <64>; 100cb551b5eSPeng Fan d-cache-sets = <128>; 1016d9b8d20SAnson Huang next-level-cache = <&A53_L2>; 10221a14c68SMarek Vasut operating-points-v2 = <&a53_opp_table>; 10330cdd62dSAnson Huang #cooling-cells = <2>; 1046d9b8d20SAnson Huang }; 1056d9b8d20SAnson Huang 1066d9b8d20SAnson Huang A53_3: cpu@3 { 1076d9b8d20SAnson Huang device_type = "cpu"; 1086d9b8d20SAnson Huang compatible = "arm,cortex-a53"; 1096d9b8d20SAnson Huang reg = <0x3>; 1106d9b8d20SAnson Huang clock-latency = <61036>; 1116d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ARM>; 1126d9b8d20SAnson Huang enable-method = "psci"; 113cb551b5eSPeng Fan i-cache-size = <0x8000>; 114cb551b5eSPeng Fan i-cache-line-size = <64>; 115cb551b5eSPeng Fan i-cache-sets = <256>; 116cb551b5eSPeng Fan d-cache-size = <0x8000>; 117cb551b5eSPeng Fan d-cache-line-size = <64>; 118cb551b5eSPeng Fan d-cache-sets = <128>; 1196d9b8d20SAnson Huang next-level-cache = <&A53_L2>; 12021a14c68SMarek Vasut operating-points-v2 = <&a53_opp_table>; 12130cdd62dSAnson Huang #cooling-cells = <2>; 1226d9b8d20SAnson Huang }; 1236d9b8d20SAnson Huang 1246d9b8d20SAnson Huang A53_L2: l2-cache0 { 1256d9b8d20SAnson Huang compatible = "cache"; 1263b450831SPierre Gondois cache-unified; 127cb551b5eSPeng Fan cache-level = <2>; 128cb551b5eSPeng Fan cache-size = <0x80000>; 129cb551b5eSPeng Fan cache-line-size = <64>; 130cb551b5eSPeng Fan cache-sets = <512>; 1316d9b8d20SAnson Huang }; 1326d9b8d20SAnson Huang }; 1336d9b8d20SAnson Huang 13421a14c68SMarek Vasut a53_opp_table: opp-table { 13521a14c68SMarek Vasut compatible = "operating-points-v2"; 13621a14c68SMarek Vasut opp-shared; 13721a14c68SMarek Vasut 13821a14c68SMarek Vasut opp-1200000000 { 13921a14c68SMarek Vasut opp-hz = /bits/ 64 <1200000000>; 14021a14c68SMarek Vasut opp-microvolt = <850000>; 14121a14c68SMarek Vasut opp-supported-hw = <0x8a0>, <0x7>; 14221a14c68SMarek Vasut clock-latency-ns = <150000>; 14321a14c68SMarek Vasut opp-suspend; 14421a14c68SMarek Vasut }; 14521a14c68SMarek Vasut 14621a14c68SMarek Vasut opp-1600000000 { 14721a14c68SMarek Vasut opp-hz = /bits/ 64 <1600000000>; 14821a14c68SMarek Vasut opp-microvolt = <950000>; 14921a14c68SMarek Vasut opp-supported-hw = <0xa0>, <0x7>; 15021a14c68SMarek Vasut clock-latency-ns = <150000>; 15121a14c68SMarek Vasut opp-suspend; 15221a14c68SMarek Vasut }; 15321a14c68SMarek Vasut 15421a14c68SMarek Vasut opp-1800000000 { 15521a14c68SMarek Vasut opp-hz = /bits/ 64 <1800000000>; 15621a14c68SMarek Vasut opp-microvolt = <1000000>; 15721a14c68SMarek Vasut opp-supported-hw = <0x20>, <0x3>; 15821a14c68SMarek Vasut clock-latency-ns = <150000>; 15921a14c68SMarek Vasut opp-suspend; 16021a14c68SMarek Vasut }; 16121a14c68SMarek Vasut }; 16221a14c68SMarek Vasut 1636d9b8d20SAnson Huang osc_32k: clock-osc-32k { 1646d9b8d20SAnson Huang compatible = "fixed-clock"; 1656d9b8d20SAnson Huang #clock-cells = <0>; 1666d9b8d20SAnson Huang clock-frequency = <32768>; 1676d9b8d20SAnson Huang clock-output-names = "osc_32k"; 1686d9b8d20SAnson Huang }; 1696d9b8d20SAnson Huang 1706d9b8d20SAnson Huang osc_24m: clock-osc-24m { 1716d9b8d20SAnson Huang compatible = "fixed-clock"; 1726d9b8d20SAnson Huang #clock-cells = <0>; 1736d9b8d20SAnson Huang clock-frequency = <24000000>; 1746d9b8d20SAnson Huang clock-output-names = "osc_24m"; 1756d9b8d20SAnson Huang }; 1766d9b8d20SAnson Huang 1776d9b8d20SAnson Huang clk_ext1: clock-ext1 { 1786d9b8d20SAnson Huang compatible = "fixed-clock"; 1796d9b8d20SAnson Huang #clock-cells = <0>; 1806d9b8d20SAnson Huang clock-frequency = <133000000>; 1816d9b8d20SAnson Huang clock-output-names = "clk_ext1"; 1826d9b8d20SAnson Huang }; 1836d9b8d20SAnson Huang 1846d9b8d20SAnson Huang clk_ext2: clock-ext2 { 1856d9b8d20SAnson Huang compatible = "fixed-clock"; 1866d9b8d20SAnson Huang #clock-cells = <0>; 1876d9b8d20SAnson Huang clock-frequency = <133000000>; 1886d9b8d20SAnson Huang clock-output-names = "clk_ext2"; 1896d9b8d20SAnson Huang }; 1906d9b8d20SAnson Huang 1916d9b8d20SAnson Huang clk_ext3: clock-ext3 { 1926d9b8d20SAnson Huang compatible = "fixed-clock"; 1936d9b8d20SAnson Huang #clock-cells = <0>; 1946d9b8d20SAnson Huang clock-frequency = <133000000>; 1956d9b8d20SAnson Huang clock-output-names = "clk_ext3"; 1966d9b8d20SAnson Huang }; 1976d9b8d20SAnson Huang 1986d9b8d20SAnson Huang clk_ext4: clock-ext4 { 1996d9b8d20SAnson Huang compatible = "fixed-clock"; 2006d9b8d20SAnson Huang #clock-cells = <0>; 2016d9b8d20SAnson Huang clock-frequency = <133000000>; 2026d9b8d20SAnson Huang clock-output-names = "clk_ext4"; 2036d9b8d20SAnson Huang }; 2046d9b8d20SAnson Huang 205*9cfe3c89SFabio Estevam funnel { 206*9cfe3c89SFabio Estevam /* 207*9cfe3c89SFabio Estevam * non-configurable funnel don't show up on the AMBA 208*9cfe3c89SFabio Estevam * bus. As such no need to add "arm,primecell". 209*9cfe3c89SFabio Estevam */ 210*9cfe3c89SFabio Estevam compatible = "arm,coresight-static-funnel"; 211*9cfe3c89SFabio Estevam 212*9cfe3c89SFabio Estevam in-ports { 213*9cfe3c89SFabio Estevam #address-cells = <1>; 214*9cfe3c89SFabio Estevam #size-cells = <0>; 215*9cfe3c89SFabio Estevam 216*9cfe3c89SFabio Estevam port@0 { 217*9cfe3c89SFabio Estevam reg = <0>; 218*9cfe3c89SFabio Estevam 219*9cfe3c89SFabio Estevam ca_funnel_in_port0: endpoint { 220*9cfe3c89SFabio Estevam remote-endpoint = <&etm0_out_port>; 221*9cfe3c89SFabio Estevam }; 222*9cfe3c89SFabio Estevam }; 223*9cfe3c89SFabio Estevam 224*9cfe3c89SFabio Estevam port@1 { 225*9cfe3c89SFabio Estevam reg = <1>; 226*9cfe3c89SFabio Estevam 227*9cfe3c89SFabio Estevam ca_funnel_in_port1: endpoint { 228*9cfe3c89SFabio Estevam remote-endpoint = <&etm1_out_port>; 229*9cfe3c89SFabio Estevam }; 230*9cfe3c89SFabio Estevam }; 231*9cfe3c89SFabio Estevam 232*9cfe3c89SFabio Estevam port@2 { 233*9cfe3c89SFabio Estevam reg = <2>; 234*9cfe3c89SFabio Estevam 235*9cfe3c89SFabio Estevam ca_funnel_in_port2: endpoint { 236*9cfe3c89SFabio Estevam remote-endpoint = <&etm2_out_port>; 237*9cfe3c89SFabio Estevam }; 238*9cfe3c89SFabio Estevam }; 239*9cfe3c89SFabio Estevam 240*9cfe3c89SFabio Estevam port@3 { 241*9cfe3c89SFabio Estevam reg = <3>; 242*9cfe3c89SFabio Estevam 243*9cfe3c89SFabio Estevam ca_funnel_in_port3: endpoint { 244*9cfe3c89SFabio Estevam remote-endpoint = <&etm3_out_port>; 245*9cfe3c89SFabio Estevam }; 246*9cfe3c89SFabio Estevam }; 247*9cfe3c89SFabio Estevam }; 248*9cfe3c89SFabio Estevam 249*9cfe3c89SFabio Estevam out-ports { 250*9cfe3c89SFabio Estevam port { 251*9cfe3c89SFabio Estevam 252*9cfe3c89SFabio Estevam ca_funnel_out_port0: endpoint { 253*9cfe3c89SFabio Estevam remote-endpoint = <&hugo_funnel_in_port0>; 254*9cfe3c89SFabio Estevam }; 255*9cfe3c89SFabio Estevam }; 256*9cfe3c89SFabio Estevam }; 257*9cfe3c89SFabio Estevam }; 258*9cfe3c89SFabio Estevam 259bc3ab388SDaniel Baluta reserved-memory { 260bc3ab388SDaniel Baluta #address-cells = <2>; 261bc3ab388SDaniel Baluta #size-cells = <2>; 262bc3ab388SDaniel Baluta ranges; 263bc3ab388SDaniel Baluta 264bc3ab388SDaniel Baluta dsp_reserved: dsp@92400000 { 265bc3ab388SDaniel Baluta reg = <0 0x92400000 0 0x2000000>; 266bc3ab388SDaniel Baluta no-map; 267bc3ab388SDaniel Baluta }; 268bc3ab388SDaniel Baluta }; 269bc3ab388SDaniel Baluta 2700f109a31SJacky Bai pmu { 2710f109a31SJacky Bai compatible = "arm,cortex-a53-pmu"; 2720f109a31SJacky Bai interrupts = <GIC_PPI 7 2730f109a31SJacky Bai (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 2740f109a31SJacky Bai }; 2750f109a31SJacky Bai 2766d9b8d20SAnson Huang psci { 2776d9b8d20SAnson Huang compatible = "arm,psci-1.0"; 2786d9b8d20SAnson Huang method = "smc"; 2796d9b8d20SAnson Huang }; 2806d9b8d20SAnson Huang 28130cdd62dSAnson Huang thermal-zones { 28230cdd62dSAnson Huang cpu-thermal { 28330cdd62dSAnson Huang polling-delay-passive = <250>; 28430cdd62dSAnson Huang polling-delay = <2000>; 28530cdd62dSAnson Huang thermal-sensors = <&tmu 0>; 28630cdd62dSAnson Huang trips { 28730cdd62dSAnson Huang cpu_alert0: trip0 { 28830cdd62dSAnson Huang temperature = <85000>; 28930cdd62dSAnson Huang hysteresis = <2000>; 29030cdd62dSAnson Huang type = "passive"; 29130cdd62dSAnson Huang }; 29230cdd62dSAnson Huang 29330cdd62dSAnson Huang cpu_crit0: trip1 { 29430cdd62dSAnson Huang temperature = <95000>; 29530cdd62dSAnson Huang hysteresis = <2000>; 29630cdd62dSAnson Huang type = "critical"; 29730cdd62dSAnson Huang }; 29830cdd62dSAnson Huang }; 29930cdd62dSAnson Huang 30030cdd62dSAnson Huang cooling-maps { 30130cdd62dSAnson Huang map0 { 30230cdd62dSAnson Huang trip = <&cpu_alert0>; 30330cdd62dSAnson Huang cooling-device = 30430cdd62dSAnson Huang <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30530cdd62dSAnson Huang <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30630cdd62dSAnson Huang <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30730cdd62dSAnson Huang <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 30830cdd62dSAnson Huang }; 30930cdd62dSAnson Huang }; 31030cdd62dSAnson Huang }; 31130cdd62dSAnson Huang 31230cdd62dSAnson Huang soc-thermal { 31330cdd62dSAnson Huang polling-delay-passive = <250>; 31430cdd62dSAnson Huang polling-delay = <2000>; 31530cdd62dSAnson Huang thermal-sensors = <&tmu 1>; 31630cdd62dSAnson Huang trips { 31730cdd62dSAnson Huang soc_alert0: trip0 { 31830cdd62dSAnson Huang temperature = <85000>; 31930cdd62dSAnson Huang hysteresis = <2000>; 32030cdd62dSAnson Huang type = "passive"; 32130cdd62dSAnson Huang }; 32230cdd62dSAnson Huang 32330cdd62dSAnson Huang soc_crit0: trip1 { 32430cdd62dSAnson Huang temperature = <95000>; 32530cdd62dSAnson Huang hysteresis = <2000>; 32630cdd62dSAnson Huang type = "critical"; 32730cdd62dSAnson Huang }; 32830cdd62dSAnson Huang }; 32930cdd62dSAnson Huang 33030cdd62dSAnson Huang cooling-maps { 33130cdd62dSAnson Huang map0 { 33230cdd62dSAnson Huang trip = <&soc_alert0>; 33330cdd62dSAnson Huang cooling-device = 33430cdd62dSAnson Huang <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33530cdd62dSAnson Huang <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33630cdd62dSAnson Huang <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33730cdd62dSAnson Huang <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 33830cdd62dSAnson Huang }; 33930cdd62dSAnson Huang }; 34030cdd62dSAnson Huang }; 34130cdd62dSAnson Huang }; 34230cdd62dSAnson Huang 3436d9b8d20SAnson Huang timer { 3446d9b8d20SAnson Huang compatible = "arm,armv8-timer"; 345061883e6SKrzysztof Kozlowski interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 346061883e6SKrzysztof Kozlowski <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 347061883e6SKrzysztof Kozlowski <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 348061883e6SKrzysztof Kozlowski <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 3496d9b8d20SAnson Huang clock-frequency = <8000000>; 3506d9b8d20SAnson Huang arm,no-tick-in-suspend; 3516d9b8d20SAnson Huang }; 3526d9b8d20SAnson Huang 353fcdef92bSFabio Estevam soc: soc@0 { 354ce58459dSAlice Guo compatible = "fsl,imx8mp-soc", "simple-bus"; 3556d9b8d20SAnson Huang #address-cells = <1>; 3566d9b8d20SAnson Huang #size-cells = <1>; 3576d9b8d20SAnson Huang ranges = <0x0 0x0 0x0 0x3e000000>; 358cbff2379SAlice Guo nvmem-cells = <&imx8mp_uid>; 359cbff2379SAlice Guo nvmem-cell-names = "soc_unique_id"; 3606d9b8d20SAnson Huang 36171c2ac9aSFrank Li etm0: etm@28440000 { 36271c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 363ba345b77SFrank Li reg = <0x28440000 0x1000>; 36471c2ac9aSFrank Li cpu = <&A53_0>; 36571c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 36671c2ac9aSFrank Li clock-names = "apb_pclk"; 36771c2ac9aSFrank Li 36871c2ac9aSFrank Li out-ports { 36971c2ac9aSFrank Li port { 37071c2ac9aSFrank Li etm0_out_port: endpoint { 37171c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port0>; 37271c2ac9aSFrank Li }; 37371c2ac9aSFrank Li }; 37471c2ac9aSFrank Li }; 37571c2ac9aSFrank Li }; 37671c2ac9aSFrank Li 37771c2ac9aSFrank Li etm1: etm@28540000 { 37871c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 379ba345b77SFrank Li reg = <0x28540000 0x1000>; 38071c2ac9aSFrank Li cpu = <&A53_1>; 38171c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 38271c2ac9aSFrank Li clock-names = "apb_pclk"; 38371c2ac9aSFrank Li 38471c2ac9aSFrank Li out-ports { 38571c2ac9aSFrank Li port { 38671c2ac9aSFrank Li etm1_out_port: endpoint { 38771c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port1>; 38871c2ac9aSFrank Li }; 38971c2ac9aSFrank Li }; 39071c2ac9aSFrank Li }; 39171c2ac9aSFrank Li }; 39271c2ac9aSFrank Li 39371c2ac9aSFrank Li etm2: etm@28640000 { 39471c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 395ba345b77SFrank Li reg = <0x28640000 0x1000>; 39671c2ac9aSFrank Li cpu = <&A53_2>; 39771c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 39871c2ac9aSFrank Li clock-names = "apb_pclk"; 39971c2ac9aSFrank Li 40071c2ac9aSFrank Li out-ports { 40171c2ac9aSFrank Li port { 40271c2ac9aSFrank Li etm2_out_port: endpoint { 40371c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port2>; 40471c2ac9aSFrank Li }; 40571c2ac9aSFrank Li }; 40671c2ac9aSFrank Li }; 40771c2ac9aSFrank Li }; 40871c2ac9aSFrank Li 40971c2ac9aSFrank Li etm3: etm@28740000 { 41071c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 411ba345b77SFrank Li reg = <0x28740000 0x1000>; 41271c2ac9aSFrank Li cpu = <&A53_3>; 41371c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 41471c2ac9aSFrank Li clock-names = "apb_pclk"; 41571c2ac9aSFrank Li 41671c2ac9aSFrank Li out-ports { 41771c2ac9aSFrank Li port { 41871c2ac9aSFrank Li etm3_out_port: endpoint { 41971c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port3>; 42071c2ac9aSFrank Li }; 42171c2ac9aSFrank Li }; 42271c2ac9aSFrank Li }; 42371c2ac9aSFrank Li }; 42471c2ac9aSFrank Li 42571c2ac9aSFrank Li funnel@28c03000 { 42671c2ac9aSFrank Li compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 42771c2ac9aSFrank Li reg = <0x28c03000 0x1000>; 42871c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 42971c2ac9aSFrank Li clock-names = "apb_pclk"; 43071c2ac9aSFrank Li 43171c2ac9aSFrank Li in-ports { 43271c2ac9aSFrank Li #address-cells = <1>; 43371c2ac9aSFrank Li #size-cells = <0>; 43471c2ac9aSFrank Li 43571c2ac9aSFrank Li port@0 { 43671c2ac9aSFrank Li reg = <0>; 43771c2ac9aSFrank Li 43871c2ac9aSFrank Li hugo_funnel_in_port0: endpoint { 43971c2ac9aSFrank Li remote-endpoint = <&ca_funnel_out_port0>; 44071c2ac9aSFrank Li }; 44171c2ac9aSFrank Li }; 44271c2ac9aSFrank Li 44371c2ac9aSFrank Li port@1 { 44471c2ac9aSFrank Li reg = <1>; 44571c2ac9aSFrank Li 44671c2ac9aSFrank Li hugo_funnel_in_port1: endpoint { 44771c2ac9aSFrank Li /* M7 input */ 44871c2ac9aSFrank Li }; 44971c2ac9aSFrank Li }; 45071c2ac9aSFrank Li 45171c2ac9aSFrank Li port@2 { 45271c2ac9aSFrank Li reg = <2>; 45371c2ac9aSFrank Li 45471c2ac9aSFrank Li hugo_funnel_in_port2: endpoint { 45571c2ac9aSFrank Li /* DSP input */ 45671c2ac9aSFrank Li }; 45771c2ac9aSFrank Li }; 45871c2ac9aSFrank Li /* the other input ports are not connect to anything */ 45971c2ac9aSFrank Li }; 46071c2ac9aSFrank Li 46171c2ac9aSFrank Li out-ports { 46271c2ac9aSFrank Li port { 46371c2ac9aSFrank Li hugo_funnel_out_port0: endpoint { 46471c2ac9aSFrank Li remote-endpoint = <&etf_in_port>; 46571c2ac9aSFrank Li }; 46671c2ac9aSFrank Li }; 46771c2ac9aSFrank Li }; 46871c2ac9aSFrank Li }; 46971c2ac9aSFrank Li 47071c2ac9aSFrank Li etf@28c04000 { 47171c2ac9aSFrank Li compatible = "arm,coresight-tmc", "arm,primecell"; 47271c2ac9aSFrank Li reg = <0x28c04000 0x1000>; 47371c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 47471c2ac9aSFrank Li clock-names = "apb_pclk"; 47571c2ac9aSFrank Li 47671c2ac9aSFrank Li in-ports { 47771c2ac9aSFrank Li port { 47871c2ac9aSFrank Li etf_in_port: endpoint { 47971c2ac9aSFrank Li remote-endpoint = <&hugo_funnel_out_port0>; 48071c2ac9aSFrank Li }; 48171c2ac9aSFrank Li }; 48271c2ac9aSFrank Li }; 48371c2ac9aSFrank Li 48471c2ac9aSFrank Li out-ports { 48571c2ac9aSFrank Li port { 48671c2ac9aSFrank Li etf_out_port: endpoint { 48771c2ac9aSFrank Li remote-endpoint = <&etr_in_port>; 48871c2ac9aSFrank Li }; 48971c2ac9aSFrank Li }; 49071c2ac9aSFrank Li }; 49171c2ac9aSFrank Li }; 49271c2ac9aSFrank Li 49371c2ac9aSFrank Li etr@28c06000 { 49471c2ac9aSFrank Li compatible = "arm,coresight-tmc", "arm,primecell"; 49571c2ac9aSFrank Li reg = <0x28c06000 0x1000>; 49671c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 49771c2ac9aSFrank Li clock-names = "apb_pclk"; 49871c2ac9aSFrank Li 49971c2ac9aSFrank Li in-ports { 50071c2ac9aSFrank Li port { 50171c2ac9aSFrank Li etr_in_port: endpoint { 50271c2ac9aSFrank Li remote-endpoint = <&etf_out_port>; 50371c2ac9aSFrank Li }; 50471c2ac9aSFrank Li }; 50571c2ac9aSFrank Li }; 50671c2ac9aSFrank Li }; 50771c2ac9aSFrank Li 5086d9b8d20SAnson Huang aips1: bus@30000000 { 509dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 510921a6845SFabio Estevam reg = <0x30000000 0x400000>; 5116d9b8d20SAnson Huang #address-cells = <1>; 5126d9b8d20SAnson Huang #size-cells = <1>; 5136d9b8d20SAnson Huang ranges; 5146d9b8d20SAnson Huang 5156d9b8d20SAnson Huang gpio1: gpio@30200000 { 5166d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5176d9b8d20SAnson Huang reg = <0x30200000 0x10000>; 5186d9b8d20SAnson Huang interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 5196d9b8d20SAnson Huang <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 5206d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO1_ROOT>; 5216d9b8d20SAnson Huang gpio-controller; 5226d9b8d20SAnson Huang #gpio-cells = <2>; 5236d9b8d20SAnson Huang interrupt-controller; 5246d9b8d20SAnson Huang #interrupt-cells = <2>; 5256d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 5 30>; 5266d9b8d20SAnson Huang }; 5276d9b8d20SAnson Huang 5286d9b8d20SAnson Huang gpio2: gpio@30210000 { 5296d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5306d9b8d20SAnson Huang reg = <0x30210000 0x10000>; 5316d9b8d20SAnson Huang interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 5326d9b8d20SAnson Huang <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 5336d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO2_ROOT>; 5346d9b8d20SAnson Huang gpio-controller; 5356d9b8d20SAnson Huang #gpio-cells = <2>; 5366d9b8d20SAnson Huang interrupt-controller; 5376d9b8d20SAnson Huang #interrupt-cells = <2>; 5386d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 35 21>; 5396d9b8d20SAnson Huang }; 5406d9b8d20SAnson Huang 5416d9b8d20SAnson Huang gpio3: gpio@30220000 { 5426d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5436d9b8d20SAnson Huang reg = <0x30220000 0x10000>; 5446d9b8d20SAnson Huang interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 5456d9b8d20SAnson Huang <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 5466d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO3_ROOT>; 5476d9b8d20SAnson Huang gpio-controller; 5486d9b8d20SAnson Huang #gpio-cells = <2>; 5496d9b8d20SAnson Huang interrupt-controller; 5506d9b8d20SAnson Huang #interrupt-cells = <2>; 551b764eb65SJacky Bai gpio-ranges = <&iomuxc 0 56 26>, <&iomuxc 26 144 4>; 5526d9b8d20SAnson Huang }; 5536d9b8d20SAnson Huang 5546d9b8d20SAnson Huang gpio4: gpio@30230000 { 5556d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5566d9b8d20SAnson Huang reg = <0x30230000 0x10000>; 5576d9b8d20SAnson Huang interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 5586d9b8d20SAnson Huang <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 5596d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO4_ROOT>; 5606d9b8d20SAnson Huang gpio-controller; 5616d9b8d20SAnson Huang #gpio-cells = <2>; 5626d9b8d20SAnson Huang interrupt-controller; 5636d9b8d20SAnson Huang #interrupt-cells = <2>; 5646d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 82 32>; 5656d9b8d20SAnson Huang }; 5666d9b8d20SAnson Huang 5676d9b8d20SAnson Huang gpio5: gpio@30240000 { 5686d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5696d9b8d20SAnson Huang reg = <0x30240000 0x10000>; 5706d9b8d20SAnson Huang interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 5716d9b8d20SAnson Huang <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 5726d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO5_ROOT>; 5736d9b8d20SAnson Huang gpio-controller; 5746d9b8d20SAnson Huang #gpio-cells = <2>; 5756d9b8d20SAnson Huang interrupt-controller; 5766d9b8d20SAnson Huang #interrupt-cells = <2>; 5776d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 114 30>; 5786d9b8d20SAnson Huang }; 5796d9b8d20SAnson Huang 58030cdd62dSAnson Huang tmu: tmu@30260000 { 58130cdd62dSAnson Huang compatible = "fsl,imx8mp-tmu"; 58230cdd62dSAnson Huang reg = <0x30260000 0x10000>; 58330cdd62dSAnson Huang clocks = <&clk IMX8MP_CLK_TSENSOR_ROOT>; 584105b9bb8SMarek Vasut nvmem-cells = <&tmu_calib>; 585105b9bb8SMarek Vasut nvmem-cell-names = "calib"; 58630cdd62dSAnson Huang #thermal-sensor-cells = <1>; 58730cdd62dSAnson Huang }; 58830cdd62dSAnson Huang 5896d9b8d20SAnson Huang wdog1: watchdog@30280000 { 5906d9b8d20SAnson Huang compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 5916d9b8d20SAnson Huang reg = <0x30280000 0x10000>; 5926d9b8d20SAnson Huang interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 5936d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_WDOG1_ROOT>; 5946d9b8d20SAnson Huang status = "disabled"; 5956d9b8d20SAnson Huang }; 5966d9b8d20SAnson Huang 59736133cb5SPeng Fan wdog2: watchdog@30290000 { 59836133cb5SPeng Fan compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 59936133cb5SPeng Fan reg = <0x30290000 0x10000>; 60036133cb5SPeng Fan interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 60136133cb5SPeng Fan clocks = <&clk IMX8MP_CLK_WDOG2_ROOT>; 60236133cb5SPeng Fan status = "disabled"; 60336133cb5SPeng Fan }; 60436133cb5SPeng Fan 60536133cb5SPeng Fan wdog3: watchdog@302a0000 { 60636133cb5SPeng Fan compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 60736133cb5SPeng Fan reg = <0x302a0000 0x10000>; 60836133cb5SPeng Fan interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 60936133cb5SPeng Fan clocks = <&clk IMX8MP_CLK_WDOG3_ROOT>; 61036133cb5SPeng Fan status = "disabled"; 61136133cb5SPeng Fan }; 61236133cb5SPeng Fan 6137c0277abSUwe Kleine-König gpt1: timer@302d0000 { 6147c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6157c0277abSUwe Kleine-König reg = <0x302d0000 0x10000>; 6167c0277abSUwe Kleine-König interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 6177c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT1_ROOT>, <&clk IMX8MP_CLK_GPT1>; 6187c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6197c0277abSUwe Kleine-König }; 6207c0277abSUwe Kleine-König 6217c0277abSUwe Kleine-König gpt2: timer@302e0000 { 6227c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6237c0277abSUwe Kleine-König reg = <0x302e0000 0x10000>; 6247c0277abSUwe Kleine-König interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 6257c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT2_ROOT>, <&clk IMX8MP_CLK_GPT2>; 6267c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6277c0277abSUwe Kleine-König }; 6287c0277abSUwe Kleine-König 6297c0277abSUwe Kleine-König gpt3: timer@302f0000 { 6307c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6317c0277abSUwe Kleine-König reg = <0x302f0000 0x10000>; 6327c0277abSUwe Kleine-König interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 6337c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT3_ROOT>, <&clk IMX8MP_CLK_GPT3>; 6347c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6357c0277abSUwe Kleine-König }; 6367c0277abSUwe Kleine-König 6376d9b8d20SAnson Huang iomuxc: pinctrl@30330000 { 6386d9b8d20SAnson Huang compatible = "fsl,imx8mp-iomuxc"; 6396d9b8d20SAnson Huang reg = <0x30330000 0x10000>; 6406d9b8d20SAnson Huang }; 6416d9b8d20SAnson Huang 642991679f7SPeng Fan gpr: syscon@30340000 { 6436d9b8d20SAnson Huang compatible = "fsl,imx8mp-iomuxc-gpr", "syscon"; 6446d9b8d20SAnson Huang reg = <0x30340000 0x10000>; 6456d9b8d20SAnson Huang }; 6466d9b8d20SAnson Huang 64712fa1078SAnson Huang ocotp: efuse@30350000 { 648f2fe45d5SAnson Huang compatible = "fsl,imx8mp-ocotp", "fsl,imx8mm-ocotp", "syscon"; 6496d9b8d20SAnson Huang reg = <0x30350000 0x10000>; 6506d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_OCOTP_ROOT>; 6516d9b8d20SAnson Huang /* For nvmem subnodes */ 6526d9b8d20SAnson Huang #address-cells = <1>; 6536d9b8d20SAnson Huang #size-cells = <1>; 6546d9b8d20SAnson Huang 6555b81a87dSMarek Vasut /* 6565b81a87dSMarek Vasut * The register address below maps to the MX8M 6575b81a87dSMarek Vasut * Fusemap Description Table entries this way. 6585b81a87dSMarek Vasut * Assuming 6595b81a87dSMarek Vasut * reg = <ADDR SIZE>; 6605b81a87dSMarek Vasut * then 6615b81a87dSMarek Vasut * Fuse Address = (ADDR * 4) + 0x400 6625b81a87dSMarek Vasut * Note that if SIZE is greater than 4, then 6635b81a87dSMarek Vasut * each subsequent fuse is located at offset 6645b81a87dSMarek Vasut * +0x10 in Fusemap Description Table (e.g. 6655b81a87dSMarek Vasut * reg = <0x8 0x8> describes fuses 0x420 and 6665b81a87dSMarek Vasut * 0x430). 6675b81a87dSMarek Vasut */ 6685b81a87dSMarek Vasut imx8mp_uid: unique-id@8 { /* 0x420-0x430 */ 669cbff2379SAlice Guo reg = <0x8 0x8>; 670cbff2379SAlice Guo }; 671cbff2379SAlice Guo 6725b81a87dSMarek Vasut cpu_speed_grade: speed-grade@10 { /* 0x440 */ 6736d9b8d20SAnson Huang reg = <0x10 4>; 6746d9b8d20SAnson Huang }; 675066438aeSJoakim Zhang 6765b81a87dSMarek Vasut eth_mac1: mac-address@90 { /* 0x640 */ 677066438aeSJoakim Zhang reg = <0x90 6>; 678066438aeSJoakim Zhang }; 67944d0dfeeSJoakim Zhang 6805b81a87dSMarek Vasut eth_mac2: mac-address@96 { /* 0x658 */ 68144d0dfeeSJoakim Zhang reg = <0x96 6>; 68244d0dfeeSJoakim Zhang }; 683105b9bb8SMarek Vasut 684105b9bb8SMarek Vasut tmu_calib: calib@264 { /* 0xd90-0xdc0 */ 685105b9bb8SMarek Vasut reg = <0x264 0x10>; 686105b9bb8SMarek Vasut }; 6876d9b8d20SAnson Huang }; 6886d9b8d20SAnson Huang 689f98c2dfeSPeng Fan anatop: clock-controller@30360000 { 690f98c2dfeSPeng Fan compatible = "fsl,imx8mp-anatop", "fsl,imx8mm-anatop"; 6916d9b8d20SAnson Huang reg = <0x30360000 0x10000>; 692f98c2dfeSPeng Fan #clock-cells = <1>; 6936d9b8d20SAnson Huang }; 6946d9b8d20SAnson Huang 6956d9b8d20SAnson Huang snvs: snvs@30370000 { 6966d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-mon","syscon", "simple-mfd"; 6976d9b8d20SAnson Huang reg = <0x30370000 0x10000>; 6986d9b8d20SAnson Huang 6996d9b8d20SAnson Huang snvs_rtc: snvs-rtc-lp { 7006d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-mon-rtc-lp"; 7016d9b8d20SAnson Huang regmap = <&snvs>; 7026d9b8d20SAnson Huang offset = <0x34>; 7036d9b8d20SAnson Huang interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 7046d9b8d20SAnson Huang <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 7056d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 7066d9b8d20SAnson Huang clock-names = "snvs-rtc"; 7076d9b8d20SAnson Huang }; 7086d9b8d20SAnson Huang 7096d9b8d20SAnson Huang snvs_pwrkey: snvs-powerkey { 7106d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-pwrkey"; 7116d9b8d20SAnson Huang regmap = <&snvs>; 7126d9b8d20SAnson Huang interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 7136c389f29SAnson Huang clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 7146c389f29SAnson Huang clock-names = "snvs-pwrkey"; 7156d9b8d20SAnson Huang linux,keycode = <KEY_POWER>; 7166d9b8d20SAnson Huang wakeup-source; 7176d9b8d20SAnson Huang status = "disabled"; 7186d9b8d20SAnson Huang }; 7194dcb6c0fSMarek Vasut 7204dcb6c0fSMarek Vasut snvs_lpgpr: snvs-lpgpr { 7214dcb6c0fSMarek Vasut compatible = "fsl,imx8mp-snvs-lpgpr", 7224dcb6c0fSMarek Vasut "fsl,imx7d-snvs-lpgpr"; 7234dcb6c0fSMarek Vasut }; 7246d9b8d20SAnson Huang }; 7256d9b8d20SAnson Huang 7266d9b8d20SAnson Huang clk: clock-controller@30380000 { 7276d9b8d20SAnson Huang compatible = "fsl,imx8mp-ccm"; 7286d9b8d20SAnson Huang reg = <0x30380000 0x10000>; 7296d9b8d20SAnson Huang #clock-cells = <1>; 7306d9b8d20SAnson Huang clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>, <&clk_ext2>, 7316d9b8d20SAnson Huang <&clk_ext3>, <&clk_ext4>; 7326d9b8d20SAnson Huang clock-names = "osc_32k", "osc_24m", "clk_ext1", "clk_ext2", 7336d9b8d20SAnson Huang "clk_ext3", "clk_ext4"; 7349e6337e6SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_A53_SRC>, 7359e6337e6SPeng Fan <&clk IMX8MP_CLK_A53_CORE>, 7369e6337e6SPeng Fan <&clk IMX8MP_CLK_NOC>, 7376d9b8d20SAnson Huang <&clk IMX8MP_CLK_NOC_IO>, 73816c98452SLucas Stach <&clk IMX8MP_CLK_GIC>; 7399e6337e6SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 7409e6337e6SPeng Fan <&clk IMX8MP_ARM_PLL_OUT>, 7419e6337e6SPeng Fan <&clk IMX8MP_SYS_PLL2_1000M>, 7426d9b8d20SAnson Huang <&clk IMX8MP_SYS_PLL1_800M>, 74316c98452SLucas Stach <&clk IMX8MP_SYS_PLL2_500M>; 7449e6337e6SPeng Fan assigned-clock-rates = <0>, <0>, 7459e6337e6SPeng Fan <1000000000>, 7466d9b8d20SAnson Huang <800000000>, 74716c98452SLucas Stach <500000000>; 7486d9b8d20SAnson Huang }; 749455ae0c3SAnson Huang 750455ae0c3SAnson Huang src: reset-controller@30390000 { 751455ae0c3SAnson Huang compatible = "fsl,imx8mp-src", "syscon"; 752455ae0c3SAnson Huang reg = <0x30390000 0x10000>; 7531641b234SAnson Huang interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 754455ae0c3SAnson Huang #reset-cells = <1>; 755455ae0c3SAnson Huang }; 756fc0f0512SLucas Stach 757fc0f0512SLucas Stach gpc: gpc@303a0000 { 758fc0f0512SLucas Stach compatible = "fsl,imx8mp-gpc"; 759fc0f0512SLucas Stach reg = <0x303a0000 0x1000>; 760fc0f0512SLucas Stach interrupt-parent = <&gic>; 761b3b75aceSAdam Ford interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 762fc0f0512SLucas Stach interrupt-controller; 763fc0f0512SLucas Stach #interrupt-cells = <3>; 764fc0f0512SLucas Stach 765fc0f0512SLucas Stach pgc { 766fc0f0512SLucas Stach #address-cells = <1>; 767fc0f0512SLucas Stach #size-cells = <0>; 768fc0f0512SLucas Stach 7699d89189dSLaurent Pinchart pgc_mipi_phy1: power-domain@0 { 7709d89189dSLaurent Pinchart #power-domain-cells = <0>; 7719d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY1>; 7729d89189dSLaurent Pinchart }; 7739d89189dSLaurent Pinchart 7742ae42e0cSLucas Stach pgc_pcie_phy: power-domain@1 { 7752ae42e0cSLucas Stach #power-domain-cells = <0>; 7762ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_PCIE_PHY>; 7772ae42e0cSLucas Stach }; 7782ae42e0cSLucas Stach 7792ae42e0cSLucas Stach pgc_usb1_phy: power-domain@2 { 7802ae42e0cSLucas Stach #power-domain-cells = <0>; 7812ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_USB1_PHY>; 7822ae42e0cSLucas Stach }; 7832ae42e0cSLucas Stach 7842ae42e0cSLucas Stach pgc_usb2_phy: power-domain@3 { 7852ae42e0cSLucas Stach #power-domain-cells = <0>; 7862ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_USB2_PHY>; 7872ae42e0cSLucas Stach }; 7882ae42e0cSLucas Stach 789b86c3afaSMarek Vasut pgc_audio: power-domain@5 { 790b86c3afaSMarek Vasut #power-domain-cells = <0>; 791b86c3afaSMarek Vasut reg = <IMX8MP_POWER_DOMAIN_AUDIOMIX>; 792b86c3afaSMarek Vasut clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 793b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_AXI>; 794b86c3afaSMarek Vasut }; 795b86c3afaSMarek Vasut 796fc0f0512SLucas Stach pgc_gpu2d: power-domain@6 { 797fc0f0512SLucas Stach #power-domain-cells = <0>; 798fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPU2D>; 799fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>; 800fc0f0512SLucas Stach power-domains = <&pgc_gpumix>; 801fc0f0512SLucas Stach }; 802fc0f0512SLucas Stach 803fc0f0512SLucas Stach pgc_gpumix: power-domain@7 { 804fc0f0512SLucas Stach #power-domain-cells = <0>; 805fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPUMIX>; 806fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU_ROOT>, 807fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 808fc0f0512SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU_AXI>, 809fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 810fc0f0512SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 811fc0f0512SLucas Stach <&clk IMX8MP_SYS_PLL1_800M>; 812fc0f0512SLucas Stach assigned-clock-rates = <800000000>, <400000000>; 813fc0f0512SLucas Stach }; 814fc0f0512SLucas Stach 815fc0f0512SLucas Stach pgc_gpu3d: power-domain@9 { 816fc0f0512SLucas Stach #power-domain-cells = <0>; 817fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPU3D>; 818fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 819fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 820fc0f0512SLucas Stach power-domains = <&pgc_gpumix>; 821fc0f0512SLucas Stach }; 8222ae42e0cSLucas Stach 8239d89189dSLaurent Pinchart pgc_mediamix: power-domain@10 { 8249d89189dSLaurent Pinchart #power-domain-cells = <0>; 8259d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX>; 8269d89189dSLaurent Pinchart clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 8279d89189dSLaurent Pinchart <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 8289d89189dSLaurent Pinchart }; 8299d89189dSLaurent Pinchart 8309d89189dSLaurent Pinchart pgc_mipi_phy2: power-domain@16 { 8319d89189dSLaurent Pinchart #power-domain-cells = <0>; 8329d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY2>; 8339d89189dSLaurent Pinchart }; 8349d89189dSLaurent Pinchart 83510e2f328SAdam Ford pgc_hsiomix: power-domain@17 { 8362ae42e0cSLucas Stach #power-domain-cells = <0>; 8372ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_HSIOMIX>; 8382ae42e0cSLucas Stach clocks = <&clk IMX8MP_CLK_HSIO_AXI>, 8392ae42e0cSLucas Stach <&clk IMX8MP_CLK_HSIO_ROOT>; 8402ae42e0cSLucas Stach assigned-clocks = <&clk IMX8MP_CLK_HSIO_AXI>; 8412ae42e0cSLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_500M>; 8422ae42e0cSLucas Stach assigned-clock-rates = <500000000>; 8432ae42e0cSLucas Stach }; 8449d89189dSLaurent Pinchart 8459d89189dSLaurent Pinchart pgc_ispdwp: power-domain@18 { 8469d89189dSLaurent Pinchart #power-domain-cells = <0>; 8479d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX_ISPDWP>; 8483fdd4ef4SPeng Fan clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>; 8499d89189dSLaurent Pinchart }; 850df680992SPeng Fan 851df680992SPeng Fan pgc_vpumix: power-domain@19 { 852df680992SPeng Fan #power-domain-cells = <0>; 853df680992SPeng Fan reg = <IMX8MP_POWER_DOMAIN_VPUMIX>; 854df680992SPeng Fan clocks = <&clk IMX8MP_CLK_VPU_ROOT>; 855df680992SPeng Fan }; 856df680992SPeng Fan 857df680992SPeng Fan pgc_vpu_g1: power-domain@20 { 858df680992SPeng Fan #power-domain-cells = <0>; 859df680992SPeng Fan power-domains = <&pgc_vpumix>; 860df680992SPeng Fan reg = <IMX8MP_POWER_DOMAIN_VPU_G1>; 861df680992SPeng Fan clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 862df680992SPeng Fan }; 863df680992SPeng Fan 864df680992SPeng Fan pgc_vpu_g2: power-domain@21 { 865df680992SPeng Fan #power-domain-cells = <0>; 866df680992SPeng Fan power-domains = <&pgc_vpumix>; 867df680992SPeng Fan reg = <IMX8MP_POWER_DOMAIN_VPU_G2>; 868df680992SPeng Fan clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 869df680992SPeng Fan }; 870df680992SPeng Fan 871df680992SPeng Fan pgc_vpu_vc8000e: power-domain@22 { 872df680992SPeng Fan #power-domain-cells = <0>; 873df680992SPeng Fan power-domains = <&pgc_vpumix>; 874df680992SPeng Fan reg = <IMX8MP_POWER_DOMAIN_VPU_VC8000E>; 875df680992SPeng Fan clocks = <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 876df680992SPeng Fan }; 877834464c8SPeng Fan 878834464c8SPeng Fan pgc_mlmix: power-domain@24 { 879834464c8SPeng Fan #power-domain-cells = <0>; 880834464c8SPeng Fan reg = <IMX8MP_POWER_DOMAIN_MLMIX>; 881834464c8SPeng Fan clocks = <&clk IMX8MP_CLK_ML_AXI>, 882834464c8SPeng Fan <&clk IMX8MP_CLK_ML_AHB>, 883834464c8SPeng Fan <&clk IMX8MP_CLK_NPU_ROOT>; 884834464c8SPeng Fan }; 885fc0f0512SLucas Stach }; 886fc0f0512SLucas Stach }; 8876d9b8d20SAnson Huang }; 8886d9b8d20SAnson Huang 8896d9b8d20SAnson Huang aips2: bus@30400000 { 890dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 891921a6845SFabio Estevam reg = <0x30400000 0x400000>; 8926d9b8d20SAnson Huang #address-cells = <1>; 8936d9b8d20SAnson Huang #size-cells = <1>; 8946d9b8d20SAnson Huang ranges; 8956d9b8d20SAnson Huang 8966d9b8d20SAnson Huang pwm1: pwm@30660000 { 8976d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 8986d9b8d20SAnson Huang reg = <0x30660000 0x10000>; 8996d9b8d20SAnson Huang interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 9006d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM1_ROOT>, 9016d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM1_ROOT>; 9026d9b8d20SAnson Huang clock-names = "ipg", "per"; 903d80b9c84SMarkus Niebel #pwm-cells = <3>; 9046d9b8d20SAnson Huang status = "disabled"; 9056d9b8d20SAnson Huang }; 9066d9b8d20SAnson Huang 9076d9b8d20SAnson Huang pwm2: pwm@30670000 { 9086d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9096d9b8d20SAnson Huang reg = <0x30670000 0x10000>; 9106d9b8d20SAnson Huang interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 9116d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM2_ROOT>, 9126d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM2_ROOT>; 9136d9b8d20SAnson Huang clock-names = "ipg", "per"; 914d80b9c84SMarkus Niebel #pwm-cells = <3>; 9156d9b8d20SAnson Huang status = "disabled"; 9166d9b8d20SAnson Huang }; 9176d9b8d20SAnson Huang 9186d9b8d20SAnson Huang pwm3: pwm@30680000 { 9196d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9206d9b8d20SAnson Huang reg = <0x30680000 0x10000>; 9216d9b8d20SAnson Huang interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 9226d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM3_ROOT>, 9236d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM3_ROOT>; 9246d9b8d20SAnson Huang clock-names = "ipg", "per"; 925d80b9c84SMarkus Niebel #pwm-cells = <3>; 9266d9b8d20SAnson Huang status = "disabled"; 9276d9b8d20SAnson Huang }; 9286d9b8d20SAnson Huang 9296d9b8d20SAnson Huang pwm4: pwm@30690000 { 9306d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9316d9b8d20SAnson Huang reg = <0x30690000 0x10000>; 9326d9b8d20SAnson Huang interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 9336d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM4_ROOT>, 9346d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM4_ROOT>; 9356d9b8d20SAnson Huang clock-names = "ipg", "per"; 936d80b9c84SMarkus Niebel #pwm-cells = <3>; 9376d9b8d20SAnson Huang status = "disabled"; 9386d9b8d20SAnson Huang }; 939fae58b1aSAnson Huang 940fae58b1aSAnson Huang system_counter: timer@306a0000 { 941fae58b1aSAnson Huang compatible = "nxp,sysctr-timer"; 942fae58b1aSAnson Huang reg = <0x306a0000 0x20000>; 943fae58b1aSAnson Huang interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 944fae58b1aSAnson Huang clocks = <&osc_24m>; 945fae58b1aSAnson Huang clock-names = "per"; 946fae58b1aSAnson Huang }; 9477c0277abSUwe Kleine-König 9487c0277abSUwe Kleine-König gpt6: timer@306e0000 { 9497c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 9507c0277abSUwe Kleine-König reg = <0x306e0000 0x10000>; 9517c0277abSUwe Kleine-König interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 9527c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT6_ROOT>, <&clk IMX8MP_CLK_GPT6>; 9537c0277abSUwe Kleine-König clock-names = "ipg", "per"; 9547c0277abSUwe Kleine-König }; 9557c0277abSUwe Kleine-König 9567c0277abSUwe Kleine-König gpt5: timer@306f0000 { 9577c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 9587c0277abSUwe Kleine-König reg = <0x306f0000 0x10000>; 9597c0277abSUwe Kleine-König interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 9607c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT5_ROOT>, <&clk IMX8MP_CLK_GPT5>; 9617c0277abSUwe Kleine-König clock-names = "ipg", "per"; 9627c0277abSUwe Kleine-König }; 9637c0277abSUwe Kleine-König 9647c0277abSUwe Kleine-König gpt4: timer@30700000 { 9657c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 9667c0277abSUwe Kleine-König reg = <0x30700000 0x10000>; 9677c0277abSUwe Kleine-König interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 9687c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT4_ROOT>, <&clk IMX8MP_CLK_GPT4>; 9697c0277abSUwe Kleine-König clock-names = "ipg", "per"; 9707c0277abSUwe Kleine-König }; 9716d9b8d20SAnson Huang }; 9726d9b8d20SAnson Huang 9736d9b8d20SAnson Huang aips3: bus@30800000 { 974dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 975921a6845SFabio Estevam reg = <0x30800000 0x400000>; 9766d9b8d20SAnson Huang #address-cells = <1>; 9776d9b8d20SAnson Huang #size-cells = <1>; 9786d9b8d20SAnson Huang ranges; 9796d9b8d20SAnson Huang 9809424e7f0SAdam Ford spba-bus@30800000 { 9819424e7f0SAdam Ford compatible = "fsl,spba-bus", "simple-bus"; 9829424e7f0SAdam Ford reg = <0x30800000 0x100000>; 9839424e7f0SAdam Ford #address-cells = <1>; 9849424e7f0SAdam Ford #size-cells = <1>; 9859424e7f0SAdam Ford ranges; 9869424e7f0SAdam Ford 9876d9b8d20SAnson Huang ecspi1: spi@30820000 { 9886d9b8d20SAnson Huang #address-cells = <1>; 9896d9b8d20SAnson Huang #size-cells = <0>; 99048d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 9916d9b8d20SAnson Huang reg = <0x30820000 0x10000>; 9926d9b8d20SAnson Huang interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 9936d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI1_ROOT>, 9946d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI1_ROOT>; 9956d9b8d20SAnson Huang clock-names = "ipg", "per"; 99648d74376SPeng Fan assigned-clock-rates = <80000000>; 99748d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI1>; 99848d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 9996d9b8d20SAnson Huang dmas = <&sdma1 0 7 1>, <&sdma1 1 7 2>; 10006d9b8d20SAnson Huang dma-names = "rx", "tx"; 10016d9b8d20SAnson Huang status = "disabled"; 10026d9b8d20SAnson Huang }; 10036d9b8d20SAnson Huang 10046d9b8d20SAnson Huang ecspi2: spi@30830000 { 10056d9b8d20SAnson Huang #address-cells = <1>; 10066d9b8d20SAnson Huang #size-cells = <0>; 100748d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 10086d9b8d20SAnson Huang reg = <0x30830000 0x10000>; 10096d9b8d20SAnson Huang interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 10106d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI2_ROOT>, 10116d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI2_ROOT>; 10126d9b8d20SAnson Huang clock-names = "ipg", "per"; 101348d74376SPeng Fan assigned-clock-rates = <80000000>; 101448d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI2>; 101548d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 10166d9b8d20SAnson Huang dmas = <&sdma1 2 7 1>, <&sdma1 3 7 2>; 10176d9b8d20SAnson Huang dma-names = "rx", "tx"; 10186d9b8d20SAnson Huang status = "disabled"; 10196d9b8d20SAnson Huang }; 10206d9b8d20SAnson Huang 10216d9b8d20SAnson Huang ecspi3: spi@30840000 { 10226d9b8d20SAnson Huang #address-cells = <1>; 10236d9b8d20SAnson Huang #size-cells = <0>; 102448d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 10256d9b8d20SAnson Huang reg = <0x30840000 0x10000>; 10266d9b8d20SAnson Huang interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 10276d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI3_ROOT>, 10286d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI3_ROOT>; 10296d9b8d20SAnson Huang clock-names = "ipg", "per"; 103048d74376SPeng Fan assigned-clock-rates = <80000000>; 103148d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI3>; 103248d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 10336d9b8d20SAnson Huang dmas = <&sdma1 4 7 1>, <&sdma1 5 7 2>; 10346d9b8d20SAnson Huang dma-names = "rx", "tx"; 10356d9b8d20SAnson Huang status = "disabled"; 10366d9b8d20SAnson Huang }; 10376d9b8d20SAnson Huang 10386d9b8d20SAnson Huang uart1: serial@30860000 { 10396d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 10406d9b8d20SAnson Huang reg = <0x30860000 0x10000>; 10416d9b8d20SAnson Huang interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 10426d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART1_ROOT>, 10436d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART1_ROOT>; 10446d9b8d20SAnson Huang clock-names = "ipg", "per"; 10456d9b8d20SAnson Huang dmas = <&sdma1 22 4 0>, <&sdma1 23 4 0>; 10466d9b8d20SAnson Huang dma-names = "rx", "tx"; 10476d9b8d20SAnson Huang status = "disabled"; 10486d9b8d20SAnson Huang }; 10496d9b8d20SAnson Huang 10506d9b8d20SAnson Huang uart3: serial@30880000 { 10516d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 10526d9b8d20SAnson Huang reg = <0x30880000 0x10000>; 10536d9b8d20SAnson Huang interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 10546d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART3_ROOT>, 10556d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART3_ROOT>; 10566d9b8d20SAnson Huang clock-names = "ipg", "per"; 10576d9b8d20SAnson Huang dmas = <&sdma1 26 4 0>, <&sdma1 27 4 0>; 10586d9b8d20SAnson Huang dma-names = "rx", "tx"; 10596d9b8d20SAnson Huang status = "disabled"; 10606d9b8d20SAnson Huang }; 10616d9b8d20SAnson Huang 10626d9b8d20SAnson Huang uart2: serial@30890000 { 10636d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 10646d9b8d20SAnson Huang reg = <0x30890000 0x10000>; 10656d9b8d20SAnson Huang interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 10666d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART2_ROOT>, 10676d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART2_ROOT>; 10686d9b8d20SAnson Huang clock-names = "ipg", "per"; 1069a00f1fa6SMarcel Ziswiler dmas = <&sdma1 24 4 0>, <&sdma1 25 4 0>; 1070a00f1fa6SMarcel Ziswiler dma-names = "rx", "tx"; 10716d9b8d20SAnson Huang status = "disabled"; 10726d9b8d20SAnson Huang }; 10736d9b8d20SAnson Huang 10743a7d56b3SJoakim Zhang flexcan1: can@308c0000 { 1075f5d156c7SJoakim Zhang compatible = "fsl,imx8mp-flexcan"; 10763a7d56b3SJoakim Zhang reg = <0x308c0000 0x10000>; 10773a7d56b3SJoakim Zhang interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 10783a7d56b3SJoakim Zhang clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 10793a7d56b3SJoakim Zhang <&clk IMX8MP_CLK_CAN1_ROOT>; 10803a7d56b3SJoakim Zhang clock-names = "ipg", "per"; 10813a7d56b3SJoakim Zhang assigned-clocks = <&clk IMX8MP_CLK_CAN1>; 10823a7d56b3SJoakim Zhang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 10833a7d56b3SJoakim Zhang assigned-clock-rates = <40000000>; 10843a7d56b3SJoakim Zhang fsl,clk-source = /bits/ 8 <0>; 10853a7d56b3SJoakim Zhang fsl,stop-mode = <&gpr 0x10 4>; 10863a7d56b3SJoakim Zhang status = "disabled"; 10873a7d56b3SJoakim Zhang }; 10883a7d56b3SJoakim Zhang 10893a7d56b3SJoakim Zhang flexcan2: can@308d0000 { 1090f5d156c7SJoakim Zhang compatible = "fsl,imx8mp-flexcan"; 10913a7d56b3SJoakim Zhang reg = <0x308d0000 0x10000>; 10923a7d56b3SJoakim Zhang interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 10933a7d56b3SJoakim Zhang clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 10943a7d56b3SJoakim Zhang <&clk IMX8MP_CLK_CAN2_ROOT>; 10953a7d56b3SJoakim Zhang clock-names = "ipg", "per"; 10963a7d56b3SJoakim Zhang assigned-clocks = <&clk IMX8MP_CLK_CAN2>; 10973a7d56b3SJoakim Zhang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 10983a7d56b3SJoakim Zhang assigned-clock-rates = <40000000>; 10993a7d56b3SJoakim Zhang fsl,clk-source = /bits/ 8 <0>; 11003a7d56b3SJoakim Zhang fsl,stop-mode = <&gpr 0x10 5>; 11013a7d56b3SJoakim Zhang status = "disabled"; 11023a7d56b3SJoakim Zhang }; 11039424e7f0SAdam Ford }; 11043a7d56b3SJoakim Zhang 1105d3a719e3SHoria Geantă crypto: crypto@30900000 { 1106d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0"; 1107d3a719e3SHoria Geantă #address-cells = <1>; 1108d3a719e3SHoria Geantă #size-cells = <1>; 1109d3a719e3SHoria Geantă reg = <0x30900000 0x40000>; 1110d3a719e3SHoria Geantă ranges = <0 0x30900000 0x40000>; 1111d3a719e3SHoria Geantă interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 1112d3a719e3SHoria Geantă clocks = <&clk IMX8MP_CLK_AHB>, 1113d3a719e3SHoria Geantă <&clk IMX8MP_CLK_IPG_ROOT>; 1114d3a719e3SHoria Geantă clock-names = "aclk", "ipg"; 1115d3a719e3SHoria Geantă 1116d3a719e3SHoria Geantă sec_jr0: jr@1000 { 1117d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1118d3a719e3SHoria Geantă reg = <0x1000 0x1000>; 1119d3a719e3SHoria Geantă interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 1120dc9c1cebSFabio Estevam status = "disabled"; 1121d3a719e3SHoria Geantă }; 1122d3a719e3SHoria Geantă 1123d3a719e3SHoria Geantă sec_jr1: jr@2000 { 1124d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1125d3a719e3SHoria Geantă reg = <0x2000 0x1000>; 1126d3a719e3SHoria Geantă interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 1127d3a719e3SHoria Geantă }; 1128d3a719e3SHoria Geantă 1129d3a719e3SHoria Geantă sec_jr2: jr@3000 { 1130d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1131d3a719e3SHoria Geantă reg = <0x3000 0x1000>; 1132d3a719e3SHoria Geantă interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 1133d3a719e3SHoria Geantă }; 1134d3a719e3SHoria Geantă }; 1135d3a719e3SHoria Geantă 11366d9b8d20SAnson Huang i2c1: i2c@30a20000 { 11376d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11386d9b8d20SAnson Huang #address-cells = <1>; 11396d9b8d20SAnson Huang #size-cells = <0>; 11406d9b8d20SAnson Huang reg = <0x30a20000 0x10000>; 11416d9b8d20SAnson Huang interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 11426d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C1_ROOT>; 11436d9b8d20SAnson Huang status = "disabled"; 11446d9b8d20SAnson Huang }; 11456d9b8d20SAnson Huang 11466d9b8d20SAnson Huang i2c2: i2c@30a30000 { 11476d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11486d9b8d20SAnson Huang #address-cells = <1>; 11496d9b8d20SAnson Huang #size-cells = <0>; 11506d9b8d20SAnson Huang reg = <0x30a30000 0x10000>; 11516d9b8d20SAnson Huang interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 11526d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C2_ROOT>; 11536d9b8d20SAnson Huang status = "disabled"; 11546d9b8d20SAnson Huang }; 11556d9b8d20SAnson Huang 11566d9b8d20SAnson Huang i2c3: i2c@30a40000 { 11576d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11586d9b8d20SAnson Huang #address-cells = <1>; 11596d9b8d20SAnson Huang #size-cells = <0>; 11606d9b8d20SAnson Huang reg = <0x30a40000 0x10000>; 11616d9b8d20SAnson Huang interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 11626d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C3_ROOT>; 11636d9b8d20SAnson Huang status = "disabled"; 11646d9b8d20SAnson Huang }; 11656d9b8d20SAnson Huang 11666d9b8d20SAnson Huang i2c4: i2c@30a50000 { 11676d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11686d9b8d20SAnson Huang #address-cells = <1>; 11696d9b8d20SAnson Huang #size-cells = <0>; 11706d9b8d20SAnson Huang reg = <0x30a50000 0x10000>; 11716d9b8d20SAnson Huang interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 11726d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C4_ROOT>; 11736d9b8d20SAnson Huang status = "disabled"; 11746d9b8d20SAnson Huang }; 11756d9b8d20SAnson Huang 11766d9b8d20SAnson Huang uart4: serial@30a60000 { 11776d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 11786d9b8d20SAnson Huang reg = <0x30a60000 0x10000>; 11796d9b8d20SAnson Huang interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 11806d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART4_ROOT>, 11816d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART4_ROOT>; 11826d9b8d20SAnson Huang clock-names = "ipg", "per"; 11836d9b8d20SAnson Huang dmas = <&sdma1 28 4 0>, <&sdma1 29 4 0>; 11846d9b8d20SAnson Huang dma-names = "rx", "tx"; 11856d9b8d20SAnson Huang status = "disabled"; 11866d9b8d20SAnson Huang }; 11876d9b8d20SAnson Huang 1188bbfc59beSPeng Fan mu: mailbox@30aa0000 { 1189bbfc59beSPeng Fan compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1190bbfc59beSPeng Fan reg = <0x30aa0000 0x10000>; 1191bbfc59beSPeng Fan interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 1192bbfc59beSPeng Fan clocks = <&clk IMX8MP_CLK_MU_ROOT>; 1193bbfc59beSPeng Fan #mbox-cells = <2>; 1194bbfc59beSPeng Fan }; 1195bbfc59beSPeng Fan 1196bc3ab388SDaniel Baluta mu2: mailbox@30e60000 { 1197bc3ab388SDaniel Baluta compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1198bc3ab388SDaniel Baluta reg = <0x30e60000 0x10000>; 1199bc3ab388SDaniel Baluta interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 1200bc3ab388SDaniel Baluta #mbox-cells = <2>; 1201bc3ab388SDaniel Baluta status = "disabled"; 1202bc3ab388SDaniel Baluta }; 1203bc3ab388SDaniel Baluta 12046d9b8d20SAnson Huang i2c5: i2c@30ad0000 { 12056d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 12066d9b8d20SAnson Huang #address-cells = <1>; 12076d9b8d20SAnson Huang #size-cells = <0>; 12086d9b8d20SAnson Huang reg = <0x30ad0000 0x10000>; 12096d9b8d20SAnson Huang interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 12106d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C5_ROOT>; 12116d9b8d20SAnson Huang status = "disabled"; 12126d9b8d20SAnson Huang }; 12136d9b8d20SAnson Huang 12146d9b8d20SAnson Huang i2c6: i2c@30ae0000 { 12156d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 12166d9b8d20SAnson Huang #address-cells = <1>; 12176d9b8d20SAnson Huang #size-cells = <0>; 12186d9b8d20SAnson Huang reg = <0x30ae0000 0x10000>; 12196d9b8d20SAnson Huang interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 12206d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C6_ROOT>; 12216d9b8d20SAnson Huang status = "disabled"; 12226d9b8d20SAnson Huang }; 12236d9b8d20SAnson Huang 12246d9b8d20SAnson Huang usdhc1: mmc@30b40000 { 1225746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12266d9b8d20SAnson Huang reg = <0x30b40000 0x10000>; 12276d9b8d20SAnson Huang interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 12286d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_DUMMY>, 12296d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12306d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC1_ROOT>; 12316d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12326d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12336d9b8d20SAnson Huang fsl,tuning-step = <2>; 12346d9b8d20SAnson Huang bus-width = <4>; 12356d9b8d20SAnson Huang status = "disabled"; 12366d9b8d20SAnson Huang }; 12376d9b8d20SAnson Huang 12386d9b8d20SAnson Huang usdhc2: mmc@30b50000 { 1239746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12406d9b8d20SAnson Huang reg = <0x30b50000 0x10000>; 12416d9b8d20SAnson Huang interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 12426d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_DUMMY>, 12436d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12446d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC2_ROOT>; 12456d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12466d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12476d9b8d20SAnson Huang fsl,tuning-step = <2>; 12486d9b8d20SAnson Huang bus-width = <4>; 12496d9b8d20SAnson Huang status = "disabled"; 12506d9b8d20SAnson Huang }; 12516d9b8d20SAnson Huang 12526d9b8d20SAnson Huang usdhc3: mmc@30b60000 { 1253746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12546d9b8d20SAnson Huang reg = <0x30b60000 0x10000>; 12556d9b8d20SAnson Huang interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 12566d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_DUMMY>, 12576d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12586d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC3_ROOT>; 12596d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12606d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12616d9b8d20SAnson Huang fsl,tuning-step = <2>; 12626d9b8d20SAnson Huang bus-width = <4>; 12636d9b8d20SAnson Huang status = "disabled"; 12646d9b8d20SAnson Huang }; 12656d9b8d20SAnson Huang 12666914d1baSHeiko Schocher flexspi: spi@30bb0000 { 12676914d1baSHeiko Schocher compatible = "nxp,imx8mp-fspi"; 12686914d1baSHeiko Schocher reg = <0x30bb0000 0x10000>, <0x8000000 0x10000000>; 12696914d1baSHeiko Schocher reg-names = "fspi_base", "fspi_mmap"; 12706914d1baSHeiko Schocher interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 12716914d1baSHeiko Schocher clocks = <&clk IMX8MP_CLK_QSPI_ROOT>, 12726914d1baSHeiko Schocher <&clk IMX8MP_CLK_QSPI_ROOT>; 1273d7cd7446SKuldeep Singh clock-names = "fspi_en", "fspi"; 12746914d1baSHeiko Schocher assigned-clock-rates = <80000000>; 12756914d1baSHeiko Schocher assigned-clocks = <&clk IMX8MP_CLK_QSPI>; 12766914d1baSHeiko Schocher #address-cells = <1>; 12776914d1baSHeiko Schocher #size-cells = <0>; 12786914d1baSHeiko Schocher status = "disabled"; 12796914d1baSHeiko Schocher }; 12806914d1baSHeiko Schocher 12816d9b8d20SAnson Huang sdma1: dma-controller@30bd0000 { 12826d9b8d20SAnson Huang compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 12836d9b8d20SAnson Huang reg = <0x30bd0000 0x10000>; 12846d9b8d20SAnson Huang interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 12856d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_SDMA1_ROOT>, 128666138621SRobin Gong <&clk IMX8MP_CLK_AHB>; 12876d9b8d20SAnson Huang clock-names = "ipg", "ahb"; 12886d9b8d20SAnson Huang #dma-cells = <3>; 12896d9b8d20SAnson Huang fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 12906d9b8d20SAnson Huang }; 12916d9b8d20SAnson Huang 12926d9b8d20SAnson Huang fec: ethernet@30be0000 { 1293f9654d26SFugang Duan compatible = "fsl,imx8mp-fec", "fsl,imx8mq-fec", "fsl,imx6sx-fec"; 12946d9b8d20SAnson Huang reg = <0x30be0000 0x10000>; 12956d9b8d20SAnson Huang interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 12966d9b8d20SAnson Huang <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 1297d3762a47SFabio Estevam <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 1298d3762a47SFabio Estevam <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 12996d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ENET1_ROOT>, 13006d9b8d20SAnson Huang <&clk IMX8MP_CLK_SIM_ENET_ROOT>, 13016d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_TIMER>, 13026d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_REF>, 13036d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_PHY_REF>; 13046d9b8d20SAnson Huang clock-names = "ipg", "ahb", "ptp", 13056d9b8d20SAnson Huang "enet_clk_ref", "enet_out"; 13066d9b8d20SAnson Huang assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 13076d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_TIMER>, 13086d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_REF>, 130970eacf42SJoakim Zhang <&clk IMX8MP_CLK_ENET_PHY_REF>; 13106d9b8d20SAnson Huang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 13116d9b8d20SAnson Huang <&clk IMX8MP_SYS_PLL2_100M>, 131270eacf42SJoakim Zhang <&clk IMX8MP_SYS_PLL2_125M>, 131370eacf42SJoakim Zhang <&clk IMX8MP_SYS_PLL2_50M>; 131470eacf42SJoakim Zhang assigned-clock-rates = <0>, <100000000>, <125000000>, <0>; 13156d9b8d20SAnson Huang fsl,num-tx-queues = <3>; 13166d9b8d20SAnson Huang fsl,num-rx-queues = <3>; 1317066438aeSJoakim Zhang nvmem-cells = <ð_mac1>; 1318066438aeSJoakim Zhang nvmem-cell-names = "mac-address"; 1319afe99354SJoakim Zhang fsl,stop-mode = <&gpr 0x10 3>; 13206d9b8d20SAnson Huang status = "disabled"; 13216d9b8d20SAnson Huang }; 1322ec4d1196SMarek Vasut 1323ec4d1196SMarek Vasut eqos: ethernet@30bf0000 { 1324ec4d1196SMarek Vasut compatible = "nxp,imx8mp-dwmac-eqos", "snps,dwmac-5.10a"; 1325ec4d1196SMarek Vasut reg = <0x30bf0000 0x10000>; 132677e5253dSJoakim Zhang interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 132777e5253dSJoakim Zhang <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 132877e5253dSJoakim Zhang interrupt-names = "macirq", "eth_wake_irq"; 1329ec4d1196SMarek Vasut clocks = <&clk IMX8MP_CLK_ENET_QOS_ROOT>, 1330ec4d1196SMarek Vasut <&clk IMX8MP_CLK_QOS_ENET_ROOT>, 1331ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 1332ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS>; 1333ec4d1196SMarek Vasut clock-names = "stmmaceth", "pclk", "ptp_ref", "tx"; 1334ec4d1196SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 1335ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 1336ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS>; 1337ec4d1196SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 1338ec4d1196SMarek Vasut <&clk IMX8MP_SYS_PLL2_100M>, 1339ec4d1196SMarek Vasut <&clk IMX8MP_SYS_PLL2_125M>; 1340ec4d1196SMarek Vasut assigned-clock-rates = <0>, <100000000>, <125000000>; 134144d0dfeeSJoakim Zhang nvmem-cells = <ð_mac2>; 134244d0dfeeSJoakim Zhang nvmem-cell-names = "mac-address"; 1343ec4d1196SMarek Vasut intf_mode = <&gpr 0x4>; 1344ec4d1196SMarek Vasut status = "disabled"; 1345ec4d1196SMarek Vasut }; 13466d9b8d20SAnson Huang }; 13476d9b8d20SAnson Huang 1348b86c3afaSMarek Vasut aips5: bus@30c00000 { 1349b86c3afaSMarek Vasut compatible = "fsl,aips-bus", "simple-bus"; 1350b86c3afaSMarek Vasut reg = <0x30c00000 0x400000>; 1351b86c3afaSMarek Vasut #address-cells = <1>; 1352b86c3afaSMarek Vasut #size-cells = <1>; 1353b86c3afaSMarek Vasut ranges; 1354b86c3afaSMarek Vasut 1355b86c3afaSMarek Vasut spba-bus@30c00000 { 1356b86c3afaSMarek Vasut compatible = "fsl,spba-bus", "simple-bus"; 1357b86c3afaSMarek Vasut reg = <0x30c00000 0x100000>; 1358b86c3afaSMarek Vasut #address-cells = <1>; 1359b86c3afaSMarek Vasut #size-cells = <1>; 1360b86c3afaSMarek Vasut ranges; 1361b86c3afaSMarek Vasut 1362b86c3afaSMarek Vasut sai1: sai@30c10000 { 1363b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1364b86c3afaSMarek Vasut reg = <0x30c10000 0x10000>; 1365b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1366b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_IPG>, 1367b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1368b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>, 1369b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK2>, 1370b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK3>; 1371b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1372b86c3afaSMarek Vasut dmas = <&sdma2 0 2 0>, <&sdma2 1 2 0>; 1373b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1374b86c3afaSMarek Vasut interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 1375b86c3afaSMarek Vasut status = "disabled"; 1376b86c3afaSMarek Vasut }; 1377b86c3afaSMarek Vasut 1378b86c3afaSMarek Vasut sai2: sai@30c20000 { 1379b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1380b86c3afaSMarek Vasut reg = <0x30c20000 0x10000>; 1381b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1382b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_IPG>, 1383b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1384b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK1>, 1385b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK2>, 1386b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK3>; 1387b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1388b86c3afaSMarek Vasut dmas = <&sdma2 2 2 0>, <&sdma2 3 2 0>; 1389b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1390b86c3afaSMarek Vasut interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 1391b86c3afaSMarek Vasut status = "disabled"; 1392b86c3afaSMarek Vasut }; 1393b86c3afaSMarek Vasut 1394b86c3afaSMarek Vasut sai3: sai@30c30000 { 1395b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1396b86c3afaSMarek Vasut reg = <0x30c30000 0x10000>; 1397b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1398b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_IPG>, 1399b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1400b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>, 1401b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK2>, 1402b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK3>; 1403b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1404b86c3afaSMarek Vasut dmas = <&sdma2 4 2 0>, <&sdma2 5 2 0>; 1405b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1406b86c3afaSMarek Vasut interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 1407b86c3afaSMarek Vasut status = "disabled"; 1408b86c3afaSMarek Vasut }; 1409b86c3afaSMarek Vasut 1410b86c3afaSMarek Vasut sai5: sai@30c50000 { 1411b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1412b86c3afaSMarek Vasut reg = <0x30c50000 0x10000>; 1413b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1414b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_IPG>, 1415b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1416b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK1>, 1417b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK2>, 1418b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK3>; 1419b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1420b86c3afaSMarek Vasut dmas = <&sdma2 8 2 0>, <&sdma2 9 2 0>; 1421b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1422b86c3afaSMarek Vasut interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1423b86c3afaSMarek Vasut status = "disabled"; 1424b86c3afaSMarek Vasut }; 1425b86c3afaSMarek Vasut 1426b86c3afaSMarek Vasut sai6: sai@30c60000 { 1427b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1428b86c3afaSMarek Vasut reg = <0x30c60000 0x10000>; 1429b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1430b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_IPG>, 1431b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1432b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK1>, 1433b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK2>, 1434b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK3>; 1435b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1436b86c3afaSMarek Vasut dmas = <&sdma2 10 2 0>, <&sdma2 11 2 0>; 1437b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1438b86c3afaSMarek Vasut interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1439b86c3afaSMarek Vasut status = "disabled"; 1440b86c3afaSMarek Vasut }; 1441b86c3afaSMarek Vasut 1442b86c3afaSMarek Vasut sai7: sai@30c80000 { 1443b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1444b86c3afaSMarek Vasut reg = <0x30c80000 0x10000>; 1445b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1446b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_IPG>, 1447b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1448b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK1>, 1449b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK2>, 1450b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK3>; 1451b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1452b86c3afaSMarek Vasut dmas = <&sdma2 12 2 0>, <&sdma2 13 2 0>; 1453b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1454b86c3afaSMarek Vasut interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 1455b86c3afaSMarek Vasut status = "disabled"; 1456b86c3afaSMarek Vasut }; 145737e7b418SAdam Ford 145837e7b418SAdam Ford easrc: easrc@30c90000 { 145937e7b418SAdam Ford compatible = "fsl,imx8mp-easrc", "fsl,imx8mn-easrc"; 146037e7b418SAdam Ford reg = <0x30c90000 0x10000>; 146137e7b418SAdam Ford interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 146237e7b418SAdam Ford clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_ASRC_IPG>; 146337e7b418SAdam Ford clock-names = "mem"; 146437e7b418SAdam Ford dmas = <&sdma2 16 23 0> , <&sdma2 17 23 0>, 146537e7b418SAdam Ford <&sdma2 18 23 0> , <&sdma2 19 23 0>, 146637e7b418SAdam Ford <&sdma2 20 23 0> , <&sdma2 21 23 0>, 146737e7b418SAdam Ford <&sdma2 22 23 0> , <&sdma2 23 23 0>; 146837e7b418SAdam Ford dma-names = "ctx0_rx", "ctx0_tx", 146937e7b418SAdam Ford "ctx1_rx", "ctx1_tx", 147037e7b418SAdam Ford "ctx2_rx", "ctx2_tx", 147137e7b418SAdam Ford "ctx3_rx", "ctx3_tx"; 147237e7b418SAdam Ford firmware-name = "imx/easrc/easrc-imx8mn.bin"; 147337e7b418SAdam Ford fsl,asrc-rate = <8000>; 147437e7b418SAdam Ford fsl,asrc-format = <2>; 147537e7b418SAdam Ford status = "disabled"; 147637e7b418SAdam Ford }; 14775c6d04e4SAdam Ford 14785c6d04e4SAdam Ford micfil: audio-controller@30ca0000 { 14795c6d04e4SAdam Ford compatible = "fsl,imx8mp-micfil"; 14805c6d04e4SAdam Ford reg = <0x30ca0000 0x10000>; 14815c6d04e4SAdam Ford #sound-dai-cells = <0>; 14825c6d04e4SAdam Ford interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 14835c6d04e4SAdam Ford <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 14845c6d04e4SAdam Ford <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 14855c6d04e4SAdam Ford <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 14865c6d04e4SAdam Ford clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_IPG>, 14875c6d04e4SAdam Ford <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_SEL>, 14885c6d04e4SAdam Ford <&clk IMX8MP_AUDIO_PLL1_OUT>, 14895c6d04e4SAdam Ford <&clk IMX8MP_AUDIO_PLL2_OUT>, 14905c6d04e4SAdam Ford <&clk IMX8MP_CLK_EXT3>; 14915c6d04e4SAdam Ford clock-names = "ipg_clk", "ipg_clk_app", 14925c6d04e4SAdam Ford "pll8k", "pll11k", "clkext3"; 14935c6d04e4SAdam Ford dmas = <&sdma2 24 25 0x80000000>; 14945c6d04e4SAdam Ford dma-names = "rx"; 14955c6d04e4SAdam Ford status = "disabled"; 14965c6d04e4SAdam Ford }; 14975c6d04e4SAdam Ford 1498b86c3afaSMarek Vasut }; 1499b86c3afaSMarek Vasut 1500b86c3afaSMarek Vasut sdma3: dma-controller@30e00000 { 1501b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1502b86c3afaSMarek Vasut reg = <0x30e00000 0x10000>; 1503b86c3afaSMarek Vasut #dma-cells = <3>; 1504b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA3_ROOT>, 1505b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_ROOT>; 1506b86c3afaSMarek Vasut clock-names = "ipg", "ahb"; 1507b86c3afaSMarek Vasut interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 1508b86c3afaSMarek Vasut fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1509b86c3afaSMarek Vasut }; 1510b86c3afaSMarek Vasut 1511b86c3afaSMarek Vasut sdma2: dma-controller@30e10000 { 1512b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1513b86c3afaSMarek Vasut reg = <0x30e10000 0x10000>; 1514b86c3afaSMarek Vasut #dma-cells = <3>; 1515b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA2_ROOT>, 1516b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_ROOT>; 1517b86c3afaSMarek Vasut clock-names = "ipg", "ahb"; 1518b86c3afaSMarek Vasut interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 1519b86c3afaSMarek Vasut fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1520b86c3afaSMarek Vasut }; 1521b86c3afaSMarek Vasut 1522b86c3afaSMarek Vasut audio_blk_ctrl: clock-controller@30e20000 { 1523b86c3afaSMarek Vasut compatible = "fsl,imx8mp-audio-blk-ctrl"; 1524b86c3afaSMarek Vasut reg = <0x30e20000 0x10000>; 1525b86c3afaSMarek Vasut #clock-cells = <1>; 1526b86c3afaSMarek Vasut clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 1527b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI1>, 1528b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI2>, 1529b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI3>, 1530b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI5>, 1531b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI6>, 1532b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI7>; 1533b86c3afaSMarek Vasut clock-names = "ahb", 1534b86c3afaSMarek Vasut "sai1", "sai2", "sai3", 1535b86c3afaSMarek Vasut "sai5", "sai6", "sai7"; 1536b86c3afaSMarek Vasut power-domains = <&pgc_audio>; 1537b86c3afaSMarek Vasut }; 1538b86c3afaSMarek Vasut }; 1539b86c3afaSMarek Vasut 1540d4ac6028SPeng Fan noc: interconnect@32700000 { 1541d4ac6028SPeng Fan compatible = "fsl,imx8mp-noc", "fsl,imx8m-noc"; 1542d4ac6028SPeng Fan reg = <0x32700000 0x100000>; 1543d4ac6028SPeng Fan clocks = <&clk IMX8MP_CLK_NOC>; 1544d4ac6028SPeng Fan #interconnect-cells = <1>; 1545d4ac6028SPeng Fan operating-points-v2 = <&noc_opp_table>; 1546d4ac6028SPeng Fan 1547d4ac6028SPeng Fan noc_opp_table: opp-table { 1548d4ac6028SPeng Fan compatible = "operating-points-v2"; 1549d4ac6028SPeng Fan 15500c068a36SMarek Vasut opp-200000000 { 1551d4ac6028SPeng Fan opp-hz = /bits/ 64 <200000000>; 1552d4ac6028SPeng Fan }; 1553d4ac6028SPeng Fan 15540c068a36SMarek Vasut opp-1000000000 { 1555d4ac6028SPeng Fan opp-hz = /bits/ 64 <1000000000>; 1556d4ac6028SPeng Fan }; 1557d4ac6028SPeng Fan }; 1558d4ac6028SPeng Fan }; 1559d4ac6028SPeng Fan 15602ae42e0cSLucas Stach aips4: bus@32c00000 { 15612ae42e0cSLucas Stach compatible = "fsl,aips-bus", "simple-bus"; 15622ae42e0cSLucas Stach reg = <0x32c00000 0x400000>; 15632ae42e0cSLucas Stach #address-cells = <1>; 15642ae42e0cSLucas Stach #size-cells = <1>; 15652ae42e0cSLucas Stach ranges; 15662ae42e0cSLucas Stach 15670275a471SMarek Vasut isi_0: isi@32e00000 { 15680275a471SMarek Vasut compatible = "fsl,imx8mp-isi"; 15690275a471SMarek Vasut reg = <0x32e00000 0x4000>; 15700275a471SMarek Vasut interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 15710275a471SMarek Vasut <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 15720275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 15730275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 15740275a471SMarek Vasut clock-names = "axi", "apb"; 15750275a471SMarek Vasut fsl,blk-ctrl = <&media_blk_ctrl>; 15760275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISI>; 15770275a471SMarek Vasut status = "disabled"; 15780275a471SMarek Vasut 15790275a471SMarek Vasut ports { 15800275a471SMarek Vasut #address-cells = <1>; 15810275a471SMarek Vasut #size-cells = <0>; 15820275a471SMarek Vasut 15830275a471SMarek Vasut port@0 { 15840275a471SMarek Vasut reg = <0>; 15850275a471SMarek Vasut 15860275a471SMarek Vasut isi_in_0: endpoint { 15870275a471SMarek Vasut remote-endpoint = <&mipi_csi_0_out>; 15880275a471SMarek Vasut }; 15890275a471SMarek Vasut }; 15900275a471SMarek Vasut 15910275a471SMarek Vasut port@1 { 15920275a471SMarek Vasut reg = <1>; 15930275a471SMarek Vasut 15940275a471SMarek Vasut isi_in_1: endpoint { 15950275a471SMarek Vasut remote-endpoint = <&mipi_csi_1_out>; 15960275a471SMarek Vasut }; 15970275a471SMarek Vasut }; 15980275a471SMarek Vasut }; 15990275a471SMarek Vasut }; 16000275a471SMarek Vasut 16010c45fb7fSMarek Vasut dewarp: dwe@32e30000 { 16020c45fb7fSMarek Vasut compatible = "nxp,imx8mp-dw100"; 16030c45fb7fSMarek Vasut reg = <0x32e30000 0x10000>; 16040c45fb7fSMarek Vasut interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 16050c45fb7fSMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 16060c45fb7fSMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 16070c45fb7fSMarek Vasut clock-names = "axi", "ahb"; 16080c45fb7fSMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_DWE>; 16090c45fb7fSMarek Vasut }; 16100c45fb7fSMarek Vasut 16110275a471SMarek Vasut mipi_csi_0: csi@32e40000 { 16120275a471SMarek Vasut compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 16130275a471SMarek Vasut reg = <0x32e40000 0x10000>; 16140275a471SMarek Vasut interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 16150275a471SMarek Vasut clock-frequency = <500000000>; 16160275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 16170275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 16180275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 16190275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 16200275a471SMarek Vasut clock-names = "pclk", "wrap", "phy", "axi"; 16210275a471SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM1_PIX>; 16220275a471SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>; 16230275a471SMarek Vasut assigned-clock-rates = <500000000>; 16240275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_1>; 16250275a471SMarek Vasut status = "disabled"; 16260275a471SMarek Vasut 16270275a471SMarek Vasut ports { 16280275a471SMarek Vasut #address-cells = <1>; 16290275a471SMarek Vasut #size-cells = <0>; 16300275a471SMarek Vasut 16310275a471SMarek Vasut port@0 { 16320275a471SMarek Vasut reg = <0>; 16330275a471SMarek Vasut }; 16340275a471SMarek Vasut 16350275a471SMarek Vasut port@1 { 16360275a471SMarek Vasut reg = <1>; 16370275a471SMarek Vasut 16380275a471SMarek Vasut mipi_csi_0_out: endpoint { 16390275a471SMarek Vasut remote-endpoint = <&isi_in_0>; 16400275a471SMarek Vasut }; 16410275a471SMarek Vasut }; 16420275a471SMarek Vasut }; 16430275a471SMarek Vasut }; 16440275a471SMarek Vasut 16450275a471SMarek Vasut mipi_csi_1: csi@32e50000 { 16460275a471SMarek Vasut compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 16470275a471SMarek Vasut reg = <0x32e50000 0x10000>; 16480275a471SMarek Vasut interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 16490275a471SMarek Vasut clock-frequency = <266000000>; 16500275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 16510275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 16520275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 16530275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 16540275a471SMarek Vasut clock-names = "pclk", "wrap", "phy", "axi"; 16550275a471SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM2_PIX>; 16560275a471SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>; 16570275a471SMarek Vasut assigned-clock-rates = <266000000>; 16580275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_2>; 16590275a471SMarek Vasut status = "disabled"; 16600275a471SMarek Vasut 16610275a471SMarek Vasut ports { 16620275a471SMarek Vasut #address-cells = <1>; 16630275a471SMarek Vasut #size-cells = <0>; 16640275a471SMarek Vasut 16650275a471SMarek Vasut port@0 { 16660275a471SMarek Vasut reg = <0>; 16670275a471SMarek Vasut }; 16680275a471SMarek Vasut 16690275a471SMarek Vasut port@1 { 16700275a471SMarek Vasut reg = <1>; 16710275a471SMarek Vasut 16720275a471SMarek Vasut mipi_csi_1_out: endpoint { 16730275a471SMarek Vasut remote-endpoint = <&isi_in_1>; 16740275a471SMarek Vasut }; 16750275a471SMarek Vasut }; 16760275a471SMarek Vasut }; 16770275a471SMarek Vasut }; 16780275a471SMarek Vasut 1679eda09fe1SMarek Vasut mipi_dsi: dsi@32e60000 { 1680eda09fe1SMarek Vasut compatible = "fsl,imx8mp-mipi-dsim"; 1681eda09fe1SMarek Vasut reg = <0x32e60000 0x400>; 1682eda09fe1SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1683eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1684eda09fe1SMarek Vasut clock-names = "bus_clk", "sclk_mipi"; 1685eda09fe1SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_MEDIA_APB>, 1686eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1687eda09fe1SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 1688eda09fe1SMarek Vasut <&clk IMX8MP_CLK_24M>; 1689eda09fe1SMarek Vasut assigned-clock-rates = <200000000>, <24000000>; 1690eda09fe1SMarek Vasut samsung,pll-clock-frequency = <24000000>; 1691eda09fe1SMarek Vasut interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 1692eda09fe1SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_DSI_1>; 1693eda09fe1SMarek Vasut status = "disabled"; 1694eda09fe1SMarek Vasut 1695eda09fe1SMarek Vasut ports { 1696eda09fe1SMarek Vasut #address-cells = <1>; 1697eda09fe1SMarek Vasut #size-cells = <0>; 1698eda09fe1SMarek Vasut 1699eda09fe1SMarek Vasut port@0 { 1700eda09fe1SMarek Vasut reg = <0>; 1701eda09fe1SMarek Vasut 1702eda09fe1SMarek Vasut dsim_from_lcdif1: endpoint { 1703eda09fe1SMarek Vasut remote-endpoint = <&lcdif1_to_dsim>; 1704eda09fe1SMarek Vasut }; 1705eda09fe1SMarek Vasut }; 1706eda09fe1SMarek Vasut }; 1707eda09fe1SMarek Vasut }; 1708eda09fe1SMarek Vasut 1709eda09fe1SMarek Vasut lcdif1: display-controller@32e80000 { 1710eda09fe1SMarek Vasut compatible = "fsl,imx8mp-lcdif"; 1711eda09fe1SMarek Vasut reg = <0x32e80000 0x10000>; 1712eda09fe1SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 1713eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1714eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1715eda09fe1SMarek Vasut clock-names = "pix", "axi", "disp_axi"; 1716eda09fe1SMarek Vasut interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 1717eda09fe1SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_1>; 1718eda09fe1SMarek Vasut status = "disabled"; 1719eda09fe1SMarek Vasut 1720eda09fe1SMarek Vasut port { 1721eda09fe1SMarek Vasut lcdif1_to_dsim: endpoint { 1722eda09fe1SMarek Vasut remote-endpoint = <&dsim_from_lcdif1>; 1723eda09fe1SMarek Vasut }; 1724eda09fe1SMarek Vasut }; 1725eda09fe1SMarek Vasut }; 1726eda09fe1SMarek Vasut 172794e6197dSAlexander Stein lcdif2: display-controller@32e90000 { 172894e6197dSAlexander Stein compatible = "fsl,imx8mp-lcdif"; 1729c355d913SAlexander Stein reg = <0x32e90000 0x10000>; 173094e6197dSAlexander Stein interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 173194e6197dSAlexander Stein clocks = <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 17321d0d5b91SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 17331d0d5b91SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 173494e6197dSAlexander Stein clock-names = "pix", "axi", "disp_axi"; 173594e6197dSAlexander Stein power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_2>; 173694e6197dSAlexander Stein status = "disabled"; 173794e6197dSAlexander Stein 173894e6197dSAlexander Stein port { 173994e6197dSAlexander Stein lcdif2_to_ldb: endpoint { 174094e6197dSAlexander Stein remote-endpoint = <&ldb_from_lcdif2>; 174194e6197dSAlexander Stein }; 174294e6197dSAlexander Stein }; 174394e6197dSAlexander Stein }; 174494e6197dSAlexander Stein 174529f440a7SPaul Elder media_blk_ctrl: blk-ctrl@32ec0000 { 174629f440a7SPaul Elder compatible = "fsl,imx8mp-media-blk-ctrl", 17475a51e1f2SMarek Vasut "syscon"; 174829f440a7SPaul Elder reg = <0x32ec0000 0x10000>; 174994e6197dSAlexander Stein #address-cells = <1>; 175094e6197dSAlexander Stein #size-cells = <1>; 175129f440a7SPaul Elder power-domains = <&pgc_mediamix>, 175229f440a7SPaul Elder <&pgc_mipi_phy1>, 175329f440a7SPaul Elder <&pgc_mipi_phy1>, 175429f440a7SPaul Elder <&pgc_mediamix>, 175529f440a7SPaul Elder <&pgc_mediamix>, 175629f440a7SPaul Elder <&pgc_mipi_phy2>, 175729f440a7SPaul Elder <&pgc_mediamix>, 175829f440a7SPaul Elder <&pgc_ispdwp>, 175929f440a7SPaul Elder <&pgc_ispdwp>, 176029f440a7SPaul Elder <&pgc_mipi_phy2>; 176129f440a7SPaul Elder power-domain-names = "bus", "mipi-dsi1", "mipi-csi1", 176229f440a7SPaul Elder "lcdif1", "isi", "mipi-csi2", 176329f440a7SPaul Elder "lcdif2", "isp", "dwe", 176429f440a7SPaul Elder "mipi-dsi2"; 17653175c706SPeng Fan interconnects = 17663175c706SPeng Fan <&noc IMX8MP_ICM_LCDIF_RD &noc IMX8MP_ICN_MEDIA>, 17673175c706SPeng Fan <&noc IMX8MP_ICM_LCDIF_WR &noc IMX8MP_ICN_MEDIA>, 17683175c706SPeng Fan <&noc IMX8MP_ICM_ISI0 &noc IMX8MP_ICN_MEDIA>, 17693175c706SPeng Fan <&noc IMX8MP_ICM_ISI1 &noc IMX8MP_ICN_MEDIA>, 17703175c706SPeng Fan <&noc IMX8MP_ICM_ISI2 &noc IMX8MP_ICN_MEDIA>, 17713175c706SPeng Fan <&noc IMX8MP_ICM_ISP0 &noc IMX8MP_ICN_MEDIA>, 17723175c706SPeng Fan <&noc IMX8MP_ICM_ISP1 &noc IMX8MP_ICN_MEDIA>, 17733175c706SPeng Fan <&noc IMX8MP_ICM_DWE &noc IMX8MP_ICN_MEDIA>; 17743175c706SPeng Fan interconnect-names = "lcdif-rd", "lcdif-wr", "isi0", 17753175c706SPeng Fan "isi1", "isi2", "isp0", "isp1", 17763175c706SPeng Fan "dwe"; 177729f440a7SPaul Elder clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 177829f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 177929f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 178029f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 178129f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 178229f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 178329f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 178429f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>; 178529f440a7SPaul Elder clock-names = "apb", "axi", "cam1", "cam2", 178629f440a7SPaul Elder "disp1", "disp2", "isp", "phy"; 178729f440a7SPaul Elder 178829f440a7SPaul Elder assigned-clocks = <&clk IMX8MP_CLK_MEDIA_AXI>, 178907bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_APB>, 179007bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_DISP1_PIX>, 179107bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_DISP2_PIX>, 179207bb2e36SAdam Ford <&clk IMX8MP_VIDEO_PLL1>; 179329f440a7SPaul Elder assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>, 179407bb2e36SAdam Ford <&clk IMX8MP_SYS_PLL1_800M>, 179507bb2e36SAdam Ford <&clk IMX8MP_VIDEO_PLL1_OUT>, 179607bb2e36SAdam Ford <&clk IMX8MP_VIDEO_PLL1_OUT>; 179707bb2e36SAdam Ford assigned-clock-rates = <500000000>, <200000000>, 179807bb2e36SAdam Ford <0>, <0>, <1039500000>; 179929f440a7SPaul Elder #power-domain-cells = <1>; 180094e6197dSAlexander Stein 180194e6197dSAlexander Stein lvds_bridge: bridge@5c { 180294e6197dSAlexander Stein compatible = "fsl,imx8mp-ldb"; 180394e6197dSAlexander Stein reg = <0x5c 0x4>, <0x128 0x4>; 180494e6197dSAlexander Stein reg-names = "ldb", "lvds"; 1805e7567840SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_LDB>; 1806e7567840SMarek Vasut clock-names = "ldb"; 180794e6197dSAlexander Stein assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>; 180894e6197dSAlexander Stein assigned-clock-parents = <&clk IMX8MP_VIDEO_PLL1_OUT>; 180994e6197dSAlexander Stein status = "disabled"; 181094e6197dSAlexander Stein 181194e6197dSAlexander Stein ports { 181294e6197dSAlexander Stein #address-cells = <1>; 181394e6197dSAlexander Stein #size-cells = <0>; 181494e6197dSAlexander Stein 181594e6197dSAlexander Stein port@0 { 181694e6197dSAlexander Stein reg = <0>; 181794e6197dSAlexander Stein 181894e6197dSAlexander Stein ldb_from_lcdif2: endpoint { 181994e6197dSAlexander Stein remote-endpoint = <&lcdif2_to_ldb>; 182094e6197dSAlexander Stein }; 182194e6197dSAlexander Stein }; 182294e6197dSAlexander Stein 182394e6197dSAlexander Stein port@1 { 182494e6197dSAlexander Stein reg = <1>; 182594e6197dSAlexander Stein 182694e6197dSAlexander Stein ldb_lvds_ch0: endpoint { 182794e6197dSAlexander Stein }; 182894e6197dSAlexander Stein }; 182994e6197dSAlexander Stein 183094e6197dSAlexander Stein port@2 { 183194e6197dSAlexander Stein reg = <2>; 183294e6197dSAlexander Stein 183394e6197dSAlexander Stein ldb_lvds_ch1: endpoint { 183494e6197dSAlexander Stein }; 183594e6197dSAlexander Stein }; 183694e6197dSAlexander Stein }; 183794e6197dSAlexander Stein }; 183829f440a7SPaul Elder }; 183929f440a7SPaul Elder 18409e65987bSRichard Zhu pcie_phy: pcie-phy@32f00000 { 18419e65987bSRichard Zhu compatible = "fsl,imx8mp-pcie-phy"; 18429e65987bSRichard Zhu reg = <0x32f00000 0x10000>; 18439e65987bSRichard Zhu resets = <&src IMX8MP_RESET_PCIEPHY>, 18449e65987bSRichard Zhu <&src IMX8MP_RESET_PCIEPHY_PERST>; 18459e65987bSRichard Zhu reset-names = "pciephy", "perst"; 18469e65987bSRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE_PHY>; 18479e65987bSRichard Zhu #phy-cells = <0>; 18489e65987bSRichard Zhu status = "disabled"; 18499e65987bSRichard Zhu }; 18509e65987bSRichard Zhu 18512ae42e0cSLucas Stach hsio_blk_ctrl: blk-ctrl@32f10000 { 18522ae42e0cSLucas Stach compatible = "fsl,imx8mp-hsio-blk-ctrl", "syscon"; 18532ae42e0cSLucas Stach reg = <0x32f10000 0x24>; 18542ae42e0cSLucas Stach clocks = <&clk IMX8MP_CLK_USB_ROOT>, 18552ae42e0cSLucas Stach <&clk IMX8MP_CLK_PCIE_ROOT>; 18562ae42e0cSLucas Stach clock-names = "usb", "pcie"; 18572ae42e0cSLucas Stach power-domains = <&pgc_hsiomix>, <&pgc_hsiomix>, 18582ae42e0cSLucas Stach <&pgc_usb1_phy>, <&pgc_usb2_phy>, 18592ae42e0cSLucas Stach <&pgc_hsiomix>, <&pgc_pcie_phy>; 18602ae42e0cSLucas Stach power-domain-names = "bus", "usb", "usb-phy1", 18612ae42e0cSLucas Stach "usb-phy2", "pcie", "pcie-phy"; 186231da63e1SPeng Fan interconnects = <&noc IMX8MP_ICM_NOC_PCIE &noc IMX8MP_ICN_HSIO>, 186331da63e1SPeng Fan <&noc IMX8MP_ICM_USB1 &noc IMX8MP_ICN_HSIO>, 186431da63e1SPeng Fan <&noc IMX8MP_ICM_USB2 &noc IMX8MP_ICN_HSIO>, 186531da63e1SPeng Fan <&noc IMX8MP_ICM_PCIE &noc IMX8MP_ICN_HSIO>; 186631da63e1SPeng Fan interconnect-names = "noc-pcie", "usb1", "usb2", "pcie"; 18672ae42e0cSLucas Stach #power-domain-cells = <1>; 186807a42c14SLucas Stach #clock-cells = <0>; 18692ae42e0cSLucas Stach }; 18702ae42e0cSLucas Stach }; 18712ae42e0cSLucas Stach 18729e65987bSRichard Zhu pcie: pcie@33800000 { 18739e65987bSRichard Zhu compatible = "fsl,imx8mp-pcie"; 18749e65987bSRichard Zhu reg = <0x33800000 0x400000>, <0x1ff00000 0x80000>; 18759e65987bSRichard Zhu reg-names = "dbi", "config"; 1876fae3bcc3SLucas Stach clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 1877bae293e9SMarek Vasut <&clk IMX8MP_CLK_HSIO_AXI>, 1878bae293e9SMarek Vasut <&clk IMX8MP_CLK_PCIE_ROOT>; 1879bae293e9SMarek Vasut clock-names = "pcie", "pcie_bus", "pcie_aux"; 1880fae3bcc3SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 1881fae3bcc3SLucas Stach assigned-clock-rates = <10000000>; 1882fae3bcc3SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 18839e65987bSRichard Zhu #address-cells = <3>; 18849e65987bSRichard Zhu #size-cells = <2>; 18859e65987bSRichard Zhu device_type = "pci"; 18869e65987bSRichard Zhu bus-range = <0x00 0xff>; 18879e65987bSRichard Zhu ranges = <0x81000000 0 0x00000000 0x1ff80000 0 0x00010000>, /* downstream I/O 64KB */ 18889e65987bSRichard Zhu <0x82000000 0 0x18000000 0x18000000 0 0x07f00000>; /* non-prefetchable memory */ 18899e65987bSRichard Zhu num-lanes = <1>; 18909e65987bSRichard Zhu num-viewport = <4>; 18919e65987bSRichard Zhu interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 18929e65987bSRichard Zhu interrupt-names = "msi"; 18939e65987bSRichard Zhu #interrupt-cells = <1>; 18949e65987bSRichard Zhu interrupt-map-mask = <0 0 0 0x7>; 18959e65987bSRichard Zhu interrupt-map = <0 0 0 1 &gic GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 18969e65987bSRichard Zhu <0 0 0 2 &gic GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 18979e65987bSRichard Zhu <0 0 0 3 &gic GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, 18989e65987bSRichard Zhu <0 0 0 4 &gic GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 18999e65987bSRichard Zhu fsl,max-link-speed = <3>; 19009e65987bSRichard Zhu linux,pci-domain = <0>; 19019e65987bSRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 19029e65987bSRichard Zhu resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 19039e65987bSRichard Zhu <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 19049e65987bSRichard Zhu reset-names = "apps", "turnoff"; 19059e65987bSRichard Zhu phys = <&pcie_phy>; 19069e65987bSRichard Zhu phy-names = "pcie-phy"; 19079e65987bSRichard Zhu status = "disabled"; 19089e65987bSRichard Zhu }; 19099e65987bSRichard Zhu 191023f59eb1SRichard Zhu pcie_ep: pcie-ep@33800000 { 191123f59eb1SRichard Zhu compatible = "fsl,imx8mp-pcie-ep"; 191223f59eb1SRichard Zhu reg = <0x33800000 0x000400000>, <0x18000000 0x08000000>; 191323f59eb1SRichard Zhu reg-names = "dbi", "addr_space"; 191423f59eb1SRichard Zhu clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 191523f59eb1SRichard Zhu <&clk IMX8MP_CLK_HSIO_AXI>, 191623f59eb1SRichard Zhu <&clk IMX8MP_CLK_PCIE_ROOT>; 191723f59eb1SRichard Zhu clock-names = "pcie", "pcie_bus", "pcie_aux"; 191823f59eb1SRichard Zhu assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 191923f59eb1SRichard Zhu assigned-clock-rates = <10000000>; 192023f59eb1SRichard Zhu assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 192123f59eb1SRichard Zhu num-lanes = <1>; 192223f59eb1SRichard Zhu interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; /* eDMA */ 192323f59eb1SRichard Zhu interrupt-names = "dma"; 192423f59eb1SRichard Zhu fsl,max-link-speed = <3>; 192523f59eb1SRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 192623f59eb1SRichard Zhu resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 192723f59eb1SRichard Zhu <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 192823f59eb1SRichard Zhu reset-names = "apps", "turnoff"; 192923f59eb1SRichard Zhu phys = <&pcie_phy>; 193023f59eb1SRichard Zhu phy-names = "pcie-phy"; 193123f59eb1SRichard Zhu num-ib-windows = <4>; 193223f59eb1SRichard Zhu num-ob-windows = <4>; 193323f59eb1SRichard Zhu status = "disabled"; 193423f59eb1SRichard Zhu }; 193523f59eb1SRichard Zhu 19364bdb1192SLucas Stach gpu3d: gpu@38000000 { 19374bdb1192SLucas Stach compatible = "vivante,gc"; 19384bdb1192SLucas Stach reg = <0x38000000 0x8000>; 19394bdb1192SLucas Stach interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 19404bdb1192SLucas Stach clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 19414bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>, 19424bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_ROOT>, 19434bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 19444bdb1192SLucas Stach clock-names = "core", "shader", "bus", "reg"; 19454bdb1192SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU3D_CORE>, 19464bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 19474bdb1192SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 19484bdb1192SLucas Stach <&clk IMX8MP_SYS_PLL1_800M>; 19494bdb1192SLucas Stach assigned-clock-rates = <800000000>, <800000000>; 19504bdb1192SLucas Stach power-domains = <&pgc_gpu3d>; 19514bdb1192SLucas Stach }; 19524bdb1192SLucas Stach 19534bdb1192SLucas Stach gpu2d: gpu@38008000 { 19544bdb1192SLucas Stach compatible = "vivante,gc"; 19554bdb1192SLucas Stach reg = <0x38008000 0x8000>; 19564bdb1192SLucas Stach interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 19574bdb1192SLucas Stach clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>, 19584bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_ROOT>, 19594bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 19604bdb1192SLucas Stach clock-names = "core", "bus", "reg"; 19614bdb1192SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU2D_CORE>; 19624bdb1192SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 19634bdb1192SLucas Stach assigned-clock-rates = <800000000>; 19644bdb1192SLucas Stach power-domains = <&pgc_gpu2d>; 19654bdb1192SLucas Stach }; 19664bdb1192SLucas Stach 1967e9b751caSMarek Vasut vpu_g1: video-codec@38300000 { 1968e9b751caSMarek Vasut compatible = "nxp,imx8mm-vpu-g1"; 1969e9b751caSMarek Vasut reg = <0x38300000 0x10000>; 1970e9b751caSMarek Vasut interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 1971e9b751caSMarek Vasut clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 1972e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_G1>; 1973e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 1974e9b751caSMarek Vasut assigned-clock-rates = <600000000>; 1975e9b751caSMarek Vasut power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G1>; 1976e9b751caSMarek Vasut }; 1977e9b751caSMarek Vasut 1978e9b751caSMarek Vasut vpu_g2: video-codec@38310000 { 1979e9b751caSMarek Vasut compatible = "nxp,imx8mq-vpu-g2"; 1980e9b751caSMarek Vasut reg = <0x38310000 0x10000>; 1981e9b751caSMarek Vasut interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 1982e9b751caSMarek Vasut clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 1983e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_G2>; 1984e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>; 1985e9b751caSMarek Vasut assigned-clock-rates = <500000000>; 1986e9b751caSMarek Vasut power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G2>; 1987e9b751caSMarek Vasut }; 1988e9b751caSMarek Vasut 1989a763d0cfSPeng Fan vpumix_blk_ctrl: blk-ctrl@38330000 { 1990a763d0cfSPeng Fan compatible = "fsl,imx8mp-vpu-blk-ctrl", "syscon"; 1991a763d0cfSPeng Fan reg = <0x38330000 0x100>; 1992a763d0cfSPeng Fan #power-domain-cells = <1>; 1993a763d0cfSPeng Fan power-domains = <&pgc_vpumix>, <&pgc_vpu_g1>, 1994a763d0cfSPeng Fan <&pgc_vpu_g2>, <&pgc_vpu_vc8000e>; 1995a763d0cfSPeng Fan power-domain-names = "bus", "g1", "g2", "vc8000e"; 1996a763d0cfSPeng Fan clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>, 1997a763d0cfSPeng Fan <&clk IMX8MP_CLK_VPU_G2_ROOT>, 1998a763d0cfSPeng Fan <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 1999a763d0cfSPeng Fan clock-names = "g1", "g2", "vc8000e"; 2000e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_BUS>, <&clk IMX8MP_VPU_PLL>; 2001e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 2002e9b751caSMarek Vasut assigned-clock-rates = <600000000>, <600000000>; 2003a763d0cfSPeng Fan interconnects = <&noc IMX8MP_ICM_VPU_G1 &noc IMX8MP_ICN_VIDEO>, 2004a763d0cfSPeng Fan <&noc IMX8MP_ICM_VPU_G2 &noc IMX8MP_ICN_VIDEO>, 2005a763d0cfSPeng Fan <&noc IMX8MP_ICM_VPU_H1 &noc IMX8MP_ICN_VIDEO>; 2006a763d0cfSPeng Fan interconnect-names = "g1", "g2", "vc8000e"; 2007a763d0cfSPeng Fan }; 2008a763d0cfSPeng Fan 20096d9b8d20SAnson Huang gic: interrupt-controller@38800000 { 20106d9b8d20SAnson Huang compatible = "arm,gic-v3"; 20116d9b8d20SAnson Huang reg = <0x38800000 0x10000>, 20126d9b8d20SAnson Huang <0x38880000 0xc0000>; 20136d9b8d20SAnson Huang #interrupt-cells = <3>; 20146d9b8d20SAnson Huang interrupt-controller; 20156d9b8d20SAnson Huang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 20166d9b8d20SAnson Huang interrupt-parent = <&gic>; 20176d9b8d20SAnson Huang }; 2018b39cb21fSJoakim Zhang 201968b7cf5dSSherry Sun edacmc: memory-controller@3d400000 { 202068b7cf5dSSherry Sun compatible = "snps,ddrc-3.80a"; 202168b7cf5dSSherry Sun reg = <0x3d400000 0x400000>; 202268b7cf5dSSherry Sun interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 202368b7cf5dSSherry Sun }; 202468b7cf5dSSherry Sun 2025b39cb21fSJoakim Zhang ddr-pmu@3d800000 { 2026b39cb21fSJoakim Zhang compatible = "fsl,imx8mp-ddr-pmu", "fsl,imx8m-ddr-pmu"; 2027b39cb21fSJoakim Zhang reg = <0x3d800000 0x400000>; 2028b39cb21fSJoakim Zhang interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 2029b39cb21fSJoakim Zhang }; 2030fb8587a2SLi Jun 2031fb8587a2SLi Jun usb3_phy0: usb-phy@381f0040 { 2032fb8587a2SLi Jun compatible = "fsl,imx8mp-usb-phy"; 2033fb8587a2SLi Jun reg = <0x381f0040 0x40>; 2034fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 2035fb8587a2SLi Jun clock-names = "phy"; 2036fb8587a2SLi Jun assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 2037fb8587a2SLi Jun assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 20382ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY1>; 2039fb8587a2SLi Jun #phy-cells = <0>; 2040fb8587a2SLi Jun status = "disabled"; 2041fb8587a2SLi Jun }; 2042fb8587a2SLi Jun 2043fb8587a2SLi Jun usb3_0: usb@32f10100 { 2044fb8587a2SLi Jun compatible = "fsl,imx8mp-dwc3"; 2045290918c7SAlexander Stein reg = <0x32f10100 0x8>, 2046290918c7SAlexander Stein <0x381f0000 0x20>; 2047fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 20488a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2049fb8587a2SLi Jun clock-names = "hsio", "suspend"; 2050fb8587a2SLi Jun interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 20512ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 2052fb8587a2SLi Jun #address-cells = <1>; 2053fb8587a2SLi Jun #size-cells = <1>; 2054fb8587a2SLi Jun dma-ranges = <0x40000000 0x40000000 0xc0000000>; 2055fb8587a2SLi Jun ranges; 2056fb8587a2SLi Jun status = "disabled"; 2057fb8587a2SLi Jun 2058d1689cd3SZhen Lei usb_dwc3_0: usb@38100000 { 2059fb8587a2SLi Jun compatible = "snps,dwc3"; 2060fb8587a2SLi Jun reg = <0x38100000 0x10000>; 20618a1ed98fSLi Jun clocks = <&clk IMX8MP_CLK_USB_ROOT>, 2062fb8587a2SLi Jun <&clk IMX8MP_CLK_USB_CORE_REF>, 20638a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2064fb8587a2SLi Jun clock-names = "bus_early", "ref", "suspend"; 2065fb8587a2SLi Jun interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 2066fb8587a2SLi Jun phys = <&usb3_phy0>, <&usb3_phy0>; 2067fb8587a2SLi Jun phy-names = "usb2-phy", "usb3-phy"; 20685c3d5ecfSAlexander Stein snps,gfladj-refclk-lpm-sel-quirk; 2069fb8587a2SLi Jun }; 2070fb8587a2SLi Jun 2071fb8587a2SLi Jun }; 2072fb8587a2SLi Jun 2073fb8587a2SLi Jun usb3_phy1: usb-phy@382f0040 { 2074fb8587a2SLi Jun compatible = "fsl,imx8mp-usb-phy"; 2075fb8587a2SLi Jun reg = <0x382f0040 0x40>; 2076fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 2077fb8587a2SLi Jun clock-names = "phy"; 2078fb8587a2SLi Jun assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 2079fb8587a2SLi Jun assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 20802ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY2>; 2081fb8587a2SLi Jun #phy-cells = <0>; 2082b2d67d7bSLucas Stach status = "disabled"; 2083fb8587a2SLi Jun }; 2084fb8587a2SLi Jun 2085fb8587a2SLi Jun usb3_1: usb@32f10108 { 2086fb8587a2SLi Jun compatible = "fsl,imx8mp-dwc3"; 2087290918c7SAlexander Stein reg = <0x32f10108 0x8>, 2088290918c7SAlexander Stein <0x382f0000 0x20>; 2089fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 20908a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2091fb8587a2SLi Jun clock-names = "hsio", "suspend"; 2092fb8587a2SLi Jun interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; 20932ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 2094fb8587a2SLi Jun #address-cells = <1>; 2095fb8587a2SLi Jun #size-cells = <1>; 2096fb8587a2SLi Jun dma-ranges = <0x40000000 0x40000000 0xc0000000>; 2097fb8587a2SLi Jun ranges; 2098fb8587a2SLi Jun status = "disabled"; 2099fb8587a2SLi Jun 2100d1689cd3SZhen Lei usb_dwc3_1: usb@38200000 { 2101fb8587a2SLi Jun compatible = "snps,dwc3"; 2102fb8587a2SLi Jun reg = <0x38200000 0x10000>; 21038a1ed98fSLi Jun clocks = <&clk IMX8MP_CLK_USB_ROOT>, 2104fb8587a2SLi Jun <&clk IMX8MP_CLK_USB_CORE_REF>, 21058a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2106fb8587a2SLi Jun clock-names = "bus_early", "ref", "suspend"; 2107fb8587a2SLi Jun interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 2108fb8587a2SLi Jun phys = <&usb3_phy1>, <&usb3_phy1>; 2109fb8587a2SLi Jun phy-names = "usb2-phy", "usb3-phy"; 21105c3d5ecfSAlexander Stein snps,gfladj-refclk-lpm-sel-quirk; 2111fb8587a2SLi Jun }; 2112fb8587a2SLi Jun }; 2113bc3ab388SDaniel Baluta 2114bc3ab388SDaniel Baluta dsp: dsp@3b6e8000 { 2115bc3ab388SDaniel Baluta compatible = "fsl,imx8mp-dsp"; 2116bc3ab388SDaniel Baluta reg = <0x3b6e8000 0x88000>; 2117bc3ab388SDaniel Baluta mbox-names = "txdb0", "txdb1", 2118bc3ab388SDaniel Baluta "rxdb0", "rxdb1"; 2119bc3ab388SDaniel Baluta mboxes = <&mu2 2 0>, <&mu2 2 1>, 2120bc3ab388SDaniel Baluta <&mu2 3 0>, <&mu2 3 1>; 2121bc3ab388SDaniel Baluta memory-region = <&dsp_reserved>; 2122bc3ab388SDaniel Baluta status = "disabled"; 2123bc3ab388SDaniel Baluta }; 21246d9b8d20SAnson Huang }; 21256d9b8d20SAnson Huang}; 2126