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 2059cfe3c89SFabio Estevam funnel { 2069cfe3c89SFabio Estevam /* 2079cfe3c89SFabio Estevam * non-configurable funnel don't show up on the AMBA 2089cfe3c89SFabio Estevam * bus. As such no need to add "arm,primecell". 2099cfe3c89SFabio Estevam */ 2109cfe3c89SFabio Estevam compatible = "arm,coresight-static-funnel"; 2119cfe3c89SFabio Estevam 2129cfe3c89SFabio Estevam in-ports { 2139cfe3c89SFabio Estevam #address-cells = <1>; 2149cfe3c89SFabio Estevam #size-cells = <0>; 2159cfe3c89SFabio Estevam 2169cfe3c89SFabio Estevam port@0 { 2179cfe3c89SFabio Estevam reg = <0>; 2189cfe3c89SFabio Estevam 2199cfe3c89SFabio Estevam ca_funnel_in_port0: endpoint { 2209cfe3c89SFabio Estevam remote-endpoint = <&etm0_out_port>; 2219cfe3c89SFabio Estevam }; 2229cfe3c89SFabio Estevam }; 2239cfe3c89SFabio Estevam 2249cfe3c89SFabio Estevam port@1 { 2259cfe3c89SFabio Estevam reg = <1>; 2269cfe3c89SFabio Estevam 2279cfe3c89SFabio Estevam ca_funnel_in_port1: endpoint { 2289cfe3c89SFabio Estevam remote-endpoint = <&etm1_out_port>; 2299cfe3c89SFabio Estevam }; 2309cfe3c89SFabio Estevam }; 2319cfe3c89SFabio Estevam 2329cfe3c89SFabio Estevam port@2 { 2339cfe3c89SFabio Estevam reg = <2>; 2349cfe3c89SFabio Estevam 2359cfe3c89SFabio Estevam ca_funnel_in_port2: endpoint { 2369cfe3c89SFabio Estevam remote-endpoint = <&etm2_out_port>; 2379cfe3c89SFabio Estevam }; 2389cfe3c89SFabio Estevam }; 2399cfe3c89SFabio Estevam 2409cfe3c89SFabio Estevam port@3 { 2419cfe3c89SFabio Estevam reg = <3>; 2429cfe3c89SFabio Estevam 2439cfe3c89SFabio Estevam ca_funnel_in_port3: endpoint { 2449cfe3c89SFabio Estevam remote-endpoint = <&etm3_out_port>; 2459cfe3c89SFabio Estevam }; 2469cfe3c89SFabio Estevam }; 2479cfe3c89SFabio Estevam }; 2489cfe3c89SFabio Estevam 2499cfe3c89SFabio Estevam out-ports { 2509cfe3c89SFabio Estevam port { 2519cfe3c89SFabio Estevam 2529cfe3c89SFabio Estevam ca_funnel_out_port0: endpoint { 2539cfe3c89SFabio Estevam remote-endpoint = <&hugo_funnel_in_port0>; 2549cfe3c89SFabio Estevam }; 2559cfe3c89SFabio Estevam }; 2569cfe3c89SFabio Estevam }; 2579cfe3c89SFabio Estevam }; 2589cfe3c89SFabio 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; 267010dc015SAlexander Stein status = "disabled"; 268bc3ab388SDaniel Baluta }; 269bc3ab388SDaniel Baluta }; 270bc3ab388SDaniel Baluta 2710f109a31SJacky Bai pmu { 2720f109a31SJacky Bai compatible = "arm,cortex-a53-pmu"; 2730f109a31SJacky Bai interrupts = <GIC_PPI 7 2740f109a31SJacky Bai (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 2750f109a31SJacky Bai }; 2760f109a31SJacky Bai 2776d9b8d20SAnson Huang psci { 2786d9b8d20SAnson Huang compatible = "arm,psci-1.0"; 2796d9b8d20SAnson Huang method = "smc"; 2806d9b8d20SAnson Huang }; 2816d9b8d20SAnson Huang 28230cdd62dSAnson Huang thermal-zones { 28330cdd62dSAnson Huang cpu-thermal { 28430cdd62dSAnson Huang polling-delay-passive = <250>; 28530cdd62dSAnson Huang polling-delay = <2000>; 28630cdd62dSAnson Huang thermal-sensors = <&tmu 0>; 28730cdd62dSAnson Huang trips { 28830cdd62dSAnson Huang cpu_alert0: trip0 { 28930cdd62dSAnson Huang temperature = <85000>; 29030cdd62dSAnson Huang hysteresis = <2000>; 29130cdd62dSAnson Huang type = "passive"; 29230cdd62dSAnson Huang }; 29330cdd62dSAnson Huang 29430cdd62dSAnson Huang cpu_crit0: trip1 { 29530cdd62dSAnson Huang temperature = <95000>; 29630cdd62dSAnson Huang hysteresis = <2000>; 29730cdd62dSAnson Huang type = "critical"; 29830cdd62dSAnson Huang }; 29930cdd62dSAnson Huang }; 30030cdd62dSAnson Huang 30130cdd62dSAnson Huang cooling-maps { 30230cdd62dSAnson Huang map0 { 30330cdd62dSAnson Huang trip = <&cpu_alert0>; 30430cdd62dSAnson Huang cooling-device = 30530cdd62dSAnson Huang <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30630cdd62dSAnson Huang <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30730cdd62dSAnson Huang <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 30830cdd62dSAnson Huang <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 30930cdd62dSAnson Huang }; 31030cdd62dSAnson Huang }; 31130cdd62dSAnson Huang }; 31230cdd62dSAnson Huang 31330cdd62dSAnson Huang soc-thermal { 31430cdd62dSAnson Huang polling-delay-passive = <250>; 31530cdd62dSAnson Huang polling-delay = <2000>; 31630cdd62dSAnson Huang thermal-sensors = <&tmu 1>; 31730cdd62dSAnson Huang trips { 31830cdd62dSAnson Huang soc_alert0: trip0 { 31930cdd62dSAnson Huang temperature = <85000>; 32030cdd62dSAnson Huang hysteresis = <2000>; 32130cdd62dSAnson Huang type = "passive"; 32230cdd62dSAnson Huang }; 32330cdd62dSAnson Huang 32430cdd62dSAnson Huang soc_crit0: trip1 { 32530cdd62dSAnson Huang temperature = <95000>; 32630cdd62dSAnson Huang hysteresis = <2000>; 32730cdd62dSAnson Huang type = "critical"; 32830cdd62dSAnson Huang }; 32930cdd62dSAnson Huang }; 33030cdd62dSAnson Huang 33130cdd62dSAnson Huang cooling-maps { 33230cdd62dSAnson Huang map0 { 33330cdd62dSAnson Huang trip = <&soc_alert0>; 33430cdd62dSAnson Huang cooling-device = 33530cdd62dSAnson Huang <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33630cdd62dSAnson Huang <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33730cdd62dSAnson Huang <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 33830cdd62dSAnson Huang <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 33930cdd62dSAnson Huang }; 34030cdd62dSAnson Huang }; 34130cdd62dSAnson Huang }; 34230cdd62dSAnson Huang }; 34330cdd62dSAnson Huang 3446d9b8d20SAnson Huang timer { 3456d9b8d20SAnson Huang compatible = "arm,armv8-timer"; 346061883e6SKrzysztof Kozlowski interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 347061883e6SKrzysztof Kozlowski <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 348061883e6SKrzysztof Kozlowski <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 349061883e6SKrzysztof Kozlowski <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 3506d9b8d20SAnson Huang clock-frequency = <8000000>; 3516d9b8d20SAnson Huang arm,no-tick-in-suspend; 3526d9b8d20SAnson Huang }; 3536d9b8d20SAnson Huang 354fcdef92bSFabio Estevam soc: soc@0 { 355ce58459dSAlice Guo compatible = "fsl,imx8mp-soc", "simple-bus"; 3566d9b8d20SAnson Huang #address-cells = <1>; 3576d9b8d20SAnson Huang #size-cells = <1>; 3586d9b8d20SAnson Huang ranges = <0x0 0x0 0x0 0x3e000000>; 359cbff2379SAlice Guo nvmem-cells = <&imx8mp_uid>; 360cbff2379SAlice Guo nvmem-cell-names = "soc_unique_id"; 3616d9b8d20SAnson Huang 36271c2ac9aSFrank Li etm0: etm@28440000 { 36371c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 364ba345b77SFrank Li reg = <0x28440000 0x1000>; 36571c2ac9aSFrank Li cpu = <&A53_0>; 36671c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 36771c2ac9aSFrank Li clock-names = "apb_pclk"; 36871c2ac9aSFrank Li 36971c2ac9aSFrank Li out-ports { 37071c2ac9aSFrank Li port { 37171c2ac9aSFrank Li etm0_out_port: endpoint { 37271c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port0>; 37371c2ac9aSFrank Li }; 37471c2ac9aSFrank Li }; 37571c2ac9aSFrank Li }; 37671c2ac9aSFrank Li }; 37771c2ac9aSFrank Li 37871c2ac9aSFrank Li etm1: etm@28540000 { 37971c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 380ba345b77SFrank Li reg = <0x28540000 0x1000>; 38171c2ac9aSFrank Li cpu = <&A53_1>; 38271c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 38371c2ac9aSFrank Li clock-names = "apb_pclk"; 38471c2ac9aSFrank Li 38571c2ac9aSFrank Li out-ports { 38671c2ac9aSFrank Li port { 38771c2ac9aSFrank Li etm1_out_port: endpoint { 38871c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port1>; 38971c2ac9aSFrank Li }; 39071c2ac9aSFrank Li }; 39171c2ac9aSFrank Li }; 39271c2ac9aSFrank Li }; 39371c2ac9aSFrank Li 39471c2ac9aSFrank Li etm2: etm@28640000 { 39571c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 396ba345b77SFrank Li reg = <0x28640000 0x1000>; 39771c2ac9aSFrank Li cpu = <&A53_2>; 39871c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 39971c2ac9aSFrank Li clock-names = "apb_pclk"; 40071c2ac9aSFrank Li 40171c2ac9aSFrank Li out-ports { 40271c2ac9aSFrank Li port { 40371c2ac9aSFrank Li etm2_out_port: endpoint { 40471c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port2>; 40571c2ac9aSFrank Li }; 40671c2ac9aSFrank Li }; 40771c2ac9aSFrank Li }; 40871c2ac9aSFrank Li }; 40971c2ac9aSFrank Li 41071c2ac9aSFrank Li etm3: etm@28740000 { 41171c2ac9aSFrank Li compatible = "arm,coresight-etm4x", "arm,primecell"; 412ba345b77SFrank Li reg = <0x28740000 0x1000>; 41371c2ac9aSFrank Li cpu = <&A53_3>; 41471c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 41571c2ac9aSFrank Li clock-names = "apb_pclk"; 41671c2ac9aSFrank Li 41771c2ac9aSFrank Li out-ports { 41871c2ac9aSFrank Li port { 41971c2ac9aSFrank Li etm3_out_port: endpoint { 42071c2ac9aSFrank Li remote-endpoint = <&ca_funnel_in_port3>; 42171c2ac9aSFrank Li }; 42271c2ac9aSFrank Li }; 42371c2ac9aSFrank Li }; 42471c2ac9aSFrank Li }; 42571c2ac9aSFrank Li 42671c2ac9aSFrank Li funnel@28c03000 { 42771c2ac9aSFrank Li compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 42871c2ac9aSFrank Li reg = <0x28c03000 0x1000>; 42971c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 43071c2ac9aSFrank Li clock-names = "apb_pclk"; 43171c2ac9aSFrank Li 43271c2ac9aSFrank Li in-ports { 43371c2ac9aSFrank Li #address-cells = <1>; 43471c2ac9aSFrank Li #size-cells = <0>; 43571c2ac9aSFrank Li 43671c2ac9aSFrank Li port@0 { 43771c2ac9aSFrank Li reg = <0>; 43871c2ac9aSFrank Li 43971c2ac9aSFrank Li hugo_funnel_in_port0: endpoint { 44071c2ac9aSFrank Li remote-endpoint = <&ca_funnel_out_port0>; 44171c2ac9aSFrank Li }; 44271c2ac9aSFrank Li }; 44371c2ac9aSFrank Li 44471c2ac9aSFrank Li port@1 { 44571c2ac9aSFrank Li reg = <1>; 44671c2ac9aSFrank Li 44771c2ac9aSFrank Li hugo_funnel_in_port1: endpoint { 44871c2ac9aSFrank Li /* M7 input */ 44971c2ac9aSFrank Li }; 45071c2ac9aSFrank Li }; 45171c2ac9aSFrank Li 45271c2ac9aSFrank Li port@2 { 45371c2ac9aSFrank Li reg = <2>; 45471c2ac9aSFrank Li 45571c2ac9aSFrank Li hugo_funnel_in_port2: endpoint { 45671c2ac9aSFrank Li /* DSP input */ 45771c2ac9aSFrank Li }; 45871c2ac9aSFrank Li }; 45971c2ac9aSFrank Li /* the other input ports are not connect to anything */ 46071c2ac9aSFrank Li }; 46171c2ac9aSFrank Li 46271c2ac9aSFrank Li out-ports { 46371c2ac9aSFrank Li port { 46471c2ac9aSFrank Li hugo_funnel_out_port0: endpoint { 46571c2ac9aSFrank Li remote-endpoint = <&etf_in_port>; 46671c2ac9aSFrank Li }; 46771c2ac9aSFrank Li }; 46871c2ac9aSFrank Li }; 46971c2ac9aSFrank Li }; 47071c2ac9aSFrank Li 47171c2ac9aSFrank Li etf@28c04000 { 47271c2ac9aSFrank Li compatible = "arm,coresight-tmc", "arm,primecell"; 47371c2ac9aSFrank Li reg = <0x28c04000 0x1000>; 47471c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 47571c2ac9aSFrank Li clock-names = "apb_pclk"; 47671c2ac9aSFrank Li 47771c2ac9aSFrank Li in-ports { 47871c2ac9aSFrank Li port { 47971c2ac9aSFrank Li etf_in_port: endpoint { 48071c2ac9aSFrank Li remote-endpoint = <&hugo_funnel_out_port0>; 48171c2ac9aSFrank Li }; 48271c2ac9aSFrank Li }; 48371c2ac9aSFrank Li }; 48471c2ac9aSFrank Li 48571c2ac9aSFrank Li out-ports { 48671c2ac9aSFrank Li port { 48771c2ac9aSFrank Li etf_out_port: endpoint { 48871c2ac9aSFrank Li remote-endpoint = <&etr_in_port>; 48971c2ac9aSFrank Li }; 49071c2ac9aSFrank Li }; 49171c2ac9aSFrank Li }; 49271c2ac9aSFrank Li }; 49371c2ac9aSFrank Li 49471c2ac9aSFrank Li etr@28c06000 { 49571c2ac9aSFrank Li compatible = "arm,coresight-tmc", "arm,primecell"; 49671c2ac9aSFrank Li reg = <0x28c06000 0x1000>; 49771c2ac9aSFrank Li clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 49871c2ac9aSFrank Li clock-names = "apb_pclk"; 49971c2ac9aSFrank Li 50071c2ac9aSFrank Li in-ports { 50171c2ac9aSFrank Li port { 50271c2ac9aSFrank Li etr_in_port: endpoint { 50371c2ac9aSFrank Li remote-endpoint = <&etf_out_port>; 50471c2ac9aSFrank Li }; 50571c2ac9aSFrank Li }; 50671c2ac9aSFrank Li }; 50771c2ac9aSFrank Li }; 50871c2ac9aSFrank Li 5096d9b8d20SAnson Huang aips1: bus@30000000 { 510dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 511921a6845SFabio Estevam reg = <0x30000000 0x400000>; 5126d9b8d20SAnson Huang #address-cells = <1>; 5136d9b8d20SAnson Huang #size-cells = <1>; 5146d9b8d20SAnson Huang ranges; 5156d9b8d20SAnson Huang 5166d9b8d20SAnson Huang gpio1: gpio@30200000 { 5176d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5186d9b8d20SAnson Huang reg = <0x30200000 0x10000>; 5196d9b8d20SAnson Huang interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 5206d9b8d20SAnson Huang <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 5216d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO1_ROOT>; 5226d9b8d20SAnson Huang gpio-controller; 5236d9b8d20SAnson Huang #gpio-cells = <2>; 5246d9b8d20SAnson Huang interrupt-controller; 5256d9b8d20SAnson Huang #interrupt-cells = <2>; 5266d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 5 30>; 5276d9b8d20SAnson Huang }; 5286d9b8d20SAnson Huang 5296d9b8d20SAnson Huang gpio2: gpio@30210000 { 5306d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5316d9b8d20SAnson Huang reg = <0x30210000 0x10000>; 5326d9b8d20SAnson Huang interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 5336d9b8d20SAnson Huang <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 5346d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO2_ROOT>; 5356d9b8d20SAnson Huang gpio-controller; 5366d9b8d20SAnson Huang #gpio-cells = <2>; 5376d9b8d20SAnson Huang interrupt-controller; 5386d9b8d20SAnson Huang #interrupt-cells = <2>; 5396d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 35 21>; 5406d9b8d20SAnson Huang }; 5416d9b8d20SAnson Huang 5426d9b8d20SAnson Huang gpio3: gpio@30220000 { 5436d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5446d9b8d20SAnson Huang reg = <0x30220000 0x10000>; 5456d9b8d20SAnson Huang interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 5466d9b8d20SAnson Huang <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 5476d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO3_ROOT>; 5486d9b8d20SAnson Huang gpio-controller; 5496d9b8d20SAnson Huang #gpio-cells = <2>; 5506d9b8d20SAnson Huang interrupt-controller; 5516d9b8d20SAnson Huang #interrupt-cells = <2>; 552b764eb65SJacky Bai gpio-ranges = <&iomuxc 0 56 26>, <&iomuxc 26 144 4>; 5536d9b8d20SAnson Huang }; 5546d9b8d20SAnson Huang 5556d9b8d20SAnson Huang gpio4: gpio@30230000 { 5566d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5576d9b8d20SAnson Huang reg = <0x30230000 0x10000>; 5586d9b8d20SAnson Huang interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 5596d9b8d20SAnson Huang <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 5606d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO4_ROOT>; 5616d9b8d20SAnson Huang gpio-controller; 5626d9b8d20SAnson Huang #gpio-cells = <2>; 5636d9b8d20SAnson Huang interrupt-controller; 5646d9b8d20SAnson Huang #interrupt-cells = <2>; 5656d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 82 32>; 5666d9b8d20SAnson Huang }; 5676d9b8d20SAnson Huang 5686d9b8d20SAnson Huang gpio5: gpio@30240000 { 5696d9b8d20SAnson Huang compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 5706d9b8d20SAnson Huang reg = <0x30240000 0x10000>; 5716d9b8d20SAnson Huang interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 5726d9b8d20SAnson Huang <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 5736d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_GPIO5_ROOT>; 5746d9b8d20SAnson Huang gpio-controller; 5756d9b8d20SAnson Huang #gpio-cells = <2>; 5766d9b8d20SAnson Huang interrupt-controller; 5776d9b8d20SAnson Huang #interrupt-cells = <2>; 5786d9b8d20SAnson Huang gpio-ranges = <&iomuxc 0 114 30>; 5796d9b8d20SAnson Huang }; 5806d9b8d20SAnson Huang 58130cdd62dSAnson Huang tmu: tmu@30260000 { 58230cdd62dSAnson Huang compatible = "fsl,imx8mp-tmu"; 58330cdd62dSAnson Huang reg = <0x30260000 0x10000>; 58430cdd62dSAnson Huang clocks = <&clk IMX8MP_CLK_TSENSOR_ROOT>; 585105b9bb8SMarek Vasut nvmem-cells = <&tmu_calib>; 586105b9bb8SMarek Vasut nvmem-cell-names = "calib"; 58730cdd62dSAnson Huang #thermal-sensor-cells = <1>; 58830cdd62dSAnson Huang }; 58930cdd62dSAnson Huang 5906d9b8d20SAnson Huang wdog1: watchdog@30280000 { 5916d9b8d20SAnson Huang compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 5926d9b8d20SAnson Huang reg = <0x30280000 0x10000>; 5936d9b8d20SAnson Huang interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 5946d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_WDOG1_ROOT>; 5956d9b8d20SAnson Huang status = "disabled"; 5966d9b8d20SAnson Huang }; 5976d9b8d20SAnson Huang 59836133cb5SPeng Fan wdog2: watchdog@30290000 { 59936133cb5SPeng Fan compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 60036133cb5SPeng Fan reg = <0x30290000 0x10000>; 60136133cb5SPeng Fan interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 60236133cb5SPeng Fan clocks = <&clk IMX8MP_CLK_WDOG2_ROOT>; 60336133cb5SPeng Fan status = "disabled"; 60436133cb5SPeng Fan }; 60536133cb5SPeng Fan 60636133cb5SPeng Fan wdog3: watchdog@302a0000 { 60736133cb5SPeng Fan compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 60836133cb5SPeng Fan reg = <0x302a0000 0x10000>; 60936133cb5SPeng Fan interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 61036133cb5SPeng Fan clocks = <&clk IMX8MP_CLK_WDOG3_ROOT>; 61136133cb5SPeng Fan status = "disabled"; 61236133cb5SPeng Fan }; 61336133cb5SPeng Fan 6147c0277abSUwe Kleine-König gpt1: timer@302d0000 { 6157c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6167c0277abSUwe Kleine-König reg = <0x302d0000 0x10000>; 6177c0277abSUwe Kleine-König interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 6187c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT1_ROOT>, <&clk IMX8MP_CLK_GPT1>; 6197c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6207c0277abSUwe Kleine-König }; 6217c0277abSUwe Kleine-König 6227c0277abSUwe Kleine-König gpt2: timer@302e0000 { 6237c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6247c0277abSUwe Kleine-König reg = <0x302e0000 0x10000>; 6257c0277abSUwe Kleine-König interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 6267c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT2_ROOT>, <&clk IMX8MP_CLK_GPT2>; 6277c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6287c0277abSUwe Kleine-König }; 6297c0277abSUwe Kleine-König 6307c0277abSUwe Kleine-König gpt3: timer@302f0000 { 6317c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 6327c0277abSUwe Kleine-König reg = <0x302f0000 0x10000>; 6337c0277abSUwe Kleine-König interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 6347c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT3_ROOT>, <&clk IMX8MP_CLK_GPT3>; 6357c0277abSUwe Kleine-König clock-names = "ipg", "per"; 6367c0277abSUwe Kleine-König }; 6377c0277abSUwe Kleine-König 6386d9b8d20SAnson Huang iomuxc: pinctrl@30330000 { 6396d9b8d20SAnson Huang compatible = "fsl,imx8mp-iomuxc"; 6406d9b8d20SAnson Huang reg = <0x30330000 0x10000>; 6416d9b8d20SAnson Huang }; 6426d9b8d20SAnson Huang 643991679f7SPeng Fan gpr: syscon@30340000 { 6446d9b8d20SAnson Huang compatible = "fsl,imx8mp-iomuxc-gpr", "syscon"; 6456d9b8d20SAnson Huang reg = <0x30340000 0x10000>; 6466d9b8d20SAnson Huang }; 6476d9b8d20SAnson Huang 64812fa1078SAnson Huang ocotp: efuse@30350000 { 649f2fe45d5SAnson Huang compatible = "fsl,imx8mp-ocotp", "fsl,imx8mm-ocotp", "syscon"; 6506d9b8d20SAnson Huang reg = <0x30350000 0x10000>; 6516d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_OCOTP_ROOT>; 6526d9b8d20SAnson Huang /* For nvmem subnodes */ 6536d9b8d20SAnson Huang #address-cells = <1>; 6546d9b8d20SAnson Huang #size-cells = <1>; 6556d9b8d20SAnson Huang 6565b81a87dSMarek Vasut /* 6575b81a87dSMarek Vasut * The register address below maps to the MX8M 6585b81a87dSMarek Vasut * Fusemap Description Table entries this way. 6595b81a87dSMarek Vasut * Assuming 6605b81a87dSMarek Vasut * reg = <ADDR SIZE>; 6615b81a87dSMarek Vasut * then 6625b81a87dSMarek Vasut * Fuse Address = (ADDR * 4) + 0x400 6635b81a87dSMarek Vasut * Note that if SIZE is greater than 4, then 6645b81a87dSMarek Vasut * each subsequent fuse is located at offset 6655b81a87dSMarek Vasut * +0x10 in Fusemap Description Table (e.g. 6665b81a87dSMarek Vasut * reg = <0x8 0x8> describes fuses 0x420 and 6675b81a87dSMarek Vasut * 0x430). 6685b81a87dSMarek Vasut */ 6695b81a87dSMarek Vasut imx8mp_uid: unique-id@8 { /* 0x420-0x430 */ 670cbff2379SAlice Guo reg = <0x8 0x8>; 671cbff2379SAlice Guo }; 672cbff2379SAlice Guo 6735b81a87dSMarek Vasut cpu_speed_grade: speed-grade@10 { /* 0x440 */ 6746d9b8d20SAnson Huang reg = <0x10 4>; 6756d9b8d20SAnson Huang }; 676066438aeSJoakim Zhang 6775b81a87dSMarek Vasut eth_mac1: mac-address@90 { /* 0x640 */ 678066438aeSJoakim Zhang reg = <0x90 6>; 679066438aeSJoakim Zhang }; 68044d0dfeeSJoakim Zhang 6815b81a87dSMarek Vasut eth_mac2: mac-address@96 { /* 0x658 */ 68244d0dfeeSJoakim Zhang reg = <0x96 6>; 68344d0dfeeSJoakim Zhang }; 684105b9bb8SMarek Vasut 685105b9bb8SMarek Vasut tmu_calib: calib@264 { /* 0xd90-0xdc0 */ 686105b9bb8SMarek Vasut reg = <0x264 0x10>; 687105b9bb8SMarek Vasut }; 6886d9b8d20SAnson Huang }; 6896d9b8d20SAnson Huang 690f98c2dfeSPeng Fan anatop: clock-controller@30360000 { 691f98c2dfeSPeng Fan compatible = "fsl,imx8mp-anatop", "fsl,imx8mm-anatop"; 6926d9b8d20SAnson Huang reg = <0x30360000 0x10000>; 693f98c2dfeSPeng Fan #clock-cells = <1>; 6946d9b8d20SAnson Huang }; 6956d9b8d20SAnson Huang 6966d9b8d20SAnson Huang snvs: snvs@30370000 { 6976d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-mon","syscon", "simple-mfd"; 6986d9b8d20SAnson Huang reg = <0x30370000 0x10000>; 6996d9b8d20SAnson Huang 7006d9b8d20SAnson Huang snvs_rtc: snvs-rtc-lp { 7016d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-mon-rtc-lp"; 7026d9b8d20SAnson Huang regmap = <&snvs>; 7036d9b8d20SAnson Huang offset = <0x34>; 7046d9b8d20SAnson Huang interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 7056d9b8d20SAnson Huang <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 7066d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 7076d9b8d20SAnson Huang clock-names = "snvs-rtc"; 7086d9b8d20SAnson Huang }; 7096d9b8d20SAnson Huang 7106d9b8d20SAnson Huang snvs_pwrkey: snvs-powerkey { 7116d9b8d20SAnson Huang compatible = "fsl,sec-v4.0-pwrkey"; 7126d9b8d20SAnson Huang regmap = <&snvs>; 7136d9b8d20SAnson Huang interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 7146c389f29SAnson Huang clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 7156c389f29SAnson Huang clock-names = "snvs-pwrkey"; 7166d9b8d20SAnson Huang linux,keycode = <KEY_POWER>; 7176d9b8d20SAnson Huang wakeup-source; 7186d9b8d20SAnson Huang status = "disabled"; 7196d9b8d20SAnson Huang }; 7204dcb6c0fSMarek Vasut 7214dcb6c0fSMarek Vasut snvs_lpgpr: snvs-lpgpr { 7224dcb6c0fSMarek Vasut compatible = "fsl,imx8mp-snvs-lpgpr", 7234dcb6c0fSMarek Vasut "fsl,imx7d-snvs-lpgpr"; 7244dcb6c0fSMarek Vasut }; 7256d9b8d20SAnson Huang }; 7266d9b8d20SAnson Huang 7276d9b8d20SAnson Huang clk: clock-controller@30380000 { 7286d9b8d20SAnson Huang compatible = "fsl,imx8mp-ccm"; 7296d9b8d20SAnson Huang reg = <0x30380000 0x10000>; 73071f9f77fSAlexander Stein interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>, 73171f9f77fSAlexander Stein <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 7326d9b8d20SAnson Huang #clock-cells = <1>; 7336d9b8d20SAnson Huang clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>, <&clk_ext2>, 7346d9b8d20SAnson Huang <&clk_ext3>, <&clk_ext4>; 7356d9b8d20SAnson Huang clock-names = "osc_32k", "osc_24m", "clk_ext1", "clk_ext2", 7366d9b8d20SAnson Huang "clk_ext3", "clk_ext4"; 7379e6337e6SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_A53_SRC>, 7389e6337e6SPeng Fan <&clk IMX8MP_CLK_A53_CORE>, 7399e6337e6SPeng Fan <&clk IMX8MP_CLK_NOC>, 7406d9b8d20SAnson Huang <&clk IMX8MP_CLK_NOC_IO>, 74116c98452SLucas Stach <&clk IMX8MP_CLK_GIC>; 7429e6337e6SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 7439e6337e6SPeng Fan <&clk IMX8MP_ARM_PLL_OUT>, 7449e6337e6SPeng Fan <&clk IMX8MP_SYS_PLL2_1000M>, 7456d9b8d20SAnson Huang <&clk IMX8MP_SYS_PLL1_800M>, 74616c98452SLucas Stach <&clk IMX8MP_SYS_PLL2_500M>; 7479e6337e6SPeng Fan assigned-clock-rates = <0>, <0>, 7489e6337e6SPeng Fan <1000000000>, 7496d9b8d20SAnson Huang <800000000>, 75016c98452SLucas Stach <500000000>; 7516d9b8d20SAnson Huang }; 752455ae0c3SAnson Huang 753455ae0c3SAnson Huang src: reset-controller@30390000 { 754455ae0c3SAnson Huang compatible = "fsl,imx8mp-src", "syscon"; 755455ae0c3SAnson Huang reg = <0x30390000 0x10000>; 7561641b234SAnson Huang interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 757455ae0c3SAnson Huang #reset-cells = <1>; 758455ae0c3SAnson Huang }; 759fc0f0512SLucas Stach 760fc0f0512SLucas Stach gpc: gpc@303a0000 { 761fc0f0512SLucas Stach compatible = "fsl,imx8mp-gpc"; 762fc0f0512SLucas Stach reg = <0x303a0000 0x1000>; 763fc0f0512SLucas Stach interrupt-parent = <&gic>; 764b3b75aceSAdam Ford interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 765fc0f0512SLucas Stach interrupt-controller; 766fc0f0512SLucas Stach #interrupt-cells = <3>; 767fc0f0512SLucas Stach 768fc0f0512SLucas Stach pgc { 769fc0f0512SLucas Stach #address-cells = <1>; 770fc0f0512SLucas Stach #size-cells = <0>; 771fc0f0512SLucas Stach 7729d89189dSLaurent Pinchart pgc_mipi_phy1: power-domain@0 { 7739d89189dSLaurent Pinchart #power-domain-cells = <0>; 7749d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY1>; 7759d89189dSLaurent Pinchart }; 7769d89189dSLaurent Pinchart 7772ae42e0cSLucas Stach pgc_pcie_phy: power-domain@1 { 7782ae42e0cSLucas Stach #power-domain-cells = <0>; 7792ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_PCIE_PHY>; 7802ae42e0cSLucas Stach }; 7812ae42e0cSLucas Stach 7822ae42e0cSLucas Stach pgc_usb1_phy: power-domain@2 { 7832ae42e0cSLucas Stach #power-domain-cells = <0>; 7842ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_USB1_PHY>; 7852ae42e0cSLucas Stach }; 7862ae42e0cSLucas Stach 7872ae42e0cSLucas Stach pgc_usb2_phy: power-domain@3 { 7882ae42e0cSLucas Stach #power-domain-cells = <0>; 7892ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_USB2_PHY>; 7902ae42e0cSLucas Stach }; 7912ae42e0cSLucas Stach 792106f68fcSAdam Ford pgc_mlmix: power-domain@4 { 793106f68fcSAdam Ford #power-domain-cells = <0>; 794106f68fcSAdam Ford reg = <IMX8MP_POWER_DOMAIN_MLMIX>; 795106f68fcSAdam Ford clocks = <&clk IMX8MP_CLK_ML_AXI>, 796106f68fcSAdam Ford <&clk IMX8MP_CLK_ML_AHB>, 797106f68fcSAdam Ford <&clk IMX8MP_CLK_NPU_ROOT>; 798106f68fcSAdam Ford assigned-clocks = <&clk IMX8MP_CLK_ML_CORE>, 799106f68fcSAdam Ford <&clk IMX8MP_CLK_ML_AXI>, 800106f68fcSAdam Ford <&clk IMX8MP_CLK_ML_AHB>; 801106f68fcSAdam Ford assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 802106f68fcSAdam Ford <&clk IMX8MP_SYS_PLL1_800M>, 803106f68fcSAdam Ford <&clk IMX8MP_SYS_PLL1_800M>; 804106f68fcSAdam Ford assigned-clock-rates = <800000000>, 805106f68fcSAdam Ford <800000000>, 806106f68fcSAdam Ford <300000000>; 807106f68fcSAdam Ford }; 808106f68fcSAdam Ford 809b86c3afaSMarek Vasut pgc_audio: power-domain@5 { 810b86c3afaSMarek Vasut #power-domain-cells = <0>; 811b86c3afaSMarek Vasut reg = <IMX8MP_POWER_DOMAIN_AUDIOMIX>; 812b86c3afaSMarek Vasut clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 813b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_AXI>; 814b739681bSAdam Ford assigned-clocks = <&clk IMX8MP_CLK_AUDIO_AHB>, 815b739681bSAdam Ford <&clk IMX8MP_CLK_AUDIO_AXI_SRC>; 816b739681bSAdam Ford assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 817b739681bSAdam Ford <&clk IMX8MP_SYS_PLL1_800M>; 818b739681bSAdam Ford assigned-clock-rates = <400000000>, 819b739681bSAdam Ford <600000000>; 820b86c3afaSMarek Vasut }; 821b86c3afaSMarek Vasut 822fc0f0512SLucas Stach pgc_gpu2d: power-domain@6 { 823fc0f0512SLucas Stach #power-domain-cells = <0>; 824fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPU2D>; 825fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>; 826fc0f0512SLucas Stach power-domains = <&pgc_gpumix>; 827fc0f0512SLucas Stach }; 828fc0f0512SLucas Stach 829fc0f0512SLucas Stach pgc_gpumix: power-domain@7 { 830fc0f0512SLucas Stach #power-domain-cells = <0>; 831fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPUMIX>; 832fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU_ROOT>, 833fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 834fc0f0512SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU_AXI>, 835fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 836fc0f0512SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 837fc0f0512SLucas Stach <&clk IMX8MP_SYS_PLL1_800M>; 838fc0f0512SLucas Stach assigned-clock-rates = <800000000>, <400000000>; 839fc0f0512SLucas Stach }; 840fc0f0512SLucas Stach 8412f8405fbSAdam Ford pgc_vpumix: power-domain@8 { 8422f8405fbSAdam Ford #power-domain-cells = <0>; 8432f8405fbSAdam Ford reg = <IMX8MP_POWER_DOMAIN_VPUMIX>; 8442f8405fbSAdam Ford clocks = <&clk IMX8MP_CLK_VPU_ROOT>; 8452f8405fbSAdam Ford }; 8462f8405fbSAdam Ford 847fc0f0512SLucas Stach pgc_gpu3d: power-domain@9 { 848fc0f0512SLucas Stach #power-domain-cells = <0>; 849fc0f0512SLucas Stach reg = <IMX8MP_POWER_DOMAIN_GPU3D>; 850fc0f0512SLucas Stach clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 851fc0f0512SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 852fc0f0512SLucas Stach power-domains = <&pgc_gpumix>; 853fc0f0512SLucas Stach }; 8542ae42e0cSLucas Stach 8559d89189dSLaurent Pinchart pgc_mediamix: power-domain@10 { 8569d89189dSLaurent Pinchart #power-domain-cells = <0>; 8579d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX>; 8589d89189dSLaurent Pinchart clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 8599d89189dSLaurent Pinchart <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 8609d89189dSLaurent Pinchart }; 8619d89189dSLaurent Pinchart 8622f8405fbSAdam Ford pgc_vpu_g1: power-domain@11 { 8632f8405fbSAdam Ford #power-domain-cells = <0>; 8642f8405fbSAdam Ford power-domains = <&pgc_vpumix>; 8652f8405fbSAdam Ford reg = <IMX8MP_POWER_DOMAIN_VPU_G1>; 8662f8405fbSAdam Ford clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 8672f8405fbSAdam Ford }; 8682f8405fbSAdam Ford 8692f8405fbSAdam Ford pgc_vpu_g2: power-domain@12 { 8702f8405fbSAdam Ford #power-domain-cells = <0>; 8712f8405fbSAdam Ford power-domains = <&pgc_vpumix>; 8722f8405fbSAdam Ford reg = <IMX8MP_POWER_DOMAIN_VPU_G2>; 8732f8405fbSAdam Ford clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 8742f8405fbSAdam Ford 8752f8405fbSAdam Ford }; 8762f8405fbSAdam Ford 8772f8405fbSAdam Ford pgc_vpu_vc8000e: power-domain@13 { 8782f8405fbSAdam Ford #power-domain-cells = <0>; 8792f8405fbSAdam Ford power-domains = <&pgc_vpumix>; 8802f8405fbSAdam Ford reg = <IMX8MP_POWER_DOMAIN_VPU_VC8000E>; 8812f8405fbSAdam Ford clocks = <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 8822f8405fbSAdam Ford }; 8832f8405fbSAdam Ford 884f6772c58SLucas Stach pgc_hdmimix: power-domain@14 { 885f6772c58SLucas Stach #power-domain-cells = <0>; 886f6772c58SLucas Stach reg = <IMX8MP_POWER_DOMAIN_HDMIMIX>; 887f6772c58SLucas Stach clocks = <&clk IMX8MP_CLK_HDMI_ROOT>, 888f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_APB>; 889f6772c58SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_HDMI_AXI>, 890f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_APB>; 891f6772c58SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_500M>, 892f6772c58SLucas Stach <&clk IMX8MP_SYS_PLL1_133M>; 893f6772c58SLucas Stach assigned-clock-rates = <500000000>, <133000000>; 894f6772c58SLucas Stach }; 895f6772c58SLucas Stach 896f6772c58SLucas Stach pgc_hdmi_phy: power-domain@15 { 897f6772c58SLucas Stach #power-domain-cells = <0>; 898f6772c58SLucas Stach reg = <IMX8MP_POWER_DOMAIN_HDMI_PHY>; 899f6772c58SLucas Stach }; 900f6772c58SLucas Stach 9019d89189dSLaurent Pinchart pgc_mipi_phy2: power-domain@16 { 9029d89189dSLaurent Pinchart #power-domain-cells = <0>; 9039d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY2>; 9049d89189dSLaurent Pinchart }; 9059d89189dSLaurent Pinchart 90610e2f328SAdam Ford pgc_hsiomix: power-domain@17 { 9072ae42e0cSLucas Stach #power-domain-cells = <0>; 9082ae42e0cSLucas Stach reg = <IMX8MP_POWER_DOMAIN_HSIOMIX>; 9092ae42e0cSLucas Stach clocks = <&clk IMX8MP_CLK_HSIO_AXI>, 9102ae42e0cSLucas Stach <&clk IMX8MP_CLK_HSIO_ROOT>; 9112ae42e0cSLucas Stach assigned-clocks = <&clk IMX8MP_CLK_HSIO_AXI>; 9122ae42e0cSLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_500M>; 9132ae42e0cSLucas Stach assigned-clock-rates = <500000000>; 9142ae42e0cSLucas Stach }; 9159d89189dSLaurent Pinchart 9169d89189dSLaurent Pinchart pgc_ispdwp: power-domain@18 { 9179d89189dSLaurent Pinchart #power-domain-cells = <0>; 9189d89189dSLaurent Pinchart reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX_ISPDWP>; 9193fdd4ef4SPeng Fan clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>; 9209d89189dSLaurent Pinchart }; 921fc0f0512SLucas Stach }; 922fc0f0512SLucas Stach }; 9236d9b8d20SAnson Huang }; 9246d9b8d20SAnson Huang 9256d9b8d20SAnson Huang aips2: bus@30400000 { 926dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 927921a6845SFabio Estevam reg = <0x30400000 0x400000>; 9286d9b8d20SAnson Huang #address-cells = <1>; 9296d9b8d20SAnson Huang #size-cells = <1>; 9306d9b8d20SAnson Huang ranges; 9316d9b8d20SAnson Huang 9326d9b8d20SAnson Huang pwm1: pwm@30660000 { 9336d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9346d9b8d20SAnson Huang reg = <0x30660000 0x10000>; 9356d9b8d20SAnson Huang interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 9366d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM1_ROOT>, 9376d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM1_ROOT>; 9386d9b8d20SAnson Huang clock-names = "ipg", "per"; 939d80b9c84SMarkus Niebel #pwm-cells = <3>; 9406d9b8d20SAnson Huang status = "disabled"; 9416d9b8d20SAnson Huang }; 9426d9b8d20SAnson Huang 9436d9b8d20SAnson Huang pwm2: pwm@30670000 { 9446d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9456d9b8d20SAnson Huang reg = <0x30670000 0x10000>; 9466d9b8d20SAnson Huang interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 9476d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM2_ROOT>, 9486d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM2_ROOT>; 9496d9b8d20SAnson Huang clock-names = "ipg", "per"; 950d80b9c84SMarkus Niebel #pwm-cells = <3>; 9516d9b8d20SAnson Huang status = "disabled"; 9526d9b8d20SAnson Huang }; 9536d9b8d20SAnson Huang 9546d9b8d20SAnson Huang pwm3: pwm@30680000 { 9556d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9566d9b8d20SAnson Huang reg = <0x30680000 0x10000>; 9576d9b8d20SAnson Huang interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 9586d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM3_ROOT>, 9596d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM3_ROOT>; 9606d9b8d20SAnson Huang clock-names = "ipg", "per"; 961d80b9c84SMarkus Niebel #pwm-cells = <3>; 9626d9b8d20SAnson Huang status = "disabled"; 9636d9b8d20SAnson Huang }; 9646d9b8d20SAnson Huang 9656d9b8d20SAnson Huang pwm4: pwm@30690000 { 9666d9b8d20SAnson Huang compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 9676d9b8d20SAnson Huang reg = <0x30690000 0x10000>; 9686d9b8d20SAnson Huang interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 9696d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_PWM4_ROOT>, 9706d9b8d20SAnson Huang <&clk IMX8MP_CLK_PWM4_ROOT>; 9716d9b8d20SAnson Huang clock-names = "ipg", "per"; 972d80b9c84SMarkus Niebel #pwm-cells = <3>; 9736d9b8d20SAnson Huang status = "disabled"; 9746d9b8d20SAnson Huang }; 975fae58b1aSAnson Huang 976fae58b1aSAnson Huang system_counter: timer@306a0000 { 977fae58b1aSAnson Huang compatible = "nxp,sysctr-timer"; 978fae58b1aSAnson Huang reg = <0x306a0000 0x20000>; 979fae58b1aSAnson Huang interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 980fae58b1aSAnson Huang clocks = <&osc_24m>; 981fae58b1aSAnson Huang clock-names = "per"; 982fae58b1aSAnson Huang }; 9837c0277abSUwe Kleine-König 9847c0277abSUwe Kleine-König gpt6: timer@306e0000 { 9857c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 9867c0277abSUwe Kleine-König reg = <0x306e0000 0x10000>; 9877c0277abSUwe Kleine-König interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 9887c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT6_ROOT>, <&clk IMX8MP_CLK_GPT6>; 9897c0277abSUwe Kleine-König clock-names = "ipg", "per"; 9907c0277abSUwe Kleine-König }; 9917c0277abSUwe Kleine-König 9927c0277abSUwe Kleine-König gpt5: timer@306f0000 { 9937c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 9947c0277abSUwe Kleine-König reg = <0x306f0000 0x10000>; 9957c0277abSUwe Kleine-König interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 9967c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT5_ROOT>, <&clk IMX8MP_CLK_GPT5>; 9977c0277abSUwe Kleine-König clock-names = "ipg", "per"; 9987c0277abSUwe Kleine-König }; 9997c0277abSUwe Kleine-König 10007c0277abSUwe Kleine-König gpt4: timer@30700000 { 10017c0277abSUwe Kleine-König compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 10027c0277abSUwe Kleine-König reg = <0x30700000 0x10000>; 10037c0277abSUwe Kleine-König interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 10047c0277abSUwe Kleine-König clocks = <&clk IMX8MP_CLK_GPT4_ROOT>, <&clk IMX8MP_CLK_GPT4>; 10057c0277abSUwe Kleine-König clock-names = "ipg", "per"; 10067c0277abSUwe Kleine-König }; 10076d9b8d20SAnson Huang }; 10086d9b8d20SAnson Huang 10096d9b8d20SAnson Huang aips3: bus@30800000 { 1010dc3efc6fSPeng Fan compatible = "fsl,aips-bus", "simple-bus"; 1011921a6845SFabio Estevam reg = <0x30800000 0x400000>; 10126d9b8d20SAnson Huang #address-cells = <1>; 10136d9b8d20SAnson Huang #size-cells = <1>; 10146d9b8d20SAnson Huang ranges; 10156d9b8d20SAnson Huang 10169424e7f0SAdam Ford spba-bus@30800000 { 10179424e7f0SAdam Ford compatible = "fsl,spba-bus", "simple-bus"; 10189424e7f0SAdam Ford reg = <0x30800000 0x100000>; 10199424e7f0SAdam Ford #address-cells = <1>; 10209424e7f0SAdam Ford #size-cells = <1>; 10219424e7f0SAdam Ford ranges; 10229424e7f0SAdam Ford 10236d9b8d20SAnson Huang ecspi1: spi@30820000 { 10246d9b8d20SAnson Huang #address-cells = <1>; 10256d9b8d20SAnson Huang #size-cells = <0>; 102648d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 10276d9b8d20SAnson Huang reg = <0x30820000 0x10000>; 10286d9b8d20SAnson Huang interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 10296d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI1_ROOT>, 10306d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI1_ROOT>; 10316d9b8d20SAnson Huang clock-names = "ipg", "per"; 103248d74376SPeng Fan assigned-clock-rates = <80000000>; 103348d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI1>; 103448d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 10356d9b8d20SAnson Huang dmas = <&sdma1 0 7 1>, <&sdma1 1 7 2>; 10366d9b8d20SAnson Huang dma-names = "rx", "tx"; 10376d9b8d20SAnson Huang status = "disabled"; 10386d9b8d20SAnson Huang }; 10396d9b8d20SAnson Huang 10406d9b8d20SAnson Huang ecspi2: spi@30830000 { 10416d9b8d20SAnson Huang #address-cells = <1>; 10426d9b8d20SAnson Huang #size-cells = <0>; 104348d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 10446d9b8d20SAnson Huang reg = <0x30830000 0x10000>; 10456d9b8d20SAnson Huang interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 10466d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI2_ROOT>, 10476d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI2_ROOT>; 10486d9b8d20SAnson Huang clock-names = "ipg", "per"; 104948d74376SPeng Fan assigned-clock-rates = <80000000>; 105048d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI2>; 105148d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 10526d9b8d20SAnson Huang dmas = <&sdma1 2 7 1>, <&sdma1 3 7 2>; 10536d9b8d20SAnson Huang dma-names = "rx", "tx"; 10546d9b8d20SAnson Huang status = "disabled"; 10556d9b8d20SAnson Huang }; 10566d9b8d20SAnson Huang 10576d9b8d20SAnson Huang ecspi3: spi@30840000 { 10586d9b8d20SAnson Huang #address-cells = <1>; 10596d9b8d20SAnson Huang #size-cells = <0>; 106048d74376SPeng Fan compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 10616d9b8d20SAnson Huang reg = <0x30840000 0x10000>; 10626d9b8d20SAnson Huang interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 10636d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ECSPI3_ROOT>, 10646d9b8d20SAnson Huang <&clk IMX8MP_CLK_ECSPI3_ROOT>; 10656d9b8d20SAnson Huang clock-names = "ipg", "per"; 106648d74376SPeng Fan assigned-clock-rates = <80000000>; 106748d74376SPeng Fan assigned-clocks = <&clk IMX8MP_CLK_ECSPI3>; 106848d74376SPeng Fan assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 10696d9b8d20SAnson Huang dmas = <&sdma1 4 7 1>, <&sdma1 5 7 2>; 10706d9b8d20SAnson Huang dma-names = "rx", "tx"; 10716d9b8d20SAnson Huang status = "disabled"; 10726d9b8d20SAnson Huang }; 10736d9b8d20SAnson Huang 10746d9b8d20SAnson Huang uart1: serial@30860000 { 10756d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 10766d9b8d20SAnson Huang reg = <0x30860000 0x10000>; 10776d9b8d20SAnson Huang interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 10786d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART1_ROOT>, 10796d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART1_ROOT>; 10806d9b8d20SAnson Huang clock-names = "ipg", "per"; 10816d9b8d20SAnson Huang dmas = <&sdma1 22 4 0>, <&sdma1 23 4 0>; 10826d9b8d20SAnson Huang dma-names = "rx", "tx"; 10836d9b8d20SAnson Huang status = "disabled"; 10846d9b8d20SAnson Huang }; 10856d9b8d20SAnson Huang 10866d9b8d20SAnson Huang uart3: serial@30880000 { 10876d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 10886d9b8d20SAnson Huang reg = <0x30880000 0x10000>; 10896d9b8d20SAnson Huang interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 10906d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART3_ROOT>, 10916d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART3_ROOT>; 10926d9b8d20SAnson Huang clock-names = "ipg", "per"; 10936d9b8d20SAnson Huang dmas = <&sdma1 26 4 0>, <&sdma1 27 4 0>; 10946d9b8d20SAnson Huang dma-names = "rx", "tx"; 10956d9b8d20SAnson Huang status = "disabled"; 10966d9b8d20SAnson Huang }; 10976d9b8d20SAnson Huang 10986d9b8d20SAnson Huang uart2: serial@30890000 { 10996d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 11006d9b8d20SAnson Huang reg = <0x30890000 0x10000>; 11016d9b8d20SAnson Huang interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 11026d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART2_ROOT>, 11036d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART2_ROOT>; 11046d9b8d20SAnson Huang clock-names = "ipg", "per"; 1105a00f1fa6SMarcel Ziswiler dmas = <&sdma1 24 4 0>, <&sdma1 25 4 0>; 1106a00f1fa6SMarcel Ziswiler dma-names = "rx", "tx"; 11076d9b8d20SAnson Huang status = "disabled"; 11086d9b8d20SAnson Huang }; 11096d9b8d20SAnson Huang 11103a7d56b3SJoakim Zhang flexcan1: can@308c0000 { 1111f5d156c7SJoakim Zhang compatible = "fsl,imx8mp-flexcan"; 11123a7d56b3SJoakim Zhang reg = <0x308c0000 0x10000>; 11133a7d56b3SJoakim Zhang interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 11143a7d56b3SJoakim Zhang clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 11153a7d56b3SJoakim Zhang <&clk IMX8MP_CLK_CAN1_ROOT>; 11163a7d56b3SJoakim Zhang clock-names = "ipg", "per"; 11173a7d56b3SJoakim Zhang assigned-clocks = <&clk IMX8MP_CLK_CAN1>; 11183a7d56b3SJoakim Zhang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 11193a7d56b3SJoakim Zhang assigned-clock-rates = <40000000>; 11203a7d56b3SJoakim Zhang fsl,clk-source = /bits/ 8 <0>; 11213a7d56b3SJoakim Zhang fsl,stop-mode = <&gpr 0x10 4>; 11223a7d56b3SJoakim Zhang status = "disabled"; 11233a7d56b3SJoakim Zhang }; 11243a7d56b3SJoakim Zhang 11253a7d56b3SJoakim Zhang flexcan2: can@308d0000 { 1126f5d156c7SJoakim Zhang compatible = "fsl,imx8mp-flexcan"; 11273a7d56b3SJoakim Zhang reg = <0x308d0000 0x10000>; 11283a7d56b3SJoakim Zhang interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 11293a7d56b3SJoakim Zhang clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 11303a7d56b3SJoakim Zhang <&clk IMX8MP_CLK_CAN2_ROOT>; 11313a7d56b3SJoakim Zhang clock-names = "ipg", "per"; 11323a7d56b3SJoakim Zhang assigned-clocks = <&clk IMX8MP_CLK_CAN2>; 11333a7d56b3SJoakim Zhang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 11343a7d56b3SJoakim Zhang assigned-clock-rates = <40000000>; 11353a7d56b3SJoakim Zhang fsl,clk-source = /bits/ 8 <0>; 11363a7d56b3SJoakim Zhang fsl,stop-mode = <&gpr 0x10 5>; 11373a7d56b3SJoakim Zhang status = "disabled"; 11383a7d56b3SJoakim Zhang }; 11399424e7f0SAdam Ford }; 11403a7d56b3SJoakim Zhang 1141d3a719e3SHoria Geantă crypto: crypto@30900000 { 1142d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0"; 1143d3a719e3SHoria Geantă #address-cells = <1>; 1144d3a719e3SHoria Geantă #size-cells = <1>; 1145d3a719e3SHoria Geantă reg = <0x30900000 0x40000>; 1146d3a719e3SHoria Geantă ranges = <0 0x30900000 0x40000>; 1147d3a719e3SHoria Geantă interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 1148d3a719e3SHoria Geantă clocks = <&clk IMX8MP_CLK_AHB>, 1149d3a719e3SHoria Geantă <&clk IMX8MP_CLK_IPG_ROOT>; 1150d3a719e3SHoria Geantă clock-names = "aclk", "ipg"; 1151d3a719e3SHoria Geantă 1152d3a719e3SHoria Geantă sec_jr0: jr@1000 { 1153d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1154d3a719e3SHoria Geantă reg = <0x1000 0x1000>; 1155d3a719e3SHoria Geantă interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 1156dc9c1cebSFabio Estevam status = "disabled"; 1157d3a719e3SHoria Geantă }; 1158d3a719e3SHoria Geantă 1159d3a719e3SHoria Geantă sec_jr1: jr@2000 { 1160d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1161d3a719e3SHoria Geantă reg = <0x2000 0x1000>; 1162d3a719e3SHoria Geantă interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 1163d3a719e3SHoria Geantă }; 1164d3a719e3SHoria Geantă 1165d3a719e3SHoria Geantă sec_jr2: jr@3000 { 1166d3a719e3SHoria Geantă compatible = "fsl,sec-v4.0-job-ring"; 1167d3a719e3SHoria Geantă reg = <0x3000 0x1000>; 1168d3a719e3SHoria Geantă interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 1169d3a719e3SHoria Geantă }; 1170d3a719e3SHoria Geantă }; 1171d3a719e3SHoria Geantă 11726d9b8d20SAnson Huang i2c1: i2c@30a20000 { 11736d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11746d9b8d20SAnson Huang #address-cells = <1>; 11756d9b8d20SAnson Huang #size-cells = <0>; 11766d9b8d20SAnson Huang reg = <0x30a20000 0x10000>; 11776d9b8d20SAnson Huang interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 11786d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C1_ROOT>; 11796d9b8d20SAnson Huang status = "disabled"; 11806d9b8d20SAnson Huang }; 11816d9b8d20SAnson Huang 11826d9b8d20SAnson Huang i2c2: i2c@30a30000 { 11836d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11846d9b8d20SAnson Huang #address-cells = <1>; 11856d9b8d20SAnson Huang #size-cells = <0>; 11866d9b8d20SAnson Huang reg = <0x30a30000 0x10000>; 11876d9b8d20SAnson Huang interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 11886d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C2_ROOT>; 11896d9b8d20SAnson Huang status = "disabled"; 11906d9b8d20SAnson Huang }; 11916d9b8d20SAnson Huang 11926d9b8d20SAnson Huang i2c3: i2c@30a40000 { 11936d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 11946d9b8d20SAnson Huang #address-cells = <1>; 11956d9b8d20SAnson Huang #size-cells = <0>; 11966d9b8d20SAnson Huang reg = <0x30a40000 0x10000>; 11976d9b8d20SAnson Huang interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 11986d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C3_ROOT>; 11996d9b8d20SAnson Huang status = "disabled"; 12006d9b8d20SAnson Huang }; 12016d9b8d20SAnson Huang 12026d9b8d20SAnson Huang i2c4: i2c@30a50000 { 12036d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 12046d9b8d20SAnson Huang #address-cells = <1>; 12056d9b8d20SAnson Huang #size-cells = <0>; 12066d9b8d20SAnson Huang reg = <0x30a50000 0x10000>; 12076d9b8d20SAnson Huang interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 12086d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C4_ROOT>; 12096d9b8d20SAnson Huang status = "disabled"; 12106d9b8d20SAnson Huang }; 12116d9b8d20SAnson Huang 12126d9b8d20SAnson Huang uart4: serial@30a60000 { 12136d9b8d20SAnson Huang compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 12146d9b8d20SAnson Huang reg = <0x30a60000 0x10000>; 12156d9b8d20SAnson Huang interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 12166d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_UART4_ROOT>, 12176d9b8d20SAnson Huang <&clk IMX8MP_CLK_UART4_ROOT>; 12186d9b8d20SAnson Huang clock-names = "ipg", "per"; 12196d9b8d20SAnson Huang dmas = <&sdma1 28 4 0>, <&sdma1 29 4 0>; 12206d9b8d20SAnson Huang dma-names = "rx", "tx"; 12216d9b8d20SAnson Huang status = "disabled"; 12226d9b8d20SAnson Huang }; 12236d9b8d20SAnson Huang 1224bbfc59beSPeng Fan mu: mailbox@30aa0000 { 1225bbfc59beSPeng Fan compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1226bbfc59beSPeng Fan reg = <0x30aa0000 0x10000>; 1227bbfc59beSPeng Fan interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 1228bbfc59beSPeng Fan clocks = <&clk IMX8MP_CLK_MU_ROOT>; 1229bbfc59beSPeng Fan #mbox-cells = <2>; 1230bbfc59beSPeng Fan }; 1231bbfc59beSPeng Fan 1232bc3ab388SDaniel Baluta mu2: mailbox@30e60000 { 1233bc3ab388SDaniel Baluta compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1234bc3ab388SDaniel Baluta reg = <0x30e60000 0x10000>; 1235bc3ab388SDaniel Baluta interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 1236bc3ab388SDaniel Baluta #mbox-cells = <2>; 1237bc3ab388SDaniel Baluta status = "disabled"; 1238bc3ab388SDaniel Baluta }; 1239bc3ab388SDaniel Baluta 12406d9b8d20SAnson Huang i2c5: i2c@30ad0000 { 12416d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 12426d9b8d20SAnson Huang #address-cells = <1>; 12436d9b8d20SAnson Huang #size-cells = <0>; 12446d9b8d20SAnson Huang reg = <0x30ad0000 0x10000>; 12456d9b8d20SAnson Huang interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 12466d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C5_ROOT>; 12476d9b8d20SAnson Huang status = "disabled"; 12486d9b8d20SAnson Huang }; 12496d9b8d20SAnson Huang 12506d9b8d20SAnson Huang i2c6: i2c@30ae0000 { 12516d9b8d20SAnson Huang compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 12526d9b8d20SAnson Huang #address-cells = <1>; 12536d9b8d20SAnson Huang #size-cells = <0>; 12546d9b8d20SAnson Huang reg = <0x30ae0000 0x10000>; 12556d9b8d20SAnson Huang interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 12566d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_I2C6_ROOT>; 12576d9b8d20SAnson Huang status = "disabled"; 12586d9b8d20SAnson Huang }; 12596d9b8d20SAnson Huang 12606d9b8d20SAnson Huang usdhc1: mmc@30b40000 { 1261746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12626d9b8d20SAnson Huang reg = <0x30b40000 0x10000>; 12636d9b8d20SAnson Huang interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 1264*eab6ba2aSPeng Fan clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 12656d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12666d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC1_ROOT>; 12676d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12686d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12696d9b8d20SAnson Huang fsl,tuning-step = <2>; 12706d9b8d20SAnson Huang bus-width = <4>; 12716d9b8d20SAnson Huang status = "disabled"; 12726d9b8d20SAnson Huang }; 12736d9b8d20SAnson Huang 12746d9b8d20SAnson Huang usdhc2: mmc@30b50000 { 1275746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12766d9b8d20SAnson Huang reg = <0x30b50000 0x10000>; 12776d9b8d20SAnson Huang interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 1278*eab6ba2aSPeng Fan clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 12796d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12806d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC2_ROOT>; 12816d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12826d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12836d9b8d20SAnson Huang fsl,tuning-step = <2>; 12846d9b8d20SAnson Huang bus-width = <4>; 12856d9b8d20SAnson Huang status = "disabled"; 12866d9b8d20SAnson Huang }; 12876d9b8d20SAnson Huang 12886d9b8d20SAnson Huang usdhc3: mmc@30b60000 { 1289746a7241SAdam Ford compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 12906d9b8d20SAnson Huang reg = <0x30b60000 0x10000>; 12916d9b8d20SAnson Huang interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 1292*eab6ba2aSPeng Fan clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 12936d9b8d20SAnson Huang <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 12946d9b8d20SAnson Huang <&clk IMX8MP_CLK_USDHC3_ROOT>; 12956d9b8d20SAnson Huang clock-names = "ipg", "ahb", "per"; 12966d9b8d20SAnson Huang fsl,tuning-start-tap = <20>; 12976d9b8d20SAnson Huang fsl,tuning-step = <2>; 12986d9b8d20SAnson Huang bus-width = <4>; 12996d9b8d20SAnson Huang status = "disabled"; 13006d9b8d20SAnson Huang }; 13016d9b8d20SAnson Huang 13026914d1baSHeiko Schocher flexspi: spi@30bb0000 { 13036914d1baSHeiko Schocher compatible = "nxp,imx8mp-fspi"; 13046914d1baSHeiko Schocher reg = <0x30bb0000 0x10000>, <0x8000000 0x10000000>; 13056914d1baSHeiko Schocher reg-names = "fspi_base", "fspi_mmap"; 13066914d1baSHeiko Schocher interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 13076914d1baSHeiko Schocher clocks = <&clk IMX8MP_CLK_QSPI_ROOT>, 13086914d1baSHeiko Schocher <&clk IMX8MP_CLK_QSPI_ROOT>; 1309d7cd7446SKuldeep Singh clock-names = "fspi_en", "fspi"; 13106914d1baSHeiko Schocher assigned-clock-rates = <80000000>; 13116914d1baSHeiko Schocher assigned-clocks = <&clk IMX8MP_CLK_QSPI>; 13126914d1baSHeiko Schocher #address-cells = <1>; 13136914d1baSHeiko Schocher #size-cells = <0>; 13146914d1baSHeiko Schocher status = "disabled"; 13156914d1baSHeiko Schocher }; 13166914d1baSHeiko Schocher 13176d9b8d20SAnson Huang sdma1: dma-controller@30bd0000 { 13186d9b8d20SAnson Huang compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 13196d9b8d20SAnson Huang reg = <0x30bd0000 0x10000>; 13206d9b8d20SAnson Huang interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 13216d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_SDMA1_ROOT>, 132266138621SRobin Gong <&clk IMX8MP_CLK_AHB>; 13236d9b8d20SAnson Huang clock-names = "ipg", "ahb"; 13246d9b8d20SAnson Huang #dma-cells = <3>; 13256d9b8d20SAnson Huang fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 13266d9b8d20SAnson Huang }; 13276d9b8d20SAnson Huang 13286d9b8d20SAnson Huang fec: ethernet@30be0000 { 1329f9654d26SFugang Duan compatible = "fsl,imx8mp-fec", "fsl,imx8mq-fec", "fsl,imx6sx-fec"; 13306d9b8d20SAnson Huang reg = <0x30be0000 0x10000>; 13316d9b8d20SAnson Huang interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 13326d9b8d20SAnson Huang <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 1333d3762a47SFabio Estevam <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 1334d3762a47SFabio Estevam <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 13356d9b8d20SAnson Huang clocks = <&clk IMX8MP_CLK_ENET1_ROOT>, 13366d9b8d20SAnson Huang <&clk IMX8MP_CLK_SIM_ENET_ROOT>, 13376d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_TIMER>, 13386d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_REF>, 13396d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_PHY_REF>; 13406d9b8d20SAnson Huang clock-names = "ipg", "ahb", "ptp", 13416d9b8d20SAnson Huang "enet_clk_ref", "enet_out"; 13426d9b8d20SAnson Huang assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 13436d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_TIMER>, 13446d9b8d20SAnson Huang <&clk IMX8MP_CLK_ENET_REF>, 134570eacf42SJoakim Zhang <&clk IMX8MP_CLK_ENET_PHY_REF>; 13466d9b8d20SAnson Huang assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 13476d9b8d20SAnson Huang <&clk IMX8MP_SYS_PLL2_100M>, 134870eacf42SJoakim Zhang <&clk IMX8MP_SYS_PLL2_125M>, 134970eacf42SJoakim Zhang <&clk IMX8MP_SYS_PLL2_50M>; 135070eacf42SJoakim Zhang assigned-clock-rates = <0>, <100000000>, <125000000>, <0>; 13516d9b8d20SAnson Huang fsl,num-tx-queues = <3>; 13526d9b8d20SAnson Huang fsl,num-rx-queues = <3>; 1353066438aeSJoakim Zhang nvmem-cells = <ð_mac1>; 1354066438aeSJoakim Zhang nvmem-cell-names = "mac-address"; 1355afe99354SJoakim Zhang fsl,stop-mode = <&gpr 0x10 3>; 13566d9b8d20SAnson Huang status = "disabled"; 13576d9b8d20SAnson Huang }; 1358ec4d1196SMarek Vasut 1359ec4d1196SMarek Vasut eqos: ethernet@30bf0000 { 1360ec4d1196SMarek Vasut compatible = "nxp,imx8mp-dwmac-eqos", "snps,dwmac-5.10a"; 1361ec4d1196SMarek Vasut reg = <0x30bf0000 0x10000>; 136277e5253dSJoakim Zhang interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 136377e5253dSJoakim Zhang <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 136477e5253dSJoakim Zhang interrupt-names = "macirq", "eth_wake_irq"; 1365ec4d1196SMarek Vasut clocks = <&clk IMX8MP_CLK_ENET_QOS_ROOT>, 1366ec4d1196SMarek Vasut <&clk IMX8MP_CLK_QOS_ENET_ROOT>, 1367ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 1368ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS>; 1369ec4d1196SMarek Vasut clock-names = "stmmaceth", "pclk", "ptp_ref", "tx"; 1370ec4d1196SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 1371ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 1372ec4d1196SMarek Vasut <&clk IMX8MP_CLK_ENET_QOS>; 1373ec4d1196SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 1374ec4d1196SMarek Vasut <&clk IMX8MP_SYS_PLL2_100M>, 1375ec4d1196SMarek Vasut <&clk IMX8MP_SYS_PLL2_125M>; 1376ec4d1196SMarek Vasut assigned-clock-rates = <0>, <100000000>, <125000000>; 137744d0dfeeSJoakim Zhang nvmem-cells = <ð_mac2>; 137844d0dfeeSJoakim Zhang nvmem-cell-names = "mac-address"; 1379ec4d1196SMarek Vasut intf_mode = <&gpr 0x4>; 1380ec4d1196SMarek Vasut status = "disabled"; 1381ec4d1196SMarek Vasut }; 13826d9b8d20SAnson Huang }; 13836d9b8d20SAnson Huang 1384b86c3afaSMarek Vasut aips5: bus@30c00000 { 1385b86c3afaSMarek Vasut compatible = "fsl,aips-bus", "simple-bus"; 1386b86c3afaSMarek Vasut reg = <0x30c00000 0x400000>; 1387b86c3afaSMarek Vasut #address-cells = <1>; 1388b86c3afaSMarek Vasut #size-cells = <1>; 1389b86c3afaSMarek Vasut ranges; 1390b86c3afaSMarek Vasut 1391b86c3afaSMarek Vasut spba-bus@30c00000 { 1392b86c3afaSMarek Vasut compatible = "fsl,spba-bus", "simple-bus"; 1393b86c3afaSMarek Vasut reg = <0x30c00000 0x100000>; 1394b86c3afaSMarek Vasut #address-cells = <1>; 1395b86c3afaSMarek Vasut #size-cells = <1>; 1396b86c3afaSMarek Vasut ranges; 1397b86c3afaSMarek Vasut 1398b86c3afaSMarek Vasut sai1: sai@30c10000 { 1399b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1400b86c3afaSMarek Vasut reg = <0x30c10000 0x10000>; 1401b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1402b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_IPG>, 1403b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1404b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>, 1405b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK2>, 1406b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK3>; 1407b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1408b86c3afaSMarek Vasut dmas = <&sdma2 0 2 0>, <&sdma2 1 2 0>; 1409b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1410b86c3afaSMarek Vasut interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 1411b86c3afaSMarek Vasut status = "disabled"; 1412b86c3afaSMarek Vasut }; 1413b86c3afaSMarek Vasut 1414b86c3afaSMarek Vasut sai2: sai@30c20000 { 1415b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1416b86c3afaSMarek Vasut reg = <0x30c20000 0x10000>; 1417b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1418b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_IPG>, 1419b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1420b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK1>, 1421b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK2>, 1422b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK3>; 1423b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1424b86c3afaSMarek Vasut dmas = <&sdma2 2 2 0>, <&sdma2 3 2 0>; 1425b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1426b86c3afaSMarek Vasut interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 1427b86c3afaSMarek Vasut status = "disabled"; 1428b86c3afaSMarek Vasut }; 1429b86c3afaSMarek Vasut 1430b86c3afaSMarek Vasut sai3: sai@30c30000 { 1431b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1432b86c3afaSMarek Vasut reg = <0x30c30000 0x10000>; 1433b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1434b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_IPG>, 1435b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1436b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>, 1437b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK2>, 1438b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK3>; 1439b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1440b86c3afaSMarek Vasut dmas = <&sdma2 4 2 0>, <&sdma2 5 2 0>; 1441b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1442b86c3afaSMarek Vasut interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 1443b86c3afaSMarek Vasut status = "disabled"; 1444b86c3afaSMarek Vasut }; 1445b86c3afaSMarek Vasut 1446b86c3afaSMarek Vasut sai5: sai@30c50000 { 1447b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1448b86c3afaSMarek Vasut reg = <0x30c50000 0x10000>; 1449b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1450b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_IPG>, 1451b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1452b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK1>, 1453b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK2>, 1454b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK3>; 1455b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1456b86c3afaSMarek Vasut dmas = <&sdma2 8 2 0>, <&sdma2 9 2 0>; 1457b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1458b86c3afaSMarek Vasut interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1459b86c3afaSMarek Vasut status = "disabled"; 1460b86c3afaSMarek Vasut }; 1461b86c3afaSMarek Vasut 1462b86c3afaSMarek Vasut sai6: sai@30c60000 { 1463b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1464b86c3afaSMarek Vasut reg = <0x30c60000 0x10000>; 1465b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1466b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_IPG>, 1467b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1468b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK1>, 1469b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK2>, 1470b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK3>; 1471b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1472b86c3afaSMarek Vasut dmas = <&sdma2 10 2 0>, <&sdma2 11 2 0>; 1473b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1474b86c3afaSMarek Vasut interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1475b86c3afaSMarek Vasut status = "disabled"; 1476b86c3afaSMarek Vasut }; 1477b86c3afaSMarek Vasut 1478b86c3afaSMarek Vasut sai7: sai@30c80000 { 1479b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1480b86c3afaSMarek Vasut reg = <0x30c80000 0x10000>; 1481b86c3afaSMarek Vasut #sound-dai-cells = <0>; 1482b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_IPG>, 1483b86c3afaSMarek Vasut <&clk IMX8MP_CLK_DUMMY>, 1484b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK1>, 1485b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK2>, 1486b86c3afaSMarek Vasut <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK3>; 1487b86c3afaSMarek Vasut clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1488b86c3afaSMarek Vasut dmas = <&sdma2 12 2 0>, <&sdma2 13 2 0>; 1489b86c3afaSMarek Vasut dma-names = "rx", "tx"; 1490b86c3afaSMarek Vasut interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 1491b86c3afaSMarek Vasut status = "disabled"; 1492b86c3afaSMarek Vasut }; 149337e7b418SAdam Ford 149437e7b418SAdam Ford easrc: easrc@30c90000 { 149537e7b418SAdam Ford compatible = "fsl,imx8mp-easrc", "fsl,imx8mn-easrc"; 149637e7b418SAdam Ford reg = <0x30c90000 0x10000>; 149737e7b418SAdam Ford interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 149837e7b418SAdam Ford clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_ASRC_IPG>; 149937e7b418SAdam Ford clock-names = "mem"; 150037e7b418SAdam Ford dmas = <&sdma2 16 23 0> , <&sdma2 17 23 0>, 150137e7b418SAdam Ford <&sdma2 18 23 0> , <&sdma2 19 23 0>, 150237e7b418SAdam Ford <&sdma2 20 23 0> , <&sdma2 21 23 0>, 150337e7b418SAdam Ford <&sdma2 22 23 0> , <&sdma2 23 23 0>; 150437e7b418SAdam Ford dma-names = "ctx0_rx", "ctx0_tx", 150537e7b418SAdam Ford "ctx1_rx", "ctx1_tx", 150637e7b418SAdam Ford "ctx2_rx", "ctx2_tx", 150737e7b418SAdam Ford "ctx3_rx", "ctx3_tx"; 150837e7b418SAdam Ford firmware-name = "imx/easrc/easrc-imx8mn.bin"; 150937e7b418SAdam Ford fsl,asrc-rate = <8000>; 151037e7b418SAdam Ford fsl,asrc-format = <2>; 151137e7b418SAdam Ford status = "disabled"; 151237e7b418SAdam Ford }; 15135c6d04e4SAdam Ford 15145c6d04e4SAdam Ford micfil: audio-controller@30ca0000 { 15155c6d04e4SAdam Ford compatible = "fsl,imx8mp-micfil"; 15165c6d04e4SAdam Ford reg = <0x30ca0000 0x10000>; 15175c6d04e4SAdam Ford #sound-dai-cells = <0>; 15185c6d04e4SAdam Ford interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 15195c6d04e4SAdam Ford <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 15205c6d04e4SAdam Ford <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 15215c6d04e4SAdam Ford <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 15225c6d04e4SAdam Ford clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_IPG>, 15235c6d04e4SAdam Ford <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_SEL>, 15245c6d04e4SAdam Ford <&clk IMX8MP_AUDIO_PLL1_OUT>, 15255c6d04e4SAdam Ford <&clk IMX8MP_AUDIO_PLL2_OUT>, 15265c6d04e4SAdam Ford <&clk IMX8MP_CLK_EXT3>; 15275c6d04e4SAdam Ford clock-names = "ipg_clk", "ipg_clk_app", 15285c6d04e4SAdam Ford "pll8k", "pll11k", "clkext3"; 15295c6d04e4SAdam Ford dmas = <&sdma2 24 25 0x80000000>; 15305c6d04e4SAdam Ford dma-names = "rx"; 15315c6d04e4SAdam Ford status = "disabled"; 15325c6d04e4SAdam Ford }; 15335c6d04e4SAdam Ford 153412b1afc6SShengjiu Wang aud2htx: aud2htx@30cb0000 { 153512b1afc6SShengjiu Wang compatible = "fsl,imx8mp-aud2htx"; 153612b1afc6SShengjiu Wang reg = <0x30cb0000 0x10000>; 153712b1afc6SShengjiu Wang interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>; 153812b1afc6SShengjiu Wang clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_AUD2HTX_IPG>; 153912b1afc6SShengjiu Wang clock-names = "bus"; 154012b1afc6SShengjiu Wang dmas = <&sdma2 26 2 0>; 154112b1afc6SShengjiu Wang dma-names = "tx"; 154212b1afc6SShengjiu Wang status = "disabled"; 154312b1afc6SShengjiu Wang }; 154429c4d4c5SShengjiu Wang 154529c4d4c5SShengjiu Wang xcvr: xcvr@30cc0000 { 154629c4d4c5SShengjiu Wang compatible = "fsl,imx8mp-xcvr"; 154729c4d4c5SShengjiu Wang reg = <0x30cc0000 0x800>, 154829c4d4c5SShengjiu Wang <0x30cc0800 0x400>, 154929c4d4c5SShengjiu Wang <0x30cc0c00 0x080>, 155029c4d4c5SShengjiu Wang <0x30cc0e00 0x080>; 155129c4d4c5SShengjiu Wang reg-names = "ram", "regs", "rxfifo", 155229c4d4c5SShengjiu Wang "txfifo"; 155329c4d4c5SShengjiu Wang interrupts = /* XCVR IRQ 0 */ 155429c4d4c5SShengjiu Wang <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 155529c4d4c5SShengjiu Wang /* XCVR IRQ 1 */ 155629c4d4c5SShengjiu Wang <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 155729c4d4c5SShengjiu Wang /* XCVR PHY - SPDIF wakeup IRQ */ 155829c4d4c5SShengjiu Wang <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>; 155929c4d4c5SShengjiu Wang clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_EARC_IPG>, 156029c4d4c5SShengjiu Wang <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_EARC_PHY>, 156129c4d4c5SShengjiu Wang <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SPBA2_ROOT>, 156229c4d4c5SShengjiu Wang <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_AUDPLL_ROOT>; 156329c4d4c5SShengjiu Wang clock-names = "ipg", "phy", "spba", "pll_ipg"; 156429c4d4c5SShengjiu Wang dmas = <&sdma2 30 2 0>, <&sdma2 31 2 0>; 156529c4d4c5SShengjiu Wang dma-names = "rx", "tx"; 156629c4d4c5SShengjiu Wang resets = <&audio_blk_ctrl 0>; 156729c4d4c5SShengjiu Wang status = "disabled"; 156829c4d4c5SShengjiu Wang }; 1569b86c3afaSMarek Vasut }; 1570b86c3afaSMarek Vasut 1571b86c3afaSMarek Vasut sdma3: dma-controller@30e00000 { 1572b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1573b86c3afaSMarek Vasut reg = <0x30e00000 0x10000>; 1574b86c3afaSMarek Vasut #dma-cells = <3>; 1575b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA3_ROOT>, 1576b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_ROOT>; 1577b86c3afaSMarek Vasut clock-names = "ipg", "ahb"; 1578b86c3afaSMarek Vasut interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 1579b86c3afaSMarek Vasut fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1580b86c3afaSMarek Vasut }; 1581b86c3afaSMarek Vasut 1582b86c3afaSMarek Vasut sdma2: dma-controller@30e10000 { 1583b86c3afaSMarek Vasut compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1584b86c3afaSMarek Vasut reg = <0x30e10000 0x10000>; 1585b86c3afaSMarek Vasut #dma-cells = <3>; 1586b86c3afaSMarek Vasut clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA2_ROOT>, 1587b86c3afaSMarek Vasut <&clk IMX8MP_CLK_AUDIO_ROOT>; 1588b86c3afaSMarek Vasut clock-names = "ipg", "ahb"; 1589b86c3afaSMarek Vasut interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 1590b86c3afaSMarek Vasut fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1591b86c3afaSMarek Vasut }; 1592b86c3afaSMarek Vasut 1593b86c3afaSMarek Vasut audio_blk_ctrl: clock-controller@30e20000 { 1594b86c3afaSMarek Vasut compatible = "fsl,imx8mp-audio-blk-ctrl"; 1595b86c3afaSMarek Vasut reg = <0x30e20000 0x10000>; 1596b86c3afaSMarek Vasut #clock-cells = <1>; 159729c4d4c5SShengjiu Wang #reset-cells = <1>; 1598b86c3afaSMarek Vasut clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 1599b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI1>, 1600b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI2>, 1601b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI3>, 1602b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI5>, 1603b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI6>, 1604b86c3afaSMarek Vasut <&clk IMX8MP_CLK_SAI7>; 1605b86c3afaSMarek Vasut clock-names = "ahb", 1606b86c3afaSMarek Vasut "sai1", "sai2", "sai3", 1607b86c3afaSMarek Vasut "sai5", "sai6", "sai7"; 1608b86c3afaSMarek Vasut power-domains = <&pgc_audio>; 1609f560da94SShengjiu Wang assigned-clocks = <&clk IMX8MP_AUDIO_PLL1>, 1610f560da94SShengjiu Wang <&clk IMX8MP_AUDIO_PLL2>; 1611f560da94SShengjiu Wang assigned-clock-rates = <393216000>, <361267200>; 1612b86c3afaSMarek Vasut }; 1613b86c3afaSMarek Vasut }; 1614b86c3afaSMarek Vasut 1615d4ac6028SPeng Fan noc: interconnect@32700000 { 1616d4ac6028SPeng Fan compatible = "fsl,imx8mp-noc", "fsl,imx8m-noc"; 1617d4ac6028SPeng Fan reg = <0x32700000 0x100000>; 1618d4ac6028SPeng Fan clocks = <&clk IMX8MP_CLK_NOC>; 1619d4ac6028SPeng Fan #interconnect-cells = <1>; 1620d4ac6028SPeng Fan operating-points-v2 = <&noc_opp_table>; 1621d4ac6028SPeng Fan 1622d4ac6028SPeng Fan noc_opp_table: opp-table { 1623d4ac6028SPeng Fan compatible = "operating-points-v2"; 1624d4ac6028SPeng Fan 16250c068a36SMarek Vasut opp-200000000 { 1626d4ac6028SPeng Fan opp-hz = /bits/ 64 <200000000>; 1627d4ac6028SPeng Fan }; 1628d4ac6028SPeng Fan 16290c068a36SMarek Vasut opp-1000000000 { 1630d4ac6028SPeng Fan opp-hz = /bits/ 64 <1000000000>; 1631d4ac6028SPeng Fan }; 1632d4ac6028SPeng Fan }; 1633d4ac6028SPeng Fan }; 1634d4ac6028SPeng Fan 16352ae42e0cSLucas Stach aips4: bus@32c00000 { 16362ae42e0cSLucas Stach compatible = "fsl,aips-bus", "simple-bus"; 16372ae42e0cSLucas Stach reg = <0x32c00000 0x400000>; 16382ae42e0cSLucas Stach #address-cells = <1>; 16392ae42e0cSLucas Stach #size-cells = <1>; 16402ae42e0cSLucas Stach ranges; 16412ae42e0cSLucas Stach 16420275a471SMarek Vasut isi_0: isi@32e00000 { 16430275a471SMarek Vasut compatible = "fsl,imx8mp-isi"; 16440275a471SMarek Vasut reg = <0x32e00000 0x4000>; 16450275a471SMarek Vasut interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 16460275a471SMarek Vasut <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 16470275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 16480275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 16490275a471SMarek Vasut clock-names = "axi", "apb"; 16500275a471SMarek Vasut fsl,blk-ctrl = <&media_blk_ctrl>; 16510275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISI>; 16520275a471SMarek Vasut status = "disabled"; 16530275a471SMarek Vasut 16540275a471SMarek Vasut ports { 16550275a471SMarek Vasut #address-cells = <1>; 16560275a471SMarek Vasut #size-cells = <0>; 16570275a471SMarek Vasut 16580275a471SMarek Vasut port@0 { 16590275a471SMarek Vasut reg = <0>; 16600275a471SMarek Vasut 16610275a471SMarek Vasut isi_in_0: endpoint { 16620275a471SMarek Vasut remote-endpoint = <&mipi_csi_0_out>; 16630275a471SMarek Vasut }; 16640275a471SMarek Vasut }; 16650275a471SMarek Vasut 16660275a471SMarek Vasut port@1 { 16670275a471SMarek Vasut reg = <1>; 16680275a471SMarek Vasut 16690275a471SMarek Vasut isi_in_1: endpoint { 16700275a471SMarek Vasut remote-endpoint = <&mipi_csi_1_out>; 16710275a471SMarek Vasut }; 16720275a471SMarek Vasut }; 16730275a471SMarek Vasut }; 16740275a471SMarek Vasut }; 16750275a471SMarek Vasut 16762d39b78eSPaul Elder isp_0: isp@32e10000 { 16772d39b78eSPaul Elder compatible = "fsl,imx8mp-isp"; 16782d39b78eSPaul Elder reg = <0x32e10000 0x10000>; 16792d39b78eSPaul Elder interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 16802d39b78eSPaul Elder clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 16812d39b78eSPaul Elder <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 16822d39b78eSPaul Elder <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 16832d39b78eSPaul Elder clock-names = "isp", "aclk", "hclk"; 16842d39b78eSPaul Elder power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 16852d39b78eSPaul Elder fsl,blk-ctrl = <&media_blk_ctrl 0>; 16862d39b78eSPaul Elder status = "disabled"; 16872d39b78eSPaul Elder 16882d39b78eSPaul Elder ports { 16892d39b78eSPaul Elder #address-cells = <1>; 16902d39b78eSPaul Elder #size-cells = <0>; 16912d39b78eSPaul Elder 16922d39b78eSPaul Elder port@1 { 16932d39b78eSPaul Elder reg = <1>; 16942d39b78eSPaul Elder }; 16952d39b78eSPaul Elder }; 16962d39b78eSPaul Elder }; 16972d39b78eSPaul Elder 16982d39b78eSPaul Elder isp_1: isp@32e20000 { 16992d39b78eSPaul Elder compatible = "fsl,imx8mp-isp"; 17002d39b78eSPaul Elder reg = <0x32e20000 0x10000>; 17012d39b78eSPaul Elder interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 17022d39b78eSPaul Elder clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 17032d39b78eSPaul Elder <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 17042d39b78eSPaul Elder <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 17052d39b78eSPaul Elder clock-names = "isp", "aclk", "hclk"; 17062d39b78eSPaul Elder power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 17072d39b78eSPaul Elder fsl,blk-ctrl = <&media_blk_ctrl 1>; 17082d39b78eSPaul Elder status = "disabled"; 17092d39b78eSPaul Elder 17102d39b78eSPaul Elder ports { 17112d39b78eSPaul Elder #address-cells = <1>; 17122d39b78eSPaul Elder #size-cells = <0>; 17132d39b78eSPaul Elder 17142d39b78eSPaul Elder port@1 { 17152d39b78eSPaul Elder reg = <1>; 17162d39b78eSPaul Elder }; 17172d39b78eSPaul Elder }; 17182d39b78eSPaul Elder }; 17192d39b78eSPaul Elder 17200c45fb7fSMarek Vasut dewarp: dwe@32e30000 { 17210c45fb7fSMarek Vasut compatible = "nxp,imx8mp-dw100"; 17220c45fb7fSMarek Vasut reg = <0x32e30000 0x10000>; 17230c45fb7fSMarek Vasut interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 17240c45fb7fSMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 17250c45fb7fSMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 17260c45fb7fSMarek Vasut clock-names = "axi", "ahb"; 17270c45fb7fSMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_DWE>; 17280c45fb7fSMarek Vasut }; 17290c45fb7fSMarek Vasut 17300275a471SMarek Vasut mipi_csi_0: csi@32e40000 { 17310275a471SMarek Vasut compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 17320275a471SMarek Vasut reg = <0x32e40000 0x10000>; 17330275a471SMarek Vasut interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 17347e4030e3SLaurent Pinchart clock-frequency = <250000000>; 17350275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 17360275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 17370275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 17380275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 17390275a471SMarek Vasut clock-names = "pclk", "wrap", "phy", "axi"; 1740f78835d1SAlexander Stein assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM1_PIX>, 1741f78835d1SAlexander Stein <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 17427e4030e3SLaurent Pinchart assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_250M>, 1743f78835d1SAlexander Stein <&clk IMX8MP_CLK_24M>; 17440275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_1>; 17450275a471SMarek Vasut status = "disabled"; 17460275a471SMarek Vasut 17470275a471SMarek Vasut ports { 17480275a471SMarek Vasut #address-cells = <1>; 17490275a471SMarek Vasut #size-cells = <0>; 17500275a471SMarek Vasut 17510275a471SMarek Vasut port@0 { 17520275a471SMarek Vasut reg = <0>; 17530275a471SMarek Vasut }; 17540275a471SMarek Vasut 17550275a471SMarek Vasut port@1 { 17560275a471SMarek Vasut reg = <1>; 17570275a471SMarek Vasut 17580275a471SMarek Vasut mipi_csi_0_out: endpoint { 17590275a471SMarek Vasut remote-endpoint = <&isi_in_0>; 17600275a471SMarek Vasut }; 17610275a471SMarek Vasut }; 17620275a471SMarek Vasut }; 17630275a471SMarek Vasut }; 17640275a471SMarek Vasut 17650275a471SMarek Vasut mipi_csi_1: csi@32e50000 { 17660275a471SMarek Vasut compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 17670275a471SMarek Vasut reg = <0x32e50000 0x10000>; 17680275a471SMarek Vasut interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 17697e4030e3SLaurent Pinchart clock-frequency = <250000000>; 17700275a471SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 17710275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 17720275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 17730275a471SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 17740275a471SMarek Vasut clock-names = "pclk", "wrap", "phy", "axi"; 177510947b27SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM2_PIX>, 1776f78835d1SAlexander Stein <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 17777e4030e3SLaurent Pinchart assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_250M>, 1778f78835d1SAlexander Stein <&clk IMX8MP_CLK_24M>; 17790275a471SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_2>; 17800275a471SMarek Vasut status = "disabled"; 17810275a471SMarek Vasut 17820275a471SMarek Vasut ports { 17830275a471SMarek Vasut #address-cells = <1>; 17840275a471SMarek Vasut #size-cells = <0>; 17850275a471SMarek Vasut 17860275a471SMarek Vasut port@0 { 17870275a471SMarek Vasut reg = <0>; 17880275a471SMarek Vasut }; 17890275a471SMarek Vasut 17900275a471SMarek Vasut port@1 { 17910275a471SMarek Vasut reg = <1>; 17920275a471SMarek Vasut 17930275a471SMarek Vasut mipi_csi_1_out: endpoint { 17940275a471SMarek Vasut remote-endpoint = <&isi_in_1>; 17950275a471SMarek Vasut }; 17960275a471SMarek Vasut }; 17970275a471SMarek Vasut }; 17980275a471SMarek Vasut }; 17990275a471SMarek Vasut 1800eda09fe1SMarek Vasut mipi_dsi: dsi@32e60000 { 1801eda09fe1SMarek Vasut compatible = "fsl,imx8mp-mipi-dsim"; 1802eda09fe1SMarek Vasut reg = <0x32e60000 0x400>; 1803eda09fe1SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1804eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1805eda09fe1SMarek Vasut clock-names = "bus_clk", "sclk_mipi"; 1806eda09fe1SMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_MEDIA_APB>, 1807eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1808eda09fe1SMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 1809eda09fe1SMarek Vasut <&clk IMX8MP_CLK_24M>; 1810eda09fe1SMarek Vasut assigned-clock-rates = <200000000>, <24000000>; 1811eda09fe1SMarek Vasut samsung,pll-clock-frequency = <24000000>; 1812eda09fe1SMarek Vasut interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 1813eda09fe1SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_DSI_1>; 1814eda09fe1SMarek Vasut status = "disabled"; 1815eda09fe1SMarek Vasut 1816eda09fe1SMarek Vasut ports { 1817eda09fe1SMarek Vasut #address-cells = <1>; 1818eda09fe1SMarek Vasut #size-cells = <0>; 1819eda09fe1SMarek Vasut 1820eda09fe1SMarek Vasut port@0 { 1821eda09fe1SMarek Vasut reg = <0>; 1822eda09fe1SMarek Vasut 1823eda09fe1SMarek Vasut dsim_from_lcdif1: endpoint { 1824eda09fe1SMarek Vasut remote-endpoint = <&lcdif1_to_dsim>; 1825eda09fe1SMarek Vasut }; 1826eda09fe1SMarek Vasut }; 18273bd897dcSAlexander Stein 18283bd897dcSAlexander Stein port@1 { 18293bd897dcSAlexander Stein reg = <1>; 18303bd897dcSAlexander Stein 18313bd897dcSAlexander Stein mipi_dsi_out: endpoint { 18323bd897dcSAlexander Stein }; 18333bd897dcSAlexander Stein }; 1834eda09fe1SMarek Vasut }; 1835eda09fe1SMarek Vasut }; 1836eda09fe1SMarek Vasut 1837eda09fe1SMarek Vasut lcdif1: display-controller@32e80000 { 1838eda09fe1SMarek Vasut compatible = "fsl,imx8mp-lcdif"; 1839eda09fe1SMarek Vasut reg = <0x32e80000 0x10000>; 1840eda09fe1SMarek Vasut clocks = <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 1841eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1842eda09fe1SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1843eda09fe1SMarek Vasut clock-names = "pix", "axi", "disp_axi"; 1844eda09fe1SMarek Vasut interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 1845eda09fe1SMarek Vasut power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_1>; 1846eda09fe1SMarek Vasut status = "disabled"; 1847eda09fe1SMarek Vasut 1848eda09fe1SMarek Vasut port { 1849eda09fe1SMarek Vasut lcdif1_to_dsim: endpoint { 1850eda09fe1SMarek Vasut remote-endpoint = <&dsim_from_lcdif1>; 1851eda09fe1SMarek Vasut }; 1852eda09fe1SMarek Vasut }; 1853eda09fe1SMarek Vasut }; 1854eda09fe1SMarek Vasut 185594e6197dSAlexander Stein lcdif2: display-controller@32e90000 { 185694e6197dSAlexander Stein compatible = "fsl,imx8mp-lcdif"; 1857c355d913SAlexander Stein reg = <0x32e90000 0x10000>; 185894e6197dSAlexander Stein interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 185994e6197dSAlexander Stein clocks = <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 18601d0d5b91SMarek Vasut <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 18611d0d5b91SMarek Vasut <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 186294e6197dSAlexander Stein clock-names = "pix", "axi", "disp_axi"; 186394e6197dSAlexander Stein power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_2>; 186494e6197dSAlexander Stein status = "disabled"; 186594e6197dSAlexander Stein 186694e6197dSAlexander Stein port { 186794e6197dSAlexander Stein lcdif2_to_ldb: endpoint { 186894e6197dSAlexander Stein remote-endpoint = <&ldb_from_lcdif2>; 186994e6197dSAlexander Stein }; 187094e6197dSAlexander Stein }; 187194e6197dSAlexander Stein }; 187294e6197dSAlexander Stein 187329f440a7SPaul Elder media_blk_ctrl: blk-ctrl@32ec0000 { 187429f440a7SPaul Elder compatible = "fsl,imx8mp-media-blk-ctrl", 18755a51e1f2SMarek Vasut "syscon"; 187629f440a7SPaul Elder reg = <0x32ec0000 0x10000>; 187794e6197dSAlexander Stein #address-cells = <1>; 187894e6197dSAlexander Stein #size-cells = <1>; 187929f440a7SPaul Elder power-domains = <&pgc_mediamix>, 188029f440a7SPaul Elder <&pgc_mipi_phy1>, 188129f440a7SPaul Elder <&pgc_mipi_phy1>, 188229f440a7SPaul Elder <&pgc_mediamix>, 188329f440a7SPaul Elder <&pgc_mediamix>, 188429f440a7SPaul Elder <&pgc_mipi_phy2>, 188529f440a7SPaul Elder <&pgc_mediamix>, 188629f440a7SPaul Elder <&pgc_ispdwp>, 188729f440a7SPaul Elder <&pgc_ispdwp>, 188829f440a7SPaul Elder <&pgc_mipi_phy2>; 188929f440a7SPaul Elder power-domain-names = "bus", "mipi-dsi1", "mipi-csi1", 189029f440a7SPaul Elder "lcdif1", "isi", "mipi-csi2", 189129f440a7SPaul Elder "lcdif2", "isp", "dwe", 189229f440a7SPaul Elder "mipi-dsi2"; 18933175c706SPeng Fan interconnects = 18943175c706SPeng Fan <&noc IMX8MP_ICM_LCDIF_RD &noc IMX8MP_ICN_MEDIA>, 18953175c706SPeng Fan <&noc IMX8MP_ICM_LCDIF_WR &noc IMX8MP_ICN_MEDIA>, 18963175c706SPeng Fan <&noc IMX8MP_ICM_ISI0 &noc IMX8MP_ICN_MEDIA>, 18973175c706SPeng Fan <&noc IMX8MP_ICM_ISI1 &noc IMX8MP_ICN_MEDIA>, 18983175c706SPeng Fan <&noc IMX8MP_ICM_ISI2 &noc IMX8MP_ICN_MEDIA>, 18993175c706SPeng Fan <&noc IMX8MP_ICM_ISP0 &noc IMX8MP_ICN_MEDIA>, 19003175c706SPeng Fan <&noc IMX8MP_ICM_ISP1 &noc IMX8MP_ICN_MEDIA>, 19013175c706SPeng Fan <&noc IMX8MP_ICM_DWE &noc IMX8MP_ICN_MEDIA>; 19023175c706SPeng Fan interconnect-names = "lcdif-rd", "lcdif-wr", "isi0", 19033175c706SPeng Fan "isi1", "isi2", "isp0", "isp1", 19043175c706SPeng Fan "dwe"; 190529f440a7SPaul Elder clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 190629f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 190729f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 190829f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 190929f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 191029f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 191129f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 191229f440a7SPaul Elder <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>; 191329f440a7SPaul Elder clock-names = "apb", "axi", "cam1", "cam2", 191429f440a7SPaul Elder "disp1", "disp2", "isp", "phy"; 191529f440a7SPaul Elder 19162d39b78eSPaul Elder /* 19172d39b78eSPaul Elder * The ISP maximum frequency is 400MHz in normal mode 19182d39b78eSPaul Elder * and 500MHz in overdrive mode. The 400MHz operating 19192d39b78eSPaul Elder * point hasn't been successfully tested yet, so set 19202d39b78eSPaul Elder * IMX8MP_CLK_MEDIA_ISP to 500MHz for the time being. 19212d39b78eSPaul Elder */ 192229f440a7SPaul Elder assigned-clocks = <&clk IMX8MP_CLK_MEDIA_AXI>, 192307bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_APB>, 192407bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_DISP1_PIX>, 192507bb2e36SAdam Ford <&clk IMX8MP_CLK_MEDIA_DISP2_PIX>, 19262d39b78eSPaul Elder <&clk IMX8MP_CLK_MEDIA_ISP>, 192707bb2e36SAdam Ford <&clk IMX8MP_VIDEO_PLL1>; 192829f440a7SPaul Elder assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>, 192907bb2e36SAdam Ford <&clk IMX8MP_SYS_PLL1_800M>, 193007bb2e36SAdam Ford <&clk IMX8MP_VIDEO_PLL1_OUT>, 19312d39b78eSPaul Elder <&clk IMX8MP_VIDEO_PLL1_OUT>, 19322d39b78eSPaul Elder <&clk IMX8MP_SYS_PLL2_500M>; 193307bb2e36SAdam Ford assigned-clock-rates = <500000000>, <200000000>, 19342d39b78eSPaul Elder <0>, <0>, <500000000>, 19352d39b78eSPaul Elder <1039500000>; 193629f440a7SPaul Elder #power-domain-cells = <1>; 193794e6197dSAlexander Stein 193894e6197dSAlexander Stein lvds_bridge: bridge@5c { 193994e6197dSAlexander Stein compatible = "fsl,imx8mp-ldb"; 194094e6197dSAlexander Stein reg = <0x5c 0x4>, <0x128 0x4>; 194194e6197dSAlexander Stein reg-names = "ldb", "lvds"; 194265e32301SLiu Ying clocks = <&clk IMX8MP_CLK_MEDIA_LDB_ROOT>; 1943e7567840SMarek Vasut clock-names = "ldb"; 194494e6197dSAlexander Stein assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>; 194594e6197dSAlexander Stein assigned-clock-parents = <&clk IMX8MP_VIDEO_PLL1_OUT>; 194694e6197dSAlexander Stein status = "disabled"; 194794e6197dSAlexander Stein 194894e6197dSAlexander Stein ports { 194994e6197dSAlexander Stein #address-cells = <1>; 195094e6197dSAlexander Stein #size-cells = <0>; 195194e6197dSAlexander Stein 195294e6197dSAlexander Stein port@0 { 195394e6197dSAlexander Stein reg = <0>; 195494e6197dSAlexander Stein 195594e6197dSAlexander Stein ldb_from_lcdif2: endpoint { 195694e6197dSAlexander Stein remote-endpoint = <&lcdif2_to_ldb>; 195794e6197dSAlexander Stein }; 195894e6197dSAlexander Stein }; 195994e6197dSAlexander Stein 196094e6197dSAlexander Stein port@1 { 196194e6197dSAlexander Stein reg = <1>; 196294e6197dSAlexander Stein 196394e6197dSAlexander Stein ldb_lvds_ch0: endpoint { 196494e6197dSAlexander Stein }; 196594e6197dSAlexander Stein }; 196694e6197dSAlexander Stein 196794e6197dSAlexander Stein port@2 { 196894e6197dSAlexander Stein reg = <2>; 196994e6197dSAlexander Stein 197094e6197dSAlexander Stein ldb_lvds_ch1: endpoint { 197194e6197dSAlexander Stein }; 197294e6197dSAlexander Stein }; 197394e6197dSAlexander Stein }; 197494e6197dSAlexander Stein }; 197529f440a7SPaul Elder }; 197629f440a7SPaul Elder 19779e65987bSRichard Zhu pcie_phy: pcie-phy@32f00000 { 19789e65987bSRichard Zhu compatible = "fsl,imx8mp-pcie-phy"; 19799e65987bSRichard Zhu reg = <0x32f00000 0x10000>; 19809e65987bSRichard Zhu resets = <&src IMX8MP_RESET_PCIEPHY>, 19819e65987bSRichard Zhu <&src IMX8MP_RESET_PCIEPHY_PERST>; 19829e65987bSRichard Zhu reset-names = "pciephy", "perst"; 19839e65987bSRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE_PHY>; 19849e65987bSRichard Zhu #phy-cells = <0>; 19859e65987bSRichard Zhu status = "disabled"; 19869e65987bSRichard Zhu }; 19879e65987bSRichard Zhu 19882ae42e0cSLucas Stach hsio_blk_ctrl: blk-ctrl@32f10000 { 19892ae42e0cSLucas Stach compatible = "fsl,imx8mp-hsio-blk-ctrl", "syscon"; 19902ae42e0cSLucas Stach reg = <0x32f10000 0x24>; 19912ae42e0cSLucas Stach clocks = <&clk IMX8MP_CLK_USB_ROOT>, 19922ae42e0cSLucas Stach <&clk IMX8MP_CLK_PCIE_ROOT>; 19932ae42e0cSLucas Stach clock-names = "usb", "pcie"; 19942ae42e0cSLucas Stach power-domains = <&pgc_hsiomix>, <&pgc_hsiomix>, 19952ae42e0cSLucas Stach <&pgc_usb1_phy>, <&pgc_usb2_phy>, 19962ae42e0cSLucas Stach <&pgc_hsiomix>, <&pgc_pcie_phy>; 19972ae42e0cSLucas Stach power-domain-names = "bus", "usb", "usb-phy1", 19982ae42e0cSLucas Stach "usb-phy2", "pcie", "pcie-phy"; 199931da63e1SPeng Fan interconnects = <&noc IMX8MP_ICM_NOC_PCIE &noc IMX8MP_ICN_HSIO>, 200031da63e1SPeng Fan <&noc IMX8MP_ICM_USB1 &noc IMX8MP_ICN_HSIO>, 200131da63e1SPeng Fan <&noc IMX8MP_ICM_USB2 &noc IMX8MP_ICN_HSIO>, 200231da63e1SPeng Fan <&noc IMX8MP_ICM_PCIE &noc IMX8MP_ICN_HSIO>; 200331da63e1SPeng Fan interconnect-names = "noc-pcie", "usb1", "usb2", "pcie"; 20042ae42e0cSLucas Stach #power-domain-cells = <1>; 200507a42c14SLucas Stach #clock-cells = <0>; 20062ae42e0cSLucas Stach }; 2007f6772c58SLucas Stach 2008f6772c58SLucas Stach hdmi_blk_ctrl: blk-ctrl@32fc0000 { 2009f6772c58SLucas Stach compatible = "fsl,imx8mp-hdmi-blk-ctrl", "syscon"; 2010f6772c58SLucas Stach reg = <0x32fc0000 0x1000>; 2011f6772c58SLucas Stach clocks = <&clk IMX8MP_CLK_HDMI_APB>, 2012f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_ROOT>, 2013f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_REF_266M>, 2014f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_24M>, 2015f6772c58SLucas Stach <&clk IMX8MP_CLK_HDMI_FDCC_TST>; 2016f6772c58SLucas Stach clock-names = "apb", "axi", "ref_266m", "ref_24m", "fdcc"; 2017f6772c58SLucas Stach power-domains = <&pgc_hdmimix>, <&pgc_hdmimix>, 2018f6772c58SLucas Stach <&pgc_hdmimix>, <&pgc_hdmimix>, 2019f6772c58SLucas Stach <&pgc_hdmimix>, <&pgc_hdmimix>, 2020f6772c58SLucas Stach <&pgc_hdmimix>, <&pgc_hdmi_phy>, 2021f6772c58SLucas Stach <&pgc_hdmimix>, <&pgc_hdmimix>; 2022f6772c58SLucas Stach power-domain-names = "bus", "irqsteer", "lcdif", 2023f6772c58SLucas Stach "pai", "pvi", "trng", 2024f6772c58SLucas Stach "hdmi-tx", "hdmi-tx-phy", 2025f6772c58SLucas Stach "hdcp", "hrv"; 2026f6772c58SLucas Stach #power-domain-cells = <1>; 2027f6772c58SLucas Stach }; 2028cc1de248SLucas Stach 2029cc1de248SLucas Stach irqsteer_hdmi: interrupt-controller@32fc2000 { 2030a27f4964SAlexander Stein compatible = "fsl,imx8mp-irqsteer", "fsl,imx-irqsteer"; 2031cc1de248SLucas Stach reg = <0x32fc2000 0x1000>; 2032cc1de248SLucas Stach interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 2033cc1de248SLucas Stach interrupt-controller; 2034cc1de248SLucas Stach #interrupt-cells = <1>; 2035cc1de248SLucas Stach fsl,channel = <1>; 2036cc1de248SLucas Stach fsl,num-irqs = <64>; 2037cc1de248SLucas Stach clocks = <&clk IMX8MP_CLK_HDMI_APB>; 2038cc1de248SLucas Stach clock-names = "ipg"; 2039cc1de248SLucas Stach power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_IRQSTEER>; 2040cc1de248SLucas Stach }; 204114c46854SLucas Stach 204214c46854SLucas Stach hdmi_pvi: display-bridge@32fc4000 { 204314c46854SLucas Stach compatible = "fsl,imx8mp-hdmi-pvi"; 204414c46854SLucas Stach reg = <0x32fc4000 0x1000>; 204514c46854SLucas Stach interrupt-parent = <&irqsteer_hdmi>; 204614c46854SLucas Stach interrupts = <12>; 204714c46854SLucas Stach power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_PVI>; 204814c46854SLucas Stach status = "disabled"; 204914c46854SLucas Stach 205014c46854SLucas Stach ports { 205114c46854SLucas Stach #address-cells = <1>; 205214c46854SLucas Stach #size-cells = <0>; 205314c46854SLucas Stach 205414c46854SLucas Stach port@0 { 205514c46854SLucas Stach reg = <0>; 205614c46854SLucas Stach pvi_from_lcdif3: endpoint { 205714c46854SLucas Stach remote-endpoint = <&lcdif3_to_pvi>; 205814c46854SLucas Stach }; 205914c46854SLucas Stach }; 206014c46854SLucas Stach 206114c46854SLucas Stach port@1 { 206214c46854SLucas Stach reg = <1>; 206314c46854SLucas Stach pvi_to_hdmi_tx: endpoint { 206414c46854SLucas Stach remote-endpoint = <&hdmi_tx_from_pvi>; 206514c46854SLucas Stach }; 206614c46854SLucas Stach }; 206714c46854SLucas Stach }; 206814c46854SLucas Stach }; 206914c46854SLucas Stach 207014c46854SLucas Stach lcdif3: display-controller@32fc6000 { 207114c46854SLucas Stach compatible = "fsl,imx8mp-lcdif"; 207214c46854SLucas Stach reg = <0x32fc6000 0x1000>; 207314c46854SLucas Stach interrupt-parent = <&irqsteer_hdmi>; 207414c46854SLucas Stach interrupts = <8>; 207514c46854SLucas Stach clocks = <&hdmi_tx_phy>, 207614c46854SLucas Stach <&clk IMX8MP_CLK_HDMI_APB>, 207714c46854SLucas Stach <&clk IMX8MP_CLK_HDMI_ROOT>; 207814c46854SLucas Stach clock-names = "pix", "axi", "disp_axi"; 207914c46854SLucas Stach power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_LCDIF>; 208014c46854SLucas Stach status = "disabled"; 208114c46854SLucas Stach 208214c46854SLucas Stach port { 208314c46854SLucas Stach lcdif3_to_pvi: endpoint { 208414c46854SLucas Stach remote-endpoint = <&pvi_from_lcdif3>; 208514c46854SLucas Stach }; 208614c46854SLucas Stach }; 208714c46854SLucas Stach }; 208814c46854SLucas Stach 208914c46854SLucas Stach hdmi_tx: hdmi@32fd8000 { 209014c46854SLucas Stach compatible = "fsl,imx8mp-hdmi-tx"; 209114c46854SLucas Stach reg = <0x32fd8000 0x7eff>; 209214c46854SLucas Stach interrupt-parent = <&irqsteer_hdmi>; 209314c46854SLucas Stach interrupts = <0>; 209414c46854SLucas Stach clocks = <&clk IMX8MP_CLK_HDMI_APB>, 209514c46854SLucas Stach <&clk IMX8MP_CLK_HDMI_REF_266M>, 209614c46854SLucas Stach <&clk IMX8MP_CLK_32K>, 209714c46854SLucas Stach <&hdmi_tx_phy>; 209814c46854SLucas Stach clock-names = "iahb", "isfr", "cec", "pix"; 209914c46854SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_HDMI_REF_266M>; 210014c46854SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>; 210114c46854SLucas Stach power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_HDMI_TX>; 210214c46854SLucas Stach reg-io-width = <1>; 210314c46854SLucas Stach status = "disabled"; 210414c46854SLucas Stach 210514c46854SLucas Stach ports { 210614c46854SLucas Stach #address-cells = <1>; 210714c46854SLucas Stach #size-cells = <0>; 210814c46854SLucas Stach 210914c46854SLucas Stach port@0 { 211014c46854SLucas Stach reg = <0>; 211114c46854SLucas Stach 211214c46854SLucas Stach hdmi_tx_from_pvi: endpoint { 211314c46854SLucas Stach remote-endpoint = <&pvi_to_hdmi_tx>; 211414c46854SLucas Stach }; 211514c46854SLucas Stach }; 211614c46854SLucas Stach 211714c46854SLucas Stach port@1 { 211814c46854SLucas Stach reg = <1>; 211914c46854SLucas Stach /* Point endpoint to the HDMI connector */ 212014c46854SLucas Stach }; 212114c46854SLucas Stach }; 212214c46854SLucas Stach }; 212314c46854SLucas Stach 212414c46854SLucas Stach hdmi_tx_phy: phy@32fdff00 { 212514c46854SLucas Stach compatible = "fsl,imx8mp-hdmi-phy"; 212614c46854SLucas Stach reg = <0x32fdff00 0x100>; 212714c46854SLucas Stach clocks = <&clk IMX8MP_CLK_HDMI_APB>, 212814c46854SLucas Stach <&clk IMX8MP_CLK_HDMI_24M>; 212914c46854SLucas Stach clock-names = "apb", "ref"; 213014c46854SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_HDMI_24M>; 213114c46854SLucas Stach assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 213214c46854SLucas Stach power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_HDMI_TX_PHY>; 213314c46854SLucas Stach #clock-cells = <0>; 213414c46854SLucas Stach #phy-cells = <0>; 213514c46854SLucas Stach status = "disabled"; 213614c46854SLucas Stach }; 21372ae42e0cSLucas Stach }; 21382ae42e0cSLucas Stach 21399e65987bSRichard Zhu pcie: pcie@33800000 { 21409e65987bSRichard Zhu compatible = "fsl,imx8mp-pcie"; 21419e65987bSRichard Zhu reg = <0x33800000 0x400000>, <0x1ff00000 0x80000>; 21429e65987bSRichard Zhu reg-names = "dbi", "config"; 2143fae3bcc3SLucas Stach clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 2144bae293e9SMarek Vasut <&clk IMX8MP_CLK_HSIO_AXI>, 2145bae293e9SMarek Vasut <&clk IMX8MP_CLK_PCIE_ROOT>; 2146bae293e9SMarek Vasut clock-names = "pcie", "pcie_bus", "pcie_aux"; 2147fae3bcc3SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 2148fae3bcc3SLucas Stach assigned-clock-rates = <10000000>; 2149fae3bcc3SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 21509e65987bSRichard Zhu #address-cells = <3>; 21519e65987bSRichard Zhu #size-cells = <2>; 21529e65987bSRichard Zhu device_type = "pci"; 21539e65987bSRichard Zhu bus-range = <0x00 0xff>; 21549e65987bSRichard Zhu ranges = <0x81000000 0 0x00000000 0x1ff80000 0 0x00010000>, /* downstream I/O 64KB */ 21559e65987bSRichard Zhu <0x82000000 0 0x18000000 0x18000000 0 0x07f00000>; /* non-prefetchable memory */ 21569e65987bSRichard Zhu num-lanes = <1>; 21579e65987bSRichard Zhu num-viewport = <4>; 21589e65987bSRichard Zhu interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 21599e65987bSRichard Zhu interrupt-names = "msi"; 21609e65987bSRichard Zhu #interrupt-cells = <1>; 21619e65987bSRichard Zhu interrupt-map-mask = <0 0 0 0x7>; 21629e65987bSRichard Zhu interrupt-map = <0 0 0 1 &gic GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 21639e65987bSRichard Zhu <0 0 0 2 &gic GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 21649e65987bSRichard Zhu <0 0 0 3 &gic GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, 21659e65987bSRichard Zhu <0 0 0 4 &gic GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 21669e65987bSRichard Zhu fsl,max-link-speed = <3>; 21679e65987bSRichard Zhu linux,pci-domain = <0>; 21689e65987bSRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 21699e65987bSRichard Zhu resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 21709e65987bSRichard Zhu <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 21719e65987bSRichard Zhu reset-names = "apps", "turnoff"; 21729e65987bSRichard Zhu phys = <&pcie_phy>; 21739e65987bSRichard Zhu phy-names = "pcie-phy"; 21749e65987bSRichard Zhu status = "disabled"; 21759e65987bSRichard Zhu }; 21769e65987bSRichard Zhu 217723f59eb1SRichard Zhu pcie_ep: pcie-ep@33800000 { 217823f59eb1SRichard Zhu compatible = "fsl,imx8mp-pcie-ep"; 217923f59eb1SRichard Zhu reg = <0x33800000 0x000400000>, <0x18000000 0x08000000>; 218023f59eb1SRichard Zhu reg-names = "dbi", "addr_space"; 218123f59eb1SRichard Zhu clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 218223f59eb1SRichard Zhu <&clk IMX8MP_CLK_HSIO_AXI>, 218323f59eb1SRichard Zhu <&clk IMX8MP_CLK_PCIE_ROOT>; 218423f59eb1SRichard Zhu clock-names = "pcie", "pcie_bus", "pcie_aux"; 218523f59eb1SRichard Zhu assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 218623f59eb1SRichard Zhu assigned-clock-rates = <10000000>; 218723f59eb1SRichard Zhu assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 218823f59eb1SRichard Zhu num-lanes = <1>; 218923f59eb1SRichard Zhu interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; /* eDMA */ 219023f59eb1SRichard Zhu interrupt-names = "dma"; 219123f59eb1SRichard Zhu fsl,max-link-speed = <3>; 219223f59eb1SRichard Zhu power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 219323f59eb1SRichard Zhu resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 219423f59eb1SRichard Zhu <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 219523f59eb1SRichard Zhu reset-names = "apps", "turnoff"; 219623f59eb1SRichard Zhu phys = <&pcie_phy>; 219723f59eb1SRichard Zhu phy-names = "pcie-phy"; 219823f59eb1SRichard Zhu num-ib-windows = <4>; 219923f59eb1SRichard Zhu num-ob-windows = <4>; 220023f59eb1SRichard Zhu status = "disabled"; 220123f59eb1SRichard Zhu }; 220223f59eb1SRichard Zhu 22034bdb1192SLucas Stach gpu3d: gpu@38000000 { 22044bdb1192SLucas Stach compatible = "vivante,gc"; 22054bdb1192SLucas Stach reg = <0x38000000 0x8000>; 22064bdb1192SLucas Stach interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 22074bdb1192SLucas Stach clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 22084bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>, 22094bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_ROOT>, 22104bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 22114bdb1192SLucas Stach clock-names = "core", "shader", "bus", "reg"; 22124bdb1192SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU3D_CORE>, 22134bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 22144bdb1192SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 22154bdb1192SLucas Stach <&clk IMX8MP_SYS_PLL1_800M>; 22164bdb1192SLucas Stach assigned-clock-rates = <800000000>, <800000000>; 22174bdb1192SLucas Stach power-domains = <&pgc_gpu3d>; 22184bdb1192SLucas Stach }; 22194bdb1192SLucas Stach 22204bdb1192SLucas Stach gpu2d: gpu@38008000 { 22214bdb1192SLucas Stach compatible = "vivante,gc"; 22224bdb1192SLucas Stach reg = <0x38008000 0x8000>; 22234bdb1192SLucas Stach interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 22244bdb1192SLucas Stach clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>, 22254bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_ROOT>, 22264bdb1192SLucas Stach <&clk IMX8MP_CLK_GPU_AHB>; 22274bdb1192SLucas Stach clock-names = "core", "bus", "reg"; 22284bdb1192SLucas Stach assigned-clocks = <&clk IMX8MP_CLK_GPU2D_CORE>; 22294bdb1192SLucas Stach assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 22304bdb1192SLucas Stach assigned-clock-rates = <800000000>; 22314bdb1192SLucas Stach power-domains = <&pgc_gpu2d>; 22324bdb1192SLucas Stach }; 22334bdb1192SLucas Stach 2234e9b751caSMarek Vasut vpu_g1: video-codec@38300000 { 2235e9b751caSMarek Vasut compatible = "nxp,imx8mm-vpu-g1"; 2236e9b751caSMarek Vasut reg = <0x38300000 0x10000>; 2237e9b751caSMarek Vasut interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 2238e9b751caSMarek Vasut clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 2239e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_G1>; 2240e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 2241e9b751caSMarek Vasut assigned-clock-rates = <600000000>; 2242e9b751caSMarek Vasut power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G1>; 2243e9b751caSMarek Vasut }; 2244e9b751caSMarek Vasut 2245e9b751caSMarek Vasut vpu_g2: video-codec@38310000 { 2246e9b751caSMarek Vasut compatible = "nxp,imx8mq-vpu-g2"; 2247e9b751caSMarek Vasut reg = <0x38310000 0x10000>; 2248e9b751caSMarek Vasut interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 2249e9b751caSMarek Vasut clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 2250e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_G2>; 2251e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>; 2252e9b751caSMarek Vasut assigned-clock-rates = <500000000>; 2253e9b751caSMarek Vasut power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G2>; 2254e9b751caSMarek Vasut }; 2255e9b751caSMarek Vasut 2256a763d0cfSPeng Fan vpumix_blk_ctrl: blk-ctrl@38330000 { 2257a763d0cfSPeng Fan compatible = "fsl,imx8mp-vpu-blk-ctrl", "syscon"; 2258a763d0cfSPeng Fan reg = <0x38330000 0x100>; 2259a763d0cfSPeng Fan #power-domain-cells = <1>; 2260a763d0cfSPeng Fan power-domains = <&pgc_vpumix>, <&pgc_vpu_g1>, 2261a763d0cfSPeng Fan <&pgc_vpu_g2>, <&pgc_vpu_vc8000e>; 2262a763d0cfSPeng Fan power-domain-names = "bus", "g1", "g2", "vc8000e"; 2263a763d0cfSPeng Fan clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>, 2264a763d0cfSPeng Fan <&clk IMX8MP_CLK_VPU_G2_ROOT>, 2265a763d0cfSPeng Fan <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 2266a763d0cfSPeng Fan clock-names = "g1", "g2", "vc8000e"; 2267e9b751caSMarek Vasut assigned-clocks = <&clk IMX8MP_CLK_VPU_BUS>, <&clk IMX8MP_VPU_PLL>; 2268e9b751caSMarek Vasut assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 2269e9b751caSMarek Vasut assigned-clock-rates = <600000000>, <600000000>; 2270a763d0cfSPeng Fan interconnects = <&noc IMX8MP_ICM_VPU_G1 &noc IMX8MP_ICN_VIDEO>, 2271a763d0cfSPeng Fan <&noc IMX8MP_ICM_VPU_G2 &noc IMX8MP_ICN_VIDEO>, 2272a763d0cfSPeng Fan <&noc IMX8MP_ICM_VPU_H1 &noc IMX8MP_ICN_VIDEO>; 2273a763d0cfSPeng Fan interconnect-names = "g1", "g2", "vc8000e"; 2274a763d0cfSPeng Fan }; 2275a763d0cfSPeng Fan 22764bedc468SAdam Ford npu: npu@38500000 { 22774bedc468SAdam Ford compatible = "vivante,gc"; 22784bedc468SAdam Ford reg = <0x38500000 0x200000>; 22794bedc468SAdam Ford interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 22804bedc468SAdam Ford clocks = <&clk IMX8MP_CLK_NPU_ROOT>, 22814bedc468SAdam Ford <&clk IMX8MP_CLK_NPU_ROOT>, 22824bedc468SAdam Ford <&clk IMX8MP_CLK_ML_AXI>, 22834bedc468SAdam Ford <&clk IMX8MP_CLK_ML_AHB>; 22844bedc468SAdam Ford clock-names = "core", "shader", "bus", "reg"; 22854bedc468SAdam Ford power-domains = <&pgc_mlmix>; 22864bedc468SAdam Ford }; 22874bedc468SAdam Ford 22886d9b8d20SAnson Huang gic: interrupt-controller@38800000 { 22896d9b8d20SAnson Huang compatible = "arm,gic-v3"; 22906d9b8d20SAnson Huang reg = <0x38800000 0x10000>, 22916d9b8d20SAnson Huang <0x38880000 0xc0000>; 22926d9b8d20SAnson Huang #interrupt-cells = <3>; 22936d9b8d20SAnson Huang interrupt-controller; 22946d9b8d20SAnson Huang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 22956d9b8d20SAnson Huang interrupt-parent = <&gic>; 22966d9b8d20SAnson Huang }; 2297b39cb21fSJoakim Zhang 229868b7cf5dSSherry Sun edacmc: memory-controller@3d400000 { 229968b7cf5dSSherry Sun compatible = "snps,ddrc-3.80a"; 230068b7cf5dSSherry Sun reg = <0x3d400000 0x400000>; 230168b7cf5dSSherry Sun interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 230268b7cf5dSSherry Sun }; 230368b7cf5dSSherry Sun 2304b39cb21fSJoakim Zhang ddr-pmu@3d800000 { 2305b39cb21fSJoakim Zhang compatible = "fsl,imx8mp-ddr-pmu", "fsl,imx8m-ddr-pmu"; 2306b39cb21fSJoakim Zhang reg = <0x3d800000 0x400000>; 2307b39cb21fSJoakim Zhang interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 2308b39cb21fSJoakim Zhang }; 2309fb8587a2SLi Jun 2310fb8587a2SLi Jun usb3_phy0: usb-phy@381f0040 { 2311fb8587a2SLi Jun compatible = "fsl,imx8mp-usb-phy"; 2312fb8587a2SLi Jun reg = <0x381f0040 0x40>; 2313fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 2314fb8587a2SLi Jun clock-names = "phy"; 2315fb8587a2SLi Jun assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 2316fb8587a2SLi Jun assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 23172ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY1>; 2318fb8587a2SLi Jun #phy-cells = <0>; 2319fb8587a2SLi Jun status = "disabled"; 2320fb8587a2SLi Jun }; 2321fb8587a2SLi Jun 2322fb8587a2SLi Jun usb3_0: usb@32f10100 { 2323fb8587a2SLi Jun compatible = "fsl,imx8mp-dwc3"; 2324290918c7SAlexander Stein reg = <0x32f10100 0x8>, 2325290918c7SAlexander Stein <0x381f0000 0x20>; 2326fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 23278a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2328fb8587a2SLi Jun clock-names = "hsio", "suspend"; 2329fb8587a2SLi Jun interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 23302ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 2331fb8587a2SLi Jun #address-cells = <1>; 2332fb8587a2SLi Jun #size-cells = <1>; 2333fb8587a2SLi Jun dma-ranges = <0x40000000 0x40000000 0xc0000000>; 2334fb8587a2SLi Jun ranges; 2335fb8587a2SLi Jun status = "disabled"; 2336fb8587a2SLi Jun 2337d1689cd3SZhen Lei usb_dwc3_0: usb@38100000 { 2338fb8587a2SLi Jun compatible = "snps,dwc3"; 2339fb8587a2SLi Jun reg = <0x38100000 0x10000>; 23408a1ed98fSLi Jun clocks = <&clk IMX8MP_CLK_USB_ROOT>, 2341fb8587a2SLi Jun <&clk IMX8MP_CLK_USB_CORE_REF>, 23428a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2343fb8587a2SLi Jun clock-names = "bus_early", "ref", "suspend"; 2344fb8587a2SLi Jun interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 2345fb8587a2SLi Jun phys = <&usb3_phy0>, <&usb3_phy0>; 2346fb8587a2SLi Jun phy-names = "usb2-phy", "usb3-phy"; 23475c3d5ecfSAlexander Stein snps,gfladj-refclk-lpm-sel-quirk; 2348209043cfSNathan Rossi snps,parkmode-disable-ss-quirk; 2349fb8587a2SLi Jun }; 2350fb8587a2SLi Jun 2351fb8587a2SLi Jun }; 2352fb8587a2SLi Jun 2353fb8587a2SLi Jun usb3_phy1: usb-phy@382f0040 { 2354fb8587a2SLi Jun compatible = "fsl,imx8mp-usb-phy"; 2355fb8587a2SLi Jun reg = <0x382f0040 0x40>; 2356fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 2357fb8587a2SLi Jun clock-names = "phy"; 2358fb8587a2SLi Jun assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 2359fb8587a2SLi Jun assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 23602ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY2>; 2361fb8587a2SLi Jun #phy-cells = <0>; 2362b2d67d7bSLucas Stach status = "disabled"; 2363fb8587a2SLi Jun }; 2364fb8587a2SLi Jun 2365fb8587a2SLi Jun usb3_1: usb@32f10108 { 2366fb8587a2SLi Jun compatible = "fsl,imx8mp-dwc3"; 2367290918c7SAlexander Stein reg = <0x32f10108 0x8>, 2368290918c7SAlexander Stein <0x382f0000 0x20>; 2369fb8587a2SLi Jun clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 23708a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2371fb8587a2SLi Jun clock-names = "hsio", "suspend"; 2372fb8587a2SLi Jun interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; 23732ae42e0cSLucas Stach power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 2374fb8587a2SLi Jun #address-cells = <1>; 2375fb8587a2SLi Jun #size-cells = <1>; 2376fb8587a2SLi Jun dma-ranges = <0x40000000 0x40000000 0xc0000000>; 2377fb8587a2SLi Jun ranges; 2378fb8587a2SLi Jun status = "disabled"; 2379fb8587a2SLi Jun 2380d1689cd3SZhen Lei usb_dwc3_1: usb@38200000 { 2381fb8587a2SLi Jun compatible = "snps,dwc3"; 2382fb8587a2SLi Jun reg = <0x38200000 0x10000>; 23838a1ed98fSLi Jun clocks = <&clk IMX8MP_CLK_USB_ROOT>, 2384fb8587a2SLi Jun <&clk IMX8MP_CLK_USB_CORE_REF>, 23858a1ed98fSLi Jun <&clk IMX8MP_CLK_USB_SUSP>; 2386fb8587a2SLi Jun clock-names = "bus_early", "ref", "suspend"; 2387fb8587a2SLi Jun interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 2388fb8587a2SLi Jun phys = <&usb3_phy1>, <&usb3_phy1>; 2389fb8587a2SLi Jun phy-names = "usb2-phy", "usb3-phy"; 23905c3d5ecfSAlexander Stein snps,gfladj-refclk-lpm-sel-quirk; 2391209043cfSNathan Rossi snps,parkmode-disable-ss-quirk; 2392fb8587a2SLi Jun }; 2393fb8587a2SLi Jun }; 2394bc3ab388SDaniel Baluta 2395bc3ab388SDaniel Baluta dsp: dsp@3b6e8000 { 2396bc3ab388SDaniel Baluta compatible = "fsl,imx8mp-dsp"; 2397bc3ab388SDaniel Baluta reg = <0x3b6e8000 0x88000>; 2398bc3ab388SDaniel Baluta mbox-names = "txdb0", "txdb1", 2399bc3ab388SDaniel Baluta "rxdb0", "rxdb1"; 2400bc3ab388SDaniel Baluta mboxes = <&mu2 2 0>, <&mu2 2 1>, 2401bc3ab388SDaniel Baluta <&mu2 3 0>, <&mu2 3 1>; 2402bc3ab388SDaniel Baluta memory-region = <&dsp_reserved>; 2403bc3ab388SDaniel Baluta status = "disabled"; 2404bc3ab388SDaniel Baluta }; 24056d9b8d20SAnson Huang }; 24066d9b8d20SAnson Huang}; 2407