1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c66ec88fSEmmanuel Vadot/* 3c66ec88fSEmmanuel Vadot * Copyright 2019 NXP 4c66ec88fSEmmanuel Vadot */ 5c66ec88fSEmmanuel Vadot 6c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/imx8mp-clock.h> 7d5b0e70fSEmmanuel Vadot#include <dt-bindings/power/imx8mp-power.h> 87ef62cebSEmmanuel Vadot#include <dt-bindings/reset/imx8mp-reset.h> 9c66ec88fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 10c66ec88fSEmmanuel Vadot#include <dt-bindings/input/input.h> 117ef62cebSEmmanuel Vadot#include <dt-bindings/interconnect/fsl,imx8mp.h> 12c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 13c66ec88fSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h> 14c66ec88fSEmmanuel Vadot 15c66ec88fSEmmanuel Vadot#include "imx8mp-pinfunc.h" 16c66ec88fSEmmanuel Vadot 17c66ec88fSEmmanuel Vadot/ { 18c66ec88fSEmmanuel Vadot interrupt-parent = <&gic>; 19c66ec88fSEmmanuel Vadot #address-cells = <2>; 20c66ec88fSEmmanuel Vadot #size-cells = <2>; 21c66ec88fSEmmanuel Vadot 22c66ec88fSEmmanuel Vadot aliases { 23c66ec88fSEmmanuel Vadot ethernet0 = &fec; 242eb4d8dcSEmmanuel Vadot ethernet1 = &eqos; 25c66ec88fSEmmanuel Vadot gpio0 = &gpio1; 26c66ec88fSEmmanuel Vadot gpio1 = &gpio2; 27c66ec88fSEmmanuel Vadot gpio2 = &gpio3; 28c66ec88fSEmmanuel Vadot gpio3 = &gpio4; 29c66ec88fSEmmanuel Vadot gpio4 = &gpio5; 30c66ec88fSEmmanuel Vadot i2c0 = &i2c1; 31c66ec88fSEmmanuel Vadot i2c1 = &i2c2; 32c66ec88fSEmmanuel Vadot i2c2 = &i2c3; 33c66ec88fSEmmanuel Vadot i2c3 = &i2c4; 34c66ec88fSEmmanuel Vadot i2c4 = &i2c5; 35c66ec88fSEmmanuel Vadot i2c5 = &i2c6; 36c66ec88fSEmmanuel Vadot mmc0 = &usdhc1; 37c66ec88fSEmmanuel Vadot mmc1 = &usdhc2; 38c66ec88fSEmmanuel Vadot mmc2 = &usdhc3; 39c66ec88fSEmmanuel Vadot serial0 = &uart1; 40c66ec88fSEmmanuel Vadot serial1 = &uart2; 41c66ec88fSEmmanuel Vadot serial2 = &uart3; 42c66ec88fSEmmanuel Vadot serial3 = &uart4; 435956d97fSEmmanuel Vadot spi0 = &flexspi; 44c66ec88fSEmmanuel Vadot }; 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel Vadot cpus { 47c66ec88fSEmmanuel Vadot #address-cells = <1>; 48c66ec88fSEmmanuel Vadot #size-cells = <0>; 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadot A53_0: cpu@0 { 51c66ec88fSEmmanuel Vadot device_type = "cpu"; 52c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 53c66ec88fSEmmanuel Vadot reg = <0x0>; 54c66ec88fSEmmanuel Vadot clock-latency = <61036>; 55c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ARM>; 56c66ec88fSEmmanuel Vadot enable-method = "psci"; 57e67e8565SEmmanuel Vadot i-cache-size = <0x8000>; 58e67e8565SEmmanuel Vadot i-cache-line-size = <64>; 59e67e8565SEmmanuel Vadot i-cache-sets = <256>; 60e67e8565SEmmanuel Vadot d-cache-size = <0x8000>; 61e67e8565SEmmanuel Vadot d-cache-line-size = <64>; 62e67e8565SEmmanuel Vadot d-cache-sets = <128>; 63c66ec88fSEmmanuel Vadot next-level-cache = <&A53_L2>; 64d5b0e70fSEmmanuel Vadot nvmem-cells = <&cpu_speed_grade>; 65d5b0e70fSEmmanuel Vadot nvmem-cell-names = "speed_grade"; 66d5b0e70fSEmmanuel Vadot operating-points-v2 = <&a53_opp_table>; 67c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 68c66ec88fSEmmanuel Vadot }; 69c66ec88fSEmmanuel Vadot 70c66ec88fSEmmanuel Vadot A53_1: cpu@1 { 71c66ec88fSEmmanuel Vadot device_type = "cpu"; 72c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 73c66ec88fSEmmanuel Vadot reg = <0x1>; 74c66ec88fSEmmanuel Vadot clock-latency = <61036>; 75c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ARM>; 76c66ec88fSEmmanuel Vadot enable-method = "psci"; 77e67e8565SEmmanuel Vadot i-cache-size = <0x8000>; 78e67e8565SEmmanuel Vadot i-cache-line-size = <64>; 79e67e8565SEmmanuel Vadot i-cache-sets = <256>; 80e67e8565SEmmanuel Vadot d-cache-size = <0x8000>; 81e67e8565SEmmanuel Vadot d-cache-line-size = <64>; 82e67e8565SEmmanuel Vadot d-cache-sets = <128>; 83c66ec88fSEmmanuel Vadot next-level-cache = <&A53_L2>; 84d5b0e70fSEmmanuel Vadot operating-points-v2 = <&a53_opp_table>; 85c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 86c66ec88fSEmmanuel Vadot }; 87c66ec88fSEmmanuel Vadot 88c66ec88fSEmmanuel Vadot A53_2: cpu@2 { 89c66ec88fSEmmanuel Vadot device_type = "cpu"; 90c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 91c66ec88fSEmmanuel Vadot reg = <0x2>; 92c66ec88fSEmmanuel Vadot clock-latency = <61036>; 93c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ARM>; 94c66ec88fSEmmanuel Vadot enable-method = "psci"; 95e67e8565SEmmanuel Vadot i-cache-size = <0x8000>; 96e67e8565SEmmanuel Vadot i-cache-line-size = <64>; 97e67e8565SEmmanuel Vadot i-cache-sets = <256>; 98e67e8565SEmmanuel Vadot d-cache-size = <0x8000>; 99e67e8565SEmmanuel Vadot d-cache-line-size = <64>; 100e67e8565SEmmanuel Vadot d-cache-sets = <128>; 101c66ec88fSEmmanuel Vadot next-level-cache = <&A53_L2>; 102d5b0e70fSEmmanuel Vadot operating-points-v2 = <&a53_opp_table>; 103c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 104c66ec88fSEmmanuel Vadot }; 105c66ec88fSEmmanuel Vadot 106c66ec88fSEmmanuel Vadot A53_3: cpu@3 { 107c66ec88fSEmmanuel Vadot device_type = "cpu"; 108c66ec88fSEmmanuel Vadot compatible = "arm,cortex-a53"; 109c66ec88fSEmmanuel Vadot reg = <0x3>; 110c66ec88fSEmmanuel Vadot clock-latency = <61036>; 111c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ARM>; 112c66ec88fSEmmanuel Vadot enable-method = "psci"; 113e67e8565SEmmanuel Vadot i-cache-size = <0x8000>; 114e67e8565SEmmanuel Vadot i-cache-line-size = <64>; 115e67e8565SEmmanuel Vadot i-cache-sets = <256>; 116e67e8565SEmmanuel Vadot d-cache-size = <0x8000>; 117e67e8565SEmmanuel Vadot d-cache-line-size = <64>; 118e67e8565SEmmanuel Vadot d-cache-sets = <128>; 119c66ec88fSEmmanuel Vadot next-level-cache = <&A53_L2>; 120d5b0e70fSEmmanuel Vadot operating-points-v2 = <&a53_opp_table>; 121c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 122c66ec88fSEmmanuel Vadot }; 123c66ec88fSEmmanuel Vadot 124c66ec88fSEmmanuel Vadot A53_L2: l2-cache0 { 125c66ec88fSEmmanuel Vadot compatible = "cache"; 1268bab661aSEmmanuel Vadot cache-unified; 127e67e8565SEmmanuel Vadot cache-level = <2>; 128e67e8565SEmmanuel Vadot cache-size = <0x80000>; 129e67e8565SEmmanuel Vadot cache-line-size = <64>; 130e67e8565SEmmanuel Vadot cache-sets = <512>; 131c66ec88fSEmmanuel Vadot }; 132c66ec88fSEmmanuel Vadot }; 133c66ec88fSEmmanuel Vadot 134d5b0e70fSEmmanuel Vadot a53_opp_table: opp-table { 135d5b0e70fSEmmanuel Vadot compatible = "operating-points-v2"; 136d5b0e70fSEmmanuel Vadot opp-shared; 137d5b0e70fSEmmanuel Vadot 138d5b0e70fSEmmanuel Vadot opp-1200000000 { 139d5b0e70fSEmmanuel Vadot opp-hz = /bits/ 64 <1200000000>; 140d5b0e70fSEmmanuel Vadot opp-microvolt = <850000>; 141d5b0e70fSEmmanuel Vadot opp-supported-hw = <0x8a0>, <0x7>; 142d5b0e70fSEmmanuel Vadot clock-latency-ns = <150000>; 143d5b0e70fSEmmanuel Vadot opp-suspend; 144d5b0e70fSEmmanuel Vadot }; 145d5b0e70fSEmmanuel Vadot 146d5b0e70fSEmmanuel Vadot opp-1600000000 { 147d5b0e70fSEmmanuel Vadot opp-hz = /bits/ 64 <1600000000>; 148d5b0e70fSEmmanuel Vadot opp-microvolt = <950000>; 149d5b0e70fSEmmanuel Vadot opp-supported-hw = <0xa0>, <0x7>; 150d5b0e70fSEmmanuel Vadot clock-latency-ns = <150000>; 151d5b0e70fSEmmanuel Vadot opp-suspend; 152d5b0e70fSEmmanuel Vadot }; 153d5b0e70fSEmmanuel Vadot 154d5b0e70fSEmmanuel Vadot opp-1800000000 { 155d5b0e70fSEmmanuel Vadot opp-hz = /bits/ 64 <1800000000>; 156d5b0e70fSEmmanuel Vadot opp-microvolt = <1000000>; 157d5b0e70fSEmmanuel Vadot opp-supported-hw = <0x20>, <0x3>; 158d5b0e70fSEmmanuel Vadot clock-latency-ns = <150000>; 159d5b0e70fSEmmanuel Vadot opp-suspend; 160d5b0e70fSEmmanuel Vadot }; 161d5b0e70fSEmmanuel Vadot }; 162d5b0e70fSEmmanuel Vadot 163c66ec88fSEmmanuel Vadot osc_32k: clock-osc-32k { 164c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 165c66ec88fSEmmanuel Vadot #clock-cells = <0>; 166c66ec88fSEmmanuel Vadot clock-frequency = <32768>; 167c66ec88fSEmmanuel Vadot clock-output-names = "osc_32k"; 168c66ec88fSEmmanuel Vadot }; 169c66ec88fSEmmanuel Vadot 170c66ec88fSEmmanuel Vadot osc_24m: clock-osc-24m { 171c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 172c66ec88fSEmmanuel Vadot #clock-cells = <0>; 173c66ec88fSEmmanuel Vadot clock-frequency = <24000000>; 174c66ec88fSEmmanuel Vadot clock-output-names = "osc_24m"; 175c66ec88fSEmmanuel Vadot }; 176c66ec88fSEmmanuel Vadot 177c66ec88fSEmmanuel Vadot clk_ext1: clock-ext1 { 178c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 179c66ec88fSEmmanuel Vadot #clock-cells = <0>; 180c66ec88fSEmmanuel Vadot clock-frequency = <133000000>; 181c66ec88fSEmmanuel Vadot clock-output-names = "clk_ext1"; 182c66ec88fSEmmanuel Vadot }; 183c66ec88fSEmmanuel Vadot 184c66ec88fSEmmanuel Vadot clk_ext2: clock-ext2 { 185c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 186c66ec88fSEmmanuel Vadot #clock-cells = <0>; 187c66ec88fSEmmanuel Vadot clock-frequency = <133000000>; 188c66ec88fSEmmanuel Vadot clock-output-names = "clk_ext2"; 189c66ec88fSEmmanuel Vadot }; 190c66ec88fSEmmanuel Vadot 191c66ec88fSEmmanuel Vadot clk_ext3: clock-ext3 { 192c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 193c66ec88fSEmmanuel Vadot #clock-cells = <0>; 194c66ec88fSEmmanuel Vadot clock-frequency = <133000000>; 195c66ec88fSEmmanuel Vadot clock-output-names = "clk_ext3"; 196c66ec88fSEmmanuel Vadot }; 197c66ec88fSEmmanuel Vadot 198c66ec88fSEmmanuel Vadot clk_ext4: clock-ext4 { 199c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 200c66ec88fSEmmanuel Vadot #clock-cells = <0>; 201c66ec88fSEmmanuel Vadot clock-frequency = <133000000>; 202c66ec88fSEmmanuel Vadot clock-output-names = "clk_ext4"; 203c66ec88fSEmmanuel Vadot }; 204c66ec88fSEmmanuel Vadot 20584943d6fSEmmanuel Vadot funnel { 20684943d6fSEmmanuel Vadot /* 20784943d6fSEmmanuel Vadot * non-configurable funnel don't show up on the AMBA 20884943d6fSEmmanuel Vadot * bus. As such no need to add "arm,primecell". 20984943d6fSEmmanuel Vadot */ 21084943d6fSEmmanuel Vadot compatible = "arm,coresight-static-funnel"; 21184943d6fSEmmanuel Vadot 21284943d6fSEmmanuel Vadot in-ports { 21384943d6fSEmmanuel Vadot #address-cells = <1>; 21484943d6fSEmmanuel Vadot #size-cells = <0>; 21584943d6fSEmmanuel Vadot 21684943d6fSEmmanuel Vadot port@0 { 21784943d6fSEmmanuel Vadot reg = <0>; 21884943d6fSEmmanuel Vadot 21984943d6fSEmmanuel Vadot ca_funnel_in_port0: endpoint { 22084943d6fSEmmanuel Vadot remote-endpoint = <&etm0_out_port>; 22184943d6fSEmmanuel Vadot }; 22284943d6fSEmmanuel Vadot }; 22384943d6fSEmmanuel Vadot 22484943d6fSEmmanuel Vadot port@1 { 22584943d6fSEmmanuel Vadot reg = <1>; 22684943d6fSEmmanuel Vadot 22784943d6fSEmmanuel Vadot ca_funnel_in_port1: endpoint { 22884943d6fSEmmanuel Vadot remote-endpoint = <&etm1_out_port>; 22984943d6fSEmmanuel Vadot }; 23084943d6fSEmmanuel Vadot }; 23184943d6fSEmmanuel Vadot 23284943d6fSEmmanuel Vadot port@2 { 23384943d6fSEmmanuel Vadot reg = <2>; 23484943d6fSEmmanuel Vadot 23584943d6fSEmmanuel Vadot ca_funnel_in_port2: endpoint { 23684943d6fSEmmanuel Vadot remote-endpoint = <&etm2_out_port>; 23784943d6fSEmmanuel Vadot }; 23884943d6fSEmmanuel Vadot }; 23984943d6fSEmmanuel Vadot 24084943d6fSEmmanuel Vadot port@3 { 24184943d6fSEmmanuel Vadot reg = <3>; 24284943d6fSEmmanuel Vadot 24384943d6fSEmmanuel Vadot ca_funnel_in_port3: endpoint { 24484943d6fSEmmanuel Vadot remote-endpoint = <&etm3_out_port>; 24584943d6fSEmmanuel Vadot }; 24684943d6fSEmmanuel Vadot }; 24784943d6fSEmmanuel Vadot }; 24884943d6fSEmmanuel Vadot 24984943d6fSEmmanuel Vadot out-ports { 25084943d6fSEmmanuel Vadot port { 25184943d6fSEmmanuel Vadot 25284943d6fSEmmanuel Vadot ca_funnel_out_port0: endpoint { 25384943d6fSEmmanuel Vadot remote-endpoint = <&hugo_funnel_in_port0>; 25484943d6fSEmmanuel Vadot }; 25584943d6fSEmmanuel Vadot }; 25684943d6fSEmmanuel Vadot }; 25784943d6fSEmmanuel Vadot }; 25884943d6fSEmmanuel Vadot 259354d7675SEmmanuel Vadot reserved-memory { 260354d7675SEmmanuel Vadot #address-cells = <2>; 261354d7675SEmmanuel Vadot #size-cells = <2>; 262354d7675SEmmanuel Vadot ranges; 263354d7675SEmmanuel Vadot 264354d7675SEmmanuel Vadot dsp_reserved: dsp@92400000 { 265354d7675SEmmanuel Vadot reg = <0 0x92400000 0 0x2000000>; 266354d7675SEmmanuel Vadot no-map; 2678d13bc63SEmmanuel Vadot status = "disabled"; 268354d7675SEmmanuel Vadot }; 269354d7675SEmmanuel Vadot }; 270354d7675SEmmanuel Vadot 2715def4c47SEmmanuel Vadot pmu { 2725def4c47SEmmanuel Vadot compatible = "arm,cortex-a53-pmu"; 2735def4c47SEmmanuel Vadot interrupts = <GIC_PPI 7 2745def4c47SEmmanuel Vadot (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 2755def4c47SEmmanuel Vadot }; 2765def4c47SEmmanuel Vadot 277c66ec88fSEmmanuel Vadot psci { 278c66ec88fSEmmanuel Vadot compatible = "arm,psci-1.0"; 279c66ec88fSEmmanuel Vadot method = "smc"; 280c66ec88fSEmmanuel Vadot }; 281c66ec88fSEmmanuel Vadot 282c66ec88fSEmmanuel Vadot thermal-zones { 283c66ec88fSEmmanuel Vadot cpu-thermal { 284c66ec88fSEmmanuel Vadot polling-delay-passive = <250>; 285c66ec88fSEmmanuel Vadot polling-delay = <2000>; 286c66ec88fSEmmanuel Vadot thermal-sensors = <&tmu 0>; 287c66ec88fSEmmanuel Vadot trips { 288c66ec88fSEmmanuel Vadot cpu_alert0: trip0 { 289c66ec88fSEmmanuel Vadot temperature = <85000>; 290c66ec88fSEmmanuel Vadot hysteresis = <2000>; 291c66ec88fSEmmanuel Vadot type = "passive"; 292c66ec88fSEmmanuel Vadot }; 293c66ec88fSEmmanuel Vadot 294c66ec88fSEmmanuel Vadot cpu_crit0: trip1 { 295c66ec88fSEmmanuel Vadot temperature = <95000>; 296c66ec88fSEmmanuel Vadot hysteresis = <2000>; 297c66ec88fSEmmanuel Vadot type = "critical"; 298c66ec88fSEmmanuel Vadot }; 299c66ec88fSEmmanuel Vadot }; 300c66ec88fSEmmanuel Vadot 301c66ec88fSEmmanuel Vadot cooling-maps { 302c66ec88fSEmmanuel Vadot map0 { 303c66ec88fSEmmanuel Vadot trip = <&cpu_alert0>; 304c66ec88fSEmmanuel Vadot cooling-device = 305c66ec88fSEmmanuel Vadot <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 306c66ec88fSEmmanuel Vadot <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 307c66ec88fSEmmanuel Vadot <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 308c66ec88fSEmmanuel Vadot <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 309c66ec88fSEmmanuel Vadot }; 310c66ec88fSEmmanuel Vadot }; 311c66ec88fSEmmanuel Vadot }; 312c66ec88fSEmmanuel Vadot 313c66ec88fSEmmanuel Vadot soc-thermal { 314c66ec88fSEmmanuel Vadot polling-delay-passive = <250>; 315c66ec88fSEmmanuel Vadot polling-delay = <2000>; 316c66ec88fSEmmanuel Vadot thermal-sensors = <&tmu 1>; 317c66ec88fSEmmanuel Vadot trips { 318c66ec88fSEmmanuel Vadot soc_alert0: trip0 { 319c66ec88fSEmmanuel Vadot temperature = <85000>; 320c66ec88fSEmmanuel Vadot hysteresis = <2000>; 321c66ec88fSEmmanuel Vadot type = "passive"; 322c66ec88fSEmmanuel Vadot }; 323c66ec88fSEmmanuel Vadot 324c66ec88fSEmmanuel Vadot soc_crit0: trip1 { 325c66ec88fSEmmanuel Vadot temperature = <95000>; 326c66ec88fSEmmanuel Vadot hysteresis = <2000>; 327c66ec88fSEmmanuel Vadot type = "critical"; 328c66ec88fSEmmanuel Vadot }; 329c66ec88fSEmmanuel Vadot }; 330c66ec88fSEmmanuel Vadot 331c66ec88fSEmmanuel Vadot cooling-maps { 332c66ec88fSEmmanuel Vadot map0 { 333c66ec88fSEmmanuel Vadot trip = <&soc_alert0>; 334c66ec88fSEmmanuel Vadot cooling-device = 335c66ec88fSEmmanuel Vadot <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 336c66ec88fSEmmanuel Vadot <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 337c66ec88fSEmmanuel Vadot <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 338c66ec88fSEmmanuel Vadot <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 339c66ec88fSEmmanuel Vadot }; 340c66ec88fSEmmanuel Vadot }; 341c66ec88fSEmmanuel Vadot }; 342c66ec88fSEmmanuel Vadot }; 343c66ec88fSEmmanuel Vadot 344c66ec88fSEmmanuel Vadot timer { 345c66ec88fSEmmanuel Vadot compatible = "arm,armv8-timer"; 3465def4c47SEmmanuel Vadot interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3475def4c47SEmmanuel Vadot <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3485def4c47SEmmanuel Vadot <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3495def4c47SEmmanuel Vadot <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 350c66ec88fSEmmanuel Vadot clock-frequency = <8000000>; 351c66ec88fSEmmanuel Vadot arm,no-tick-in-suspend; 352c66ec88fSEmmanuel Vadot }; 353c66ec88fSEmmanuel Vadot 354b97ee269SEmmanuel Vadot soc: soc@0 { 3555def4c47SEmmanuel Vadot compatible = "fsl,imx8mp-soc", "simple-bus"; 356c66ec88fSEmmanuel Vadot #address-cells = <1>; 357c66ec88fSEmmanuel Vadot #size-cells = <1>; 358c66ec88fSEmmanuel Vadot ranges = <0x0 0x0 0x0 0x3e000000>; 3595def4c47SEmmanuel Vadot nvmem-cells = <&imx8mp_uid>; 3605def4c47SEmmanuel Vadot nvmem-cell-names = "soc_unique_id"; 361c66ec88fSEmmanuel Vadot 362f126890aSEmmanuel Vadot etm0: etm@28440000 { 363f126890aSEmmanuel Vadot compatible = "arm,coresight-etm4x", "arm,primecell"; 364aa1a8ff2SEmmanuel Vadot reg = <0x28440000 0x1000>; 365f126890aSEmmanuel Vadot cpu = <&A53_0>; 366f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 367f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 368f126890aSEmmanuel Vadot 369f126890aSEmmanuel Vadot out-ports { 370f126890aSEmmanuel Vadot port { 371f126890aSEmmanuel Vadot etm0_out_port: endpoint { 372f126890aSEmmanuel Vadot remote-endpoint = <&ca_funnel_in_port0>; 373f126890aSEmmanuel Vadot }; 374f126890aSEmmanuel Vadot }; 375f126890aSEmmanuel Vadot }; 376f126890aSEmmanuel Vadot }; 377f126890aSEmmanuel Vadot 378f126890aSEmmanuel Vadot etm1: etm@28540000 { 379f126890aSEmmanuel Vadot compatible = "arm,coresight-etm4x", "arm,primecell"; 380aa1a8ff2SEmmanuel Vadot reg = <0x28540000 0x1000>; 381f126890aSEmmanuel Vadot cpu = <&A53_1>; 382f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 383f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 384f126890aSEmmanuel Vadot 385f126890aSEmmanuel Vadot out-ports { 386f126890aSEmmanuel Vadot port { 387f126890aSEmmanuel Vadot etm1_out_port: endpoint { 388f126890aSEmmanuel Vadot remote-endpoint = <&ca_funnel_in_port1>; 389f126890aSEmmanuel Vadot }; 390f126890aSEmmanuel Vadot }; 391f126890aSEmmanuel Vadot }; 392f126890aSEmmanuel Vadot }; 393f126890aSEmmanuel Vadot 394f126890aSEmmanuel Vadot etm2: etm@28640000 { 395f126890aSEmmanuel Vadot compatible = "arm,coresight-etm4x", "arm,primecell"; 396aa1a8ff2SEmmanuel Vadot reg = <0x28640000 0x1000>; 397f126890aSEmmanuel Vadot cpu = <&A53_2>; 398f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 399f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 400f126890aSEmmanuel Vadot 401f126890aSEmmanuel Vadot out-ports { 402f126890aSEmmanuel Vadot port { 403f126890aSEmmanuel Vadot etm2_out_port: endpoint { 404f126890aSEmmanuel Vadot remote-endpoint = <&ca_funnel_in_port2>; 405f126890aSEmmanuel Vadot }; 406f126890aSEmmanuel Vadot }; 407f126890aSEmmanuel Vadot }; 408f126890aSEmmanuel Vadot }; 409f126890aSEmmanuel Vadot 410f126890aSEmmanuel Vadot etm3: etm@28740000 { 411f126890aSEmmanuel Vadot compatible = "arm,coresight-etm4x", "arm,primecell"; 412aa1a8ff2SEmmanuel Vadot reg = <0x28740000 0x1000>; 413f126890aSEmmanuel Vadot cpu = <&A53_3>; 414f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 415f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 416f126890aSEmmanuel Vadot 417f126890aSEmmanuel Vadot out-ports { 418f126890aSEmmanuel Vadot port { 419f126890aSEmmanuel Vadot etm3_out_port: endpoint { 420f126890aSEmmanuel Vadot remote-endpoint = <&ca_funnel_in_port3>; 421f126890aSEmmanuel Vadot }; 422f126890aSEmmanuel Vadot }; 423f126890aSEmmanuel Vadot }; 424f126890aSEmmanuel Vadot }; 425f126890aSEmmanuel Vadot 426f126890aSEmmanuel Vadot funnel@28c03000 { 427f126890aSEmmanuel Vadot compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 428f126890aSEmmanuel Vadot reg = <0x28c03000 0x1000>; 429f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 430f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 431f126890aSEmmanuel Vadot 432f126890aSEmmanuel Vadot in-ports { 433f126890aSEmmanuel Vadot #address-cells = <1>; 434f126890aSEmmanuel Vadot #size-cells = <0>; 435f126890aSEmmanuel Vadot 436f126890aSEmmanuel Vadot port@0 { 437f126890aSEmmanuel Vadot reg = <0>; 438f126890aSEmmanuel Vadot 439f126890aSEmmanuel Vadot hugo_funnel_in_port0: endpoint { 440f126890aSEmmanuel Vadot remote-endpoint = <&ca_funnel_out_port0>; 441f126890aSEmmanuel Vadot }; 442f126890aSEmmanuel Vadot }; 443f126890aSEmmanuel Vadot 444f126890aSEmmanuel Vadot port@1 { 445f126890aSEmmanuel Vadot reg = <1>; 446f126890aSEmmanuel Vadot 447f126890aSEmmanuel Vadot hugo_funnel_in_port1: endpoint { 448f126890aSEmmanuel Vadot /* M7 input */ 449f126890aSEmmanuel Vadot }; 450f126890aSEmmanuel Vadot }; 451f126890aSEmmanuel Vadot 452f126890aSEmmanuel Vadot port@2 { 453f126890aSEmmanuel Vadot reg = <2>; 454f126890aSEmmanuel Vadot 455f126890aSEmmanuel Vadot hugo_funnel_in_port2: endpoint { 456f126890aSEmmanuel Vadot /* DSP input */ 457f126890aSEmmanuel Vadot }; 458f126890aSEmmanuel Vadot }; 459f126890aSEmmanuel Vadot /* the other input ports are not connect to anything */ 460f126890aSEmmanuel Vadot }; 461f126890aSEmmanuel Vadot 462f126890aSEmmanuel Vadot out-ports { 463f126890aSEmmanuel Vadot port { 464f126890aSEmmanuel Vadot hugo_funnel_out_port0: endpoint { 465f126890aSEmmanuel Vadot remote-endpoint = <&etf_in_port>; 466f126890aSEmmanuel Vadot }; 467f126890aSEmmanuel Vadot }; 468f126890aSEmmanuel Vadot }; 469f126890aSEmmanuel Vadot }; 470f126890aSEmmanuel Vadot 471f126890aSEmmanuel Vadot etf@28c04000 { 472f126890aSEmmanuel Vadot compatible = "arm,coresight-tmc", "arm,primecell"; 473f126890aSEmmanuel Vadot reg = <0x28c04000 0x1000>; 474f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 475f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 476f126890aSEmmanuel Vadot 477f126890aSEmmanuel Vadot in-ports { 478f126890aSEmmanuel Vadot port { 479f126890aSEmmanuel Vadot etf_in_port: endpoint { 480f126890aSEmmanuel Vadot remote-endpoint = <&hugo_funnel_out_port0>; 481f126890aSEmmanuel Vadot }; 482f126890aSEmmanuel Vadot }; 483f126890aSEmmanuel Vadot }; 484f126890aSEmmanuel Vadot 485f126890aSEmmanuel Vadot out-ports { 486f126890aSEmmanuel Vadot port { 487f126890aSEmmanuel Vadot etf_out_port: endpoint { 488f126890aSEmmanuel Vadot remote-endpoint = <&etr_in_port>; 489f126890aSEmmanuel Vadot }; 490f126890aSEmmanuel Vadot }; 491f126890aSEmmanuel Vadot }; 492f126890aSEmmanuel Vadot }; 493f126890aSEmmanuel Vadot 494f126890aSEmmanuel Vadot etr@28c06000 { 495f126890aSEmmanuel Vadot compatible = "arm,coresight-tmc", "arm,primecell"; 496f126890aSEmmanuel Vadot reg = <0x28c06000 0x1000>; 497f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MAIN_AXI>; 498f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 499f126890aSEmmanuel Vadot 500f126890aSEmmanuel Vadot in-ports { 501f126890aSEmmanuel Vadot port { 502f126890aSEmmanuel Vadot etr_in_port: endpoint { 503f126890aSEmmanuel Vadot remote-endpoint = <&etf_out_port>; 504f126890aSEmmanuel Vadot }; 505f126890aSEmmanuel Vadot }; 506f126890aSEmmanuel Vadot }; 507f126890aSEmmanuel Vadot }; 508f126890aSEmmanuel Vadot 509c66ec88fSEmmanuel Vadot aips1: bus@30000000 { 510c66ec88fSEmmanuel Vadot compatible = "fsl,aips-bus", "simple-bus"; 511c66ec88fSEmmanuel Vadot reg = <0x30000000 0x400000>; 512c66ec88fSEmmanuel Vadot #address-cells = <1>; 513c66ec88fSEmmanuel Vadot #size-cells = <1>; 514c66ec88fSEmmanuel Vadot ranges; 515c66ec88fSEmmanuel Vadot 516c66ec88fSEmmanuel Vadot gpio1: gpio@30200000 { 517c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 518c66ec88fSEmmanuel Vadot reg = <0x30200000 0x10000>; 519c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 520c66ec88fSEmmanuel Vadot <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 521c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPIO1_ROOT>; 522c66ec88fSEmmanuel Vadot gpio-controller; 523c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 524c66ec88fSEmmanuel Vadot interrupt-controller; 525c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 526c66ec88fSEmmanuel Vadot gpio-ranges = <&iomuxc 0 5 30>; 527c66ec88fSEmmanuel Vadot }; 528c66ec88fSEmmanuel Vadot 529c66ec88fSEmmanuel Vadot gpio2: gpio@30210000 { 530c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 531c66ec88fSEmmanuel Vadot reg = <0x30210000 0x10000>; 532c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 533c66ec88fSEmmanuel Vadot <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 534c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPIO2_ROOT>; 535c66ec88fSEmmanuel Vadot gpio-controller; 536c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 537c66ec88fSEmmanuel Vadot interrupt-controller; 538c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 539c66ec88fSEmmanuel Vadot gpio-ranges = <&iomuxc 0 35 21>; 540c66ec88fSEmmanuel Vadot }; 541c66ec88fSEmmanuel Vadot 542c66ec88fSEmmanuel Vadot gpio3: gpio@30220000 { 543c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 544c66ec88fSEmmanuel Vadot reg = <0x30220000 0x10000>; 545c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 546c66ec88fSEmmanuel Vadot <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 547c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPIO3_ROOT>; 548c66ec88fSEmmanuel Vadot gpio-controller; 549c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 550c66ec88fSEmmanuel Vadot interrupt-controller; 551c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 5525def4c47SEmmanuel Vadot gpio-ranges = <&iomuxc 0 56 26>, <&iomuxc 26 144 4>; 553c66ec88fSEmmanuel Vadot }; 554c66ec88fSEmmanuel Vadot 555c66ec88fSEmmanuel Vadot gpio4: gpio@30230000 { 556c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 557c66ec88fSEmmanuel Vadot reg = <0x30230000 0x10000>; 558c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 559c66ec88fSEmmanuel Vadot <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 560c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPIO4_ROOT>; 561c66ec88fSEmmanuel Vadot gpio-controller; 562c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 563c66ec88fSEmmanuel Vadot interrupt-controller; 564c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 565c66ec88fSEmmanuel Vadot gpio-ranges = <&iomuxc 0 82 32>; 566c66ec88fSEmmanuel Vadot }; 567c66ec88fSEmmanuel Vadot 568c66ec88fSEmmanuel Vadot gpio5: gpio@30240000 { 569c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-gpio", "fsl,imx35-gpio"; 570c66ec88fSEmmanuel Vadot reg = <0x30240000 0x10000>; 571c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 572c66ec88fSEmmanuel Vadot <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 573c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPIO5_ROOT>; 574c66ec88fSEmmanuel Vadot gpio-controller; 575c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 576c66ec88fSEmmanuel Vadot interrupt-controller; 577c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 578c66ec88fSEmmanuel Vadot gpio-ranges = <&iomuxc 0 114 30>; 579c66ec88fSEmmanuel Vadot }; 580c66ec88fSEmmanuel Vadot 581c66ec88fSEmmanuel Vadot tmu: tmu@30260000 { 582c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-tmu"; 583c66ec88fSEmmanuel Vadot reg = <0x30260000 0x10000>; 584c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_TSENSOR_ROOT>; 585cb7aa33aSEmmanuel Vadot nvmem-cells = <&tmu_calib>; 586cb7aa33aSEmmanuel Vadot nvmem-cell-names = "calib"; 587c66ec88fSEmmanuel Vadot #thermal-sensor-cells = <1>; 588c66ec88fSEmmanuel Vadot }; 589c66ec88fSEmmanuel Vadot 590c66ec88fSEmmanuel Vadot wdog1: watchdog@30280000 { 591c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 592c66ec88fSEmmanuel Vadot reg = <0x30280000 0x10000>; 593c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 594c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_WDOG1_ROOT>; 595c66ec88fSEmmanuel Vadot status = "disabled"; 596c66ec88fSEmmanuel Vadot }; 597c66ec88fSEmmanuel Vadot 5982eb4d8dcSEmmanuel Vadot wdog2: watchdog@30290000 { 5992eb4d8dcSEmmanuel Vadot compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 6002eb4d8dcSEmmanuel Vadot reg = <0x30290000 0x10000>; 6012eb4d8dcSEmmanuel Vadot interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 6022eb4d8dcSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_WDOG2_ROOT>; 6032eb4d8dcSEmmanuel Vadot status = "disabled"; 6042eb4d8dcSEmmanuel Vadot }; 6052eb4d8dcSEmmanuel Vadot 6062eb4d8dcSEmmanuel Vadot wdog3: watchdog@302a0000 { 6072eb4d8dcSEmmanuel Vadot compatible = "fsl,imx8mp-wdt", "fsl,imx21-wdt"; 6082eb4d8dcSEmmanuel Vadot reg = <0x302a0000 0x10000>; 6092eb4d8dcSEmmanuel Vadot interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 6102eb4d8dcSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_WDOG3_ROOT>; 6112eb4d8dcSEmmanuel Vadot status = "disabled"; 6122eb4d8dcSEmmanuel Vadot }; 6132eb4d8dcSEmmanuel Vadot 614fac71e4eSEmmanuel Vadot gpt1: timer@302d0000 { 615fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 616fac71e4eSEmmanuel Vadot reg = <0x302d0000 0x10000>; 617fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 618fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT1_ROOT>, <&clk IMX8MP_CLK_GPT1>; 619fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 620fac71e4eSEmmanuel Vadot }; 621fac71e4eSEmmanuel Vadot 622fac71e4eSEmmanuel Vadot gpt2: timer@302e0000 { 623fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 624fac71e4eSEmmanuel Vadot reg = <0x302e0000 0x10000>; 625fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 626fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT2_ROOT>, <&clk IMX8MP_CLK_GPT2>; 627fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 628fac71e4eSEmmanuel Vadot }; 629fac71e4eSEmmanuel Vadot 630fac71e4eSEmmanuel Vadot gpt3: timer@302f0000 { 631fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 632fac71e4eSEmmanuel Vadot reg = <0x302f0000 0x10000>; 633fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 634fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT3_ROOT>, <&clk IMX8MP_CLK_GPT3>; 635fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 636fac71e4eSEmmanuel Vadot }; 637fac71e4eSEmmanuel Vadot 638c66ec88fSEmmanuel Vadot iomuxc: pinctrl@30330000 { 639c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-iomuxc"; 640c66ec88fSEmmanuel Vadot reg = <0x30330000 0x10000>; 641c66ec88fSEmmanuel Vadot }; 642c66ec88fSEmmanuel Vadot 643cb7aa33aSEmmanuel Vadot gpr: syscon@30340000 { 644c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-iomuxc-gpr", "syscon"; 645c66ec88fSEmmanuel Vadot reg = <0x30340000 0x10000>; 646c66ec88fSEmmanuel Vadot }; 647c66ec88fSEmmanuel Vadot 648c66ec88fSEmmanuel Vadot ocotp: efuse@30350000 { 649c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-ocotp", "fsl,imx8mm-ocotp", "syscon"; 650c66ec88fSEmmanuel Vadot reg = <0x30350000 0x10000>; 651c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_OCOTP_ROOT>; 652c66ec88fSEmmanuel Vadot /* For nvmem subnodes */ 653c66ec88fSEmmanuel Vadot #address-cells = <1>; 654c66ec88fSEmmanuel Vadot #size-cells = <1>; 655c66ec88fSEmmanuel Vadot 656cb7aa33aSEmmanuel Vadot /* 657cb7aa33aSEmmanuel Vadot * The register address below maps to the MX8M 658cb7aa33aSEmmanuel Vadot * Fusemap Description Table entries this way. 659cb7aa33aSEmmanuel Vadot * Assuming 660cb7aa33aSEmmanuel Vadot * reg = <ADDR SIZE>; 661cb7aa33aSEmmanuel Vadot * then 662cb7aa33aSEmmanuel Vadot * Fuse Address = (ADDR * 4) + 0x400 663cb7aa33aSEmmanuel Vadot * Note that if SIZE is greater than 4, then 664cb7aa33aSEmmanuel Vadot * each subsequent fuse is located at offset 665cb7aa33aSEmmanuel Vadot * +0x10 in Fusemap Description Table (e.g. 666cb7aa33aSEmmanuel Vadot * reg = <0x8 0x8> describes fuses 0x420 and 667cb7aa33aSEmmanuel Vadot * 0x430). 668cb7aa33aSEmmanuel Vadot */ 669cb7aa33aSEmmanuel Vadot imx8mp_uid: unique-id@8 { /* 0x420-0x430 */ 6705def4c47SEmmanuel Vadot reg = <0x8 0x8>; 6715def4c47SEmmanuel Vadot }; 6725def4c47SEmmanuel Vadot 673cb7aa33aSEmmanuel Vadot cpu_speed_grade: speed-grade@10 { /* 0x440 */ 674c66ec88fSEmmanuel Vadot reg = <0x10 4>; 675c66ec88fSEmmanuel Vadot }; 6765def4c47SEmmanuel Vadot 677cb7aa33aSEmmanuel Vadot eth_mac1: mac-address@90 { /* 0x640 */ 6785def4c47SEmmanuel Vadot reg = <0x90 6>; 6795def4c47SEmmanuel Vadot }; 680e67e8565SEmmanuel Vadot 681cb7aa33aSEmmanuel Vadot eth_mac2: mac-address@96 { /* 0x658 */ 682e67e8565SEmmanuel Vadot reg = <0x96 6>; 683e67e8565SEmmanuel Vadot }; 684cb7aa33aSEmmanuel Vadot 685cb7aa33aSEmmanuel Vadot tmu_calib: calib@264 { /* 0xd90-0xdc0 */ 686cb7aa33aSEmmanuel Vadot reg = <0x264 0x10>; 687cb7aa33aSEmmanuel Vadot }; 688c66ec88fSEmmanuel Vadot }; 689c66ec88fSEmmanuel Vadot 6908bab661aSEmmanuel Vadot anatop: clock-controller@30360000 { 6918bab661aSEmmanuel Vadot compatible = "fsl,imx8mp-anatop", "fsl,imx8mm-anatop"; 692c66ec88fSEmmanuel Vadot reg = <0x30360000 0x10000>; 6938bab661aSEmmanuel Vadot #clock-cells = <1>; 694c66ec88fSEmmanuel Vadot }; 695c66ec88fSEmmanuel Vadot 696c66ec88fSEmmanuel Vadot snvs: snvs@30370000 { 697c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-mon","syscon", "simple-mfd"; 698c66ec88fSEmmanuel Vadot reg = <0x30370000 0x10000>; 699c66ec88fSEmmanuel Vadot 700c66ec88fSEmmanuel Vadot snvs_rtc: snvs-rtc-lp { 701c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-mon-rtc-lp"; 702c66ec88fSEmmanuel Vadot regmap = <&snvs>; 703c66ec88fSEmmanuel Vadot offset = <0x34>; 704c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 705c66ec88fSEmmanuel Vadot <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 706c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 707c66ec88fSEmmanuel Vadot clock-names = "snvs-rtc"; 708c66ec88fSEmmanuel Vadot }; 709c66ec88fSEmmanuel Vadot 710c66ec88fSEmmanuel Vadot snvs_pwrkey: snvs-powerkey { 711c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-pwrkey"; 712c66ec88fSEmmanuel Vadot regmap = <&snvs>; 713c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 714c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_SNVS_ROOT>; 715c66ec88fSEmmanuel Vadot clock-names = "snvs-pwrkey"; 716c66ec88fSEmmanuel Vadot linux,keycode = <KEY_POWER>; 717c66ec88fSEmmanuel Vadot wakeup-source; 718c66ec88fSEmmanuel Vadot status = "disabled"; 719c66ec88fSEmmanuel Vadot }; 7207ef62cebSEmmanuel Vadot 7217ef62cebSEmmanuel Vadot snvs_lpgpr: snvs-lpgpr { 7227ef62cebSEmmanuel Vadot compatible = "fsl,imx8mp-snvs-lpgpr", 7237ef62cebSEmmanuel Vadot "fsl,imx7d-snvs-lpgpr"; 7247ef62cebSEmmanuel Vadot }; 725c66ec88fSEmmanuel Vadot }; 726c66ec88fSEmmanuel Vadot 727c66ec88fSEmmanuel Vadot clk: clock-controller@30380000 { 728c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-ccm"; 729c66ec88fSEmmanuel Vadot reg = <0x30380000 0x10000>; 7308d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>, 7318d13bc63SEmmanuel Vadot <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 732c66ec88fSEmmanuel Vadot #clock-cells = <1>; 733c66ec88fSEmmanuel Vadot clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>, <&clk_ext2>, 734c66ec88fSEmmanuel Vadot <&clk_ext3>, <&clk_ext4>; 735c66ec88fSEmmanuel Vadot clock-names = "osc_32k", "osc_24m", "clk_ext1", "clk_ext2", 736c66ec88fSEmmanuel Vadot "clk_ext3", "clk_ext4"; 737c66ec88fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_A53_SRC>, 738c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_A53_CORE>, 739c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_NOC>, 740c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_NOC_IO>, 741f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_GIC>; 742c66ec88fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 743c66ec88fSEmmanuel Vadot <&clk IMX8MP_ARM_PLL_OUT>, 744c66ec88fSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_1000M>, 745c66ec88fSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>, 746f126890aSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_500M>; 747c66ec88fSEmmanuel Vadot assigned-clock-rates = <0>, <0>, 748c66ec88fSEmmanuel Vadot <1000000000>, 749c66ec88fSEmmanuel Vadot <800000000>, 750f126890aSEmmanuel Vadot <500000000>; 751c66ec88fSEmmanuel Vadot }; 752c66ec88fSEmmanuel Vadot 753c66ec88fSEmmanuel Vadot src: reset-controller@30390000 { 754c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-src", "syscon"; 755c66ec88fSEmmanuel Vadot reg = <0x30390000 0x10000>; 756c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 757c66ec88fSEmmanuel Vadot #reset-cells = <1>; 758c66ec88fSEmmanuel Vadot }; 759d5b0e70fSEmmanuel Vadot 760d5b0e70fSEmmanuel Vadot gpc: gpc@303a0000 { 761d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-gpc"; 762d5b0e70fSEmmanuel Vadot reg = <0x303a0000 0x1000>; 763d5b0e70fSEmmanuel Vadot interrupt-parent = <&gic>; 7648bab661aSEmmanuel Vadot interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 765d5b0e70fSEmmanuel Vadot interrupt-controller; 766d5b0e70fSEmmanuel Vadot #interrupt-cells = <3>; 767d5b0e70fSEmmanuel Vadot 768d5b0e70fSEmmanuel Vadot pgc { 769d5b0e70fSEmmanuel Vadot #address-cells = <1>; 770d5b0e70fSEmmanuel Vadot #size-cells = <0>; 771d5b0e70fSEmmanuel Vadot 772d5b0e70fSEmmanuel Vadot pgc_mipi_phy1: power-domain@0 { 773d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 774d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY1>; 775d5b0e70fSEmmanuel Vadot }; 776d5b0e70fSEmmanuel Vadot 777d5b0e70fSEmmanuel Vadot pgc_pcie_phy: power-domain@1 { 778d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 779d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_PCIE_PHY>; 780d5b0e70fSEmmanuel Vadot }; 781d5b0e70fSEmmanuel Vadot 782d5b0e70fSEmmanuel Vadot pgc_usb1_phy: power-domain@2 { 783d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 784d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_USB1_PHY>; 785d5b0e70fSEmmanuel Vadot }; 786d5b0e70fSEmmanuel Vadot 787d5b0e70fSEmmanuel Vadot pgc_usb2_phy: power-domain@3 { 788d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 789d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_USB2_PHY>; 790d5b0e70fSEmmanuel Vadot }; 791d5b0e70fSEmmanuel Vadot 7920e8011faSEmmanuel Vadot pgc_mlmix: power-domain@4 { 7930e8011faSEmmanuel Vadot #power-domain-cells = <0>; 7940e8011faSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_MLMIX>; 7950e8011faSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ML_AXI>, 7960e8011faSEmmanuel Vadot <&clk IMX8MP_CLK_ML_AHB>, 7970e8011faSEmmanuel Vadot <&clk IMX8MP_CLK_NPU_ROOT>; 7980e8011faSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ML_CORE>, 7990e8011faSEmmanuel Vadot <&clk IMX8MP_CLK_ML_AXI>, 8000e8011faSEmmanuel Vadot <&clk IMX8MP_CLK_ML_AHB>; 8010e8011faSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 8020e8011faSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>, 8030e8011faSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>; 8040e8011faSEmmanuel Vadot assigned-clock-rates = <800000000>, 8050e8011faSEmmanuel Vadot <800000000>, 8060e8011faSEmmanuel Vadot <300000000>; 8070e8011faSEmmanuel Vadot }; 8080e8011faSEmmanuel Vadot 809f126890aSEmmanuel Vadot pgc_audio: power-domain@5 { 810f126890aSEmmanuel Vadot #power-domain-cells = <0>; 811f126890aSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_AUDIOMIX>; 812f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 813f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_AUDIO_AXI>; 814aa1a8ff2SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_AUDIO_AHB>, 815aa1a8ff2SEmmanuel Vadot <&clk IMX8MP_CLK_AUDIO_AXI_SRC>; 816aa1a8ff2SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 817aa1a8ff2SEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>; 818aa1a8ff2SEmmanuel Vadot assigned-clock-rates = <400000000>, 819aa1a8ff2SEmmanuel Vadot <600000000>; 820f126890aSEmmanuel Vadot }; 821f126890aSEmmanuel Vadot 822d5b0e70fSEmmanuel Vadot pgc_gpu2d: power-domain@6 { 823d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 824d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_GPU2D>; 825d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>; 826d5b0e70fSEmmanuel Vadot power-domains = <&pgc_gpumix>; 827d5b0e70fSEmmanuel Vadot }; 828d5b0e70fSEmmanuel Vadot 829d5b0e70fSEmmanuel Vadot pgc_gpumix: power-domain@7 { 830d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 831d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_GPUMIX>; 832d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPU_ROOT>, 833d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_AHB>; 834d5b0e70fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_GPU_AXI>, 835d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_AHB>; 836d5b0e70fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 837d5b0e70fSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>; 838d5b0e70fSEmmanuel Vadot assigned-clock-rates = <800000000>, <400000000>; 839d5b0e70fSEmmanuel Vadot }; 840d5b0e70fSEmmanuel Vadot 8410e8011faSEmmanuel Vadot pgc_vpumix: power-domain@8 { 8420e8011faSEmmanuel Vadot #power-domain-cells = <0>; 8430e8011faSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_VPUMIX>; 8440e8011faSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_ROOT>; 8450e8011faSEmmanuel Vadot }; 8460e8011faSEmmanuel Vadot 847d5b0e70fSEmmanuel Vadot pgc_gpu3d: power-domain@9 { 848d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 849d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_GPU3D>; 850d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 851d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 852d5b0e70fSEmmanuel Vadot power-domains = <&pgc_gpumix>; 853d5b0e70fSEmmanuel Vadot }; 854d5b0e70fSEmmanuel Vadot 855d5b0e70fSEmmanuel Vadot pgc_mediamix: power-domain@10 { 856d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 857d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX>; 858d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 859d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 860d5b0e70fSEmmanuel Vadot }; 861d5b0e70fSEmmanuel Vadot 8620e8011faSEmmanuel Vadot pgc_vpu_g1: power-domain@11 { 8630e8011faSEmmanuel Vadot #power-domain-cells = <0>; 8640e8011faSEmmanuel Vadot power-domains = <&pgc_vpumix>; 8650e8011faSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_VPU_G1>; 8660e8011faSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 8670e8011faSEmmanuel Vadot }; 8680e8011faSEmmanuel Vadot 8690e8011faSEmmanuel Vadot pgc_vpu_g2: power-domain@12 { 8700e8011faSEmmanuel Vadot #power-domain-cells = <0>; 8710e8011faSEmmanuel Vadot power-domains = <&pgc_vpumix>; 8720e8011faSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_VPU_G2>; 8730e8011faSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 8740e8011faSEmmanuel Vadot 8750e8011faSEmmanuel Vadot }; 8760e8011faSEmmanuel Vadot 8770e8011faSEmmanuel Vadot pgc_vpu_vc8000e: power-domain@13 { 8780e8011faSEmmanuel Vadot #power-domain-cells = <0>; 8790e8011faSEmmanuel Vadot power-domains = <&pgc_vpumix>; 8800e8011faSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_VPU_VC8000E>; 8810e8011faSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 8820e8011faSEmmanuel Vadot }; 8830e8011faSEmmanuel Vadot 8847d0873ebSEmmanuel Vadot pgc_hdmimix: power-domain@14 { 8857d0873ebSEmmanuel Vadot #power-domain-cells = <0>; 8867d0873ebSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_HDMIMIX>; 8877d0873ebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HDMI_ROOT>, 8887d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_APB>; 8897d0873ebSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_HDMI_AXI>, 8907d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_APB>; 8917d0873ebSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_500M>, 8927d0873ebSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_133M>; 8937d0873ebSEmmanuel Vadot assigned-clock-rates = <500000000>, <133000000>; 8947d0873ebSEmmanuel Vadot }; 8957d0873ebSEmmanuel Vadot 8967d0873ebSEmmanuel Vadot pgc_hdmi_phy: power-domain@15 { 8977d0873ebSEmmanuel Vadot #power-domain-cells = <0>; 8987d0873ebSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_HDMI_PHY>; 8997d0873ebSEmmanuel Vadot }; 9007d0873ebSEmmanuel Vadot 901d5b0e70fSEmmanuel Vadot pgc_mipi_phy2: power-domain@16 { 902d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 903d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_MIPI_PHY2>; 904d5b0e70fSEmmanuel Vadot }; 905d5b0e70fSEmmanuel Vadot 9068bab661aSEmmanuel Vadot pgc_hsiomix: power-domain@17 { 907d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 908d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_HSIOMIX>; 909d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HSIO_AXI>, 910d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_HSIO_ROOT>; 911d5b0e70fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_HSIO_AXI>; 912d5b0e70fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_500M>; 913d5b0e70fSEmmanuel Vadot assigned-clock-rates = <500000000>; 914d5b0e70fSEmmanuel Vadot }; 915d5b0e70fSEmmanuel Vadot 916d5b0e70fSEmmanuel Vadot pgc_ispdwp: power-domain@18 { 917d5b0e70fSEmmanuel Vadot #power-domain-cells = <0>; 918d5b0e70fSEmmanuel Vadot reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX_ISPDWP>; 919d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>; 920d5b0e70fSEmmanuel Vadot }; 921d5b0e70fSEmmanuel Vadot }; 922d5b0e70fSEmmanuel Vadot }; 923c66ec88fSEmmanuel Vadot }; 924c66ec88fSEmmanuel Vadot 925c66ec88fSEmmanuel Vadot aips2: bus@30400000 { 926c66ec88fSEmmanuel Vadot compatible = "fsl,aips-bus", "simple-bus"; 927c66ec88fSEmmanuel Vadot reg = <0x30400000 0x400000>; 928c66ec88fSEmmanuel Vadot #address-cells = <1>; 929c66ec88fSEmmanuel Vadot #size-cells = <1>; 930c66ec88fSEmmanuel Vadot ranges; 931c66ec88fSEmmanuel Vadot 932c66ec88fSEmmanuel Vadot pwm1: pwm@30660000 { 933c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 934c66ec88fSEmmanuel Vadot reg = <0x30660000 0x10000>; 935c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 936c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_PWM1_ROOT>, 937c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_PWM1_ROOT>; 938c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 939d5b0e70fSEmmanuel Vadot #pwm-cells = <3>; 940c66ec88fSEmmanuel Vadot status = "disabled"; 941c66ec88fSEmmanuel Vadot }; 942c66ec88fSEmmanuel Vadot 943c66ec88fSEmmanuel Vadot pwm2: pwm@30670000 { 944c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 945c66ec88fSEmmanuel Vadot reg = <0x30670000 0x10000>; 946c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 947c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_PWM2_ROOT>, 948c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_PWM2_ROOT>; 949c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 950d5b0e70fSEmmanuel Vadot #pwm-cells = <3>; 951c66ec88fSEmmanuel Vadot status = "disabled"; 952c66ec88fSEmmanuel Vadot }; 953c66ec88fSEmmanuel Vadot 954c66ec88fSEmmanuel Vadot pwm3: pwm@30680000 { 955c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 956c66ec88fSEmmanuel Vadot reg = <0x30680000 0x10000>; 957c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 958c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_PWM3_ROOT>, 959c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_PWM3_ROOT>; 960c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 961d5b0e70fSEmmanuel Vadot #pwm-cells = <3>; 962c66ec88fSEmmanuel Vadot status = "disabled"; 963c66ec88fSEmmanuel Vadot }; 964c66ec88fSEmmanuel Vadot 965c66ec88fSEmmanuel Vadot pwm4: pwm@30690000 { 966c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-pwm", "fsl,imx27-pwm"; 967c66ec88fSEmmanuel Vadot reg = <0x30690000 0x10000>; 968c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 969c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_PWM4_ROOT>, 970c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_PWM4_ROOT>; 971c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 972d5b0e70fSEmmanuel Vadot #pwm-cells = <3>; 973c66ec88fSEmmanuel Vadot status = "disabled"; 974c66ec88fSEmmanuel Vadot }; 975c66ec88fSEmmanuel Vadot 976c66ec88fSEmmanuel Vadot system_counter: timer@306a0000 { 977c66ec88fSEmmanuel Vadot compatible = "nxp,sysctr-timer"; 978c66ec88fSEmmanuel Vadot reg = <0x306a0000 0x20000>; 979c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 980c66ec88fSEmmanuel Vadot clocks = <&osc_24m>; 981c66ec88fSEmmanuel Vadot clock-names = "per"; 982c66ec88fSEmmanuel Vadot }; 983fac71e4eSEmmanuel Vadot 984fac71e4eSEmmanuel Vadot gpt6: timer@306e0000 { 985fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 986fac71e4eSEmmanuel Vadot reg = <0x306e0000 0x10000>; 987fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 988fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT6_ROOT>, <&clk IMX8MP_CLK_GPT6>; 989fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 990fac71e4eSEmmanuel Vadot }; 991fac71e4eSEmmanuel Vadot 992fac71e4eSEmmanuel Vadot gpt5: timer@306f0000 { 993fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 994fac71e4eSEmmanuel Vadot reg = <0x306f0000 0x10000>; 995fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 996fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT5_ROOT>, <&clk IMX8MP_CLK_GPT5>; 997fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 998fac71e4eSEmmanuel Vadot }; 999fac71e4eSEmmanuel Vadot 1000fac71e4eSEmmanuel Vadot gpt4: timer@30700000 { 1001fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-gpt", "fsl,imx6dl-gpt"; 1002fac71e4eSEmmanuel Vadot reg = <0x30700000 0x10000>; 1003fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 1004fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPT4_ROOT>, <&clk IMX8MP_CLK_GPT4>; 1005fac71e4eSEmmanuel Vadot clock-names = "ipg", "per"; 1006fac71e4eSEmmanuel Vadot }; 1007c66ec88fSEmmanuel Vadot }; 1008c66ec88fSEmmanuel Vadot 1009c66ec88fSEmmanuel Vadot aips3: bus@30800000 { 1010c66ec88fSEmmanuel Vadot compatible = "fsl,aips-bus", "simple-bus"; 1011c66ec88fSEmmanuel Vadot reg = <0x30800000 0x400000>; 1012c66ec88fSEmmanuel Vadot #address-cells = <1>; 1013c66ec88fSEmmanuel Vadot #size-cells = <1>; 1014c66ec88fSEmmanuel Vadot ranges; 1015c66ec88fSEmmanuel Vadot 1016cb7aa33aSEmmanuel Vadot spba-bus@30800000 { 1017cb7aa33aSEmmanuel Vadot compatible = "fsl,spba-bus", "simple-bus"; 1018cb7aa33aSEmmanuel Vadot reg = <0x30800000 0x100000>; 1019cb7aa33aSEmmanuel Vadot #address-cells = <1>; 1020cb7aa33aSEmmanuel Vadot #size-cells = <1>; 1021cb7aa33aSEmmanuel Vadot ranges; 1022cb7aa33aSEmmanuel Vadot 1023c66ec88fSEmmanuel Vadot ecspi1: spi@30820000 { 1024c66ec88fSEmmanuel Vadot #address-cells = <1>; 1025c66ec88fSEmmanuel Vadot #size-cells = <0>; 10268bab661aSEmmanuel Vadot compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 1027c66ec88fSEmmanuel Vadot reg = <0x30820000 0x10000>; 1028c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 1029c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ECSPI1_ROOT>, 1030c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ECSPI1_ROOT>; 1031c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 10328bab661aSEmmanuel Vadot assigned-clock-rates = <80000000>; 10338bab661aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ECSPI1>; 10348bab661aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 1035c66ec88fSEmmanuel Vadot dmas = <&sdma1 0 7 1>, <&sdma1 1 7 2>; 1036c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1037c66ec88fSEmmanuel Vadot status = "disabled"; 1038c66ec88fSEmmanuel Vadot }; 1039c66ec88fSEmmanuel Vadot 1040c66ec88fSEmmanuel Vadot ecspi2: spi@30830000 { 1041c66ec88fSEmmanuel Vadot #address-cells = <1>; 1042c66ec88fSEmmanuel Vadot #size-cells = <0>; 10438bab661aSEmmanuel Vadot compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 1044c66ec88fSEmmanuel Vadot reg = <0x30830000 0x10000>; 1045c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 1046c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ECSPI2_ROOT>, 1047c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ECSPI2_ROOT>; 1048c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 10498bab661aSEmmanuel Vadot assigned-clock-rates = <80000000>; 10508bab661aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ECSPI2>; 10518bab661aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 1052c66ec88fSEmmanuel Vadot dmas = <&sdma1 2 7 1>, <&sdma1 3 7 2>; 1053c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1054c66ec88fSEmmanuel Vadot status = "disabled"; 1055c66ec88fSEmmanuel Vadot }; 1056c66ec88fSEmmanuel Vadot 1057c66ec88fSEmmanuel Vadot ecspi3: spi@30840000 { 1058c66ec88fSEmmanuel Vadot #address-cells = <1>; 1059c66ec88fSEmmanuel Vadot #size-cells = <0>; 10608bab661aSEmmanuel Vadot compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi"; 1061c66ec88fSEmmanuel Vadot reg = <0x30840000 0x10000>; 1062c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 1063c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ECSPI3_ROOT>, 1064c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ECSPI3_ROOT>; 1065c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 10668bab661aSEmmanuel Vadot assigned-clock-rates = <80000000>; 10678bab661aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ECSPI3>; 10688bab661aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 1069c66ec88fSEmmanuel Vadot dmas = <&sdma1 4 7 1>, <&sdma1 5 7 2>; 1070c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1071c66ec88fSEmmanuel Vadot status = "disabled"; 1072c66ec88fSEmmanuel Vadot }; 1073c66ec88fSEmmanuel Vadot 1074c66ec88fSEmmanuel Vadot uart1: serial@30860000 { 1075c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 1076c66ec88fSEmmanuel Vadot reg = <0x30860000 0x10000>; 1077c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 1078c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_UART1_ROOT>, 1079c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_UART1_ROOT>; 1080c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 1081c66ec88fSEmmanuel Vadot dmas = <&sdma1 22 4 0>, <&sdma1 23 4 0>; 1082c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1083c66ec88fSEmmanuel Vadot status = "disabled"; 1084c66ec88fSEmmanuel Vadot }; 1085c66ec88fSEmmanuel Vadot 1086c66ec88fSEmmanuel Vadot uart3: serial@30880000 { 1087c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 1088c66ec88fSEmmanuel Vadot reg = <0x30880000 0x10000>; 1089c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 1090c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_UART3_ROOT>, 1091c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_UART3_ROOT>; 1092c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 1093c66ec88fSEmmanuel Vadot dmas = <&sdma1 26 4 0>, <&sdma1 27 4 0>; 1094c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1095c66ec88fSEmmanuel Vadot status = "disabled"; 1096c66ec88fSEmmanuel Vadot }; 1097c66ec88fSEmmanuel Vadot 1098c66ec88fSEmmanuel Vadot uart2: serial@30890000 { 1099c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 1100c66ec88fSEmmanuel Vadot reg = <0x30890000 0x10000>; 1101c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 1102c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_UART2_ROOT>, 1103c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_UART2_ROOT>; 1104c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 1105d5b0e70fSEmmanuel Vadot dmas = <&sdma1 24 4 0>, <&sdma1 25 4 0>; 1106d5b0e70fSEmmanuel Vadot dma-names = "rx", "tx"; 1107c66ec88fSEmmanuel Vadot status = "disabled"; 1108c66ec88fSEmmanuel Vadot }; 1109c66ec88fSEmmanuel Vadot 11105def4c47SEmmanuel Vadot flexcan1: can@308c0000 { 11115956d97fSEmmanuel Vadot compatible = "fsl,imx8mp-flexcan"; 11125def4c47SEmmanuel Vadot reg = <0x308c0000 0x10000>; 11135def4c47SEmmanuel Vadot interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 11145def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 11155def4c47SEmmanuel Vadot <&clk IMX8MP_CLK_CAN1_ROOT>; 11165def4c47SEmmanuel Vadot clock-names = "ipg", "per"; 11175def4c47SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_CAN1>; 11185def4c47SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 11195def4c47SEmmanuel Vadot assigned-clock-rates = <40000000>; 11205def4c47SEmmanuel Vadot fsl,clk-source = /bits/ 8 <0>; 11215def4c47SEmmanuel Vadot fsl,stop-mode = <&gpr 0x10 4>; 11225def4c47SEmmanuel Vadot status = "disabled"; 11235def4c47SEmmanuel Vadot }; 11245def4c47SEmmanuel Vadot 11255def4c47SEmmanuel Vadot flexcan2: can@308d0000 { 11265956d97fSEmmanuel Vadot compatible = "fsl,imx8mp-flexcan"; 11275def4c47SEmmanuel Vadot reg = <0x308d0000 0x10000>; 11285def4c47SEmmanuel Vadot interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 11295def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 11305def4c47SEmmanuel Vadot <&clk IMX8MP_CLK_CAN2_ROOT>; 11315def4c47SEmmanuel Vadot clock-names = "ipg", "per"; 11325def4c47SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_CAN2>; 11335def4c47SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_40M>; 11345def4c47SEmmanuel Vadot assigned-clock-rates = <40000000>; 11355def4c47SEmmanuel Vadot fsl,clk-source = /bits/ 8 <0>; 11365def4c47SEmmanuel Vadot fsl,stop-mode = <&gpr 0x10 5>; 11375def4c47SEmmanuel Vadot status = "disabled"; 11385def4c47SEmmanuel Vadot }; 1139cb7aa33aSEmmanuel Vadot }; 11405def4c47SEmmanuel Vadot 1141c66ec88fSEmmanuel Vadot crypto: crypto@30900000 { 1142c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0"; 1143c66ec88fSEmmanuel Vadot #address-cells = <1>; 1144c66ec88fSEmmanuel Vadot #size-cells = <1>; 1145c66ec88fSEmmanuel Vadot reg = <0x30900000 0x40000>; 1146c66ec88fSEmmanuel Vadot ranges = <0 0x30900000 0x40000>; 1147c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 1148c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_AHB>, 1149c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_IPG_ROOT>; 1150c66ec88fSEmmanuel Vadot clock-names = "aclk", "ipg"; 1151c66ec88fSEmmanuel Vadot 1152c66ec88fSEmmanuel Vadot sec_jr0: jr@1000 { 1153c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-job-ring"; 1154c66ec88fSEmmanuel Vadot reg = <0x1000 0x1000>; 1155c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 1156b97ee269SEmmanuel Vadot status = "disabled"; 1157c66ec88fSEmmanuel Vadot }; 1158c66ec88fSEmmanuel Vadot 1159c66ec88fSEmmanuel Vadot sec_jr1: jr@2000 { 1160c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-job-ring"; 1161c66ec88fSEmmanuel Vadot reg = <0x2000 0x1000>; 1162c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 1163c66ec88fSEmmanuel Vadot }; 1164c66ec88fSEmmanuel Vadot 1165c66ec88fSEmmanuel Vadot sec_jr2: jr@3000 { 1166c66ec88fSEmmanuel Vadot compatible = "fsl,sec-v4.0-job-ring"; 1167c66ec88fSEmmanuel Vadot reg = <0x3000 0x1000>; 1168c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 1169c66ec88fSEmmanuel Vadot }; 1170c66ec88fSEmmanuel Vadot }; 1171c66ec88fSEmmanuel Vadot 1172c66ec88fSEmmanuel Vadot i2c1: i2c@30a20000 { 1173c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1174c66ec88fSEmmanuel Vadot #address-cells = <1>; 1175c66ec88fSEmmanuel Vadot #size-cells = <0>; 1176c66ec88fSEmmanuel Vadot reg = <0x30a20000 0x10000>; 1177c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 1178c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C1_ROOT>; 1179c66ec88fSEmmanuel Vadot status = "disabled"; 1180c66ec88fSEmmanuel Vadot }; 1181c66ec88fSEmmanuel Vadot 1182c66ec88fSEmmanuel Vadot i2c2: i2c@30a30000 { 1183c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1184c66ec88fSEmmanuel Vadot #address-cells = <1>; 1185c66ec88fSEmmanuel Vadot #size-cells = <0>; 1186c66ec88fSEmmanuel Vadot reg = <0x30a30000 0x10000>; 1187c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 1188c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C2_ROOT>; 1189c66ec88fSEmmanuel Vadot status = "disabled"; 1190c66ec88fSEmmanuel Vadot }; 1191c66ec88fSEmmanuel Vadot 1192c66ec88fSEmmanuel Vadot i2c3: i2c@30a40000 { 1193c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1194c66ec88fSEmmanuel Vadot #address-cells = <1>; 1195c66ec88fSEmmanuel Vadot #size-cells = <0>; 1196c66ec88fSEmmanuel Vadot reg = <0x30a40000 0x10000>; 1197c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 1198c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C3_ROOT>; 1199c66ec88fSEmmanuel Vadot status = "disabled"; 1200c66ec88fSEmmanuel Vadot }; 1201c66ec88fSEmmanuel Vadot 1202c66ec88fSEmmanuel Vadot i2c4: i2c@30a50000 { 1203c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1204c66ec88fSEmmanuel Vadot #address-cells = <1>; 1205c66ec88fSEmmanuel Vadot #size-cells = <0>; 1206c66ec88fSEmmanuel Vadot reg = <0x30a50000 0x10000>; 1207c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 1208c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C4_ROOT>; 1209c66ec88fSEmmanuel Vadot status = "disabled"; 1210c66ec88fSEmmanuel Vadot }; 1211c66ec88fSEmmanuel Vadot 1212c66ec88fSEmmanuel Vadot uart4: serial@30a60000 { 1213c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-uart", "fsl,imx6q-uart"; 1214c66ec88fSEmmanuel Vadot reg = <0x30a60000 0x10000>; 1215c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 1216c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_UART4_ROOT>, 1217c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_UART4_ROOT>; 1218c66ec88fSEmmanuel Vadot clock-names = "ipg", "per"; 1219c66ec88fSEmmanuel Vadot dmas = <&sdma1 28 4 0>, <&sdma1 29 4 0>; 1220c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 1221c66ec88fSEmmanuel Vadot status = "disabled"; 1222c66ec88fSEmmanuel Vadot }; 1223c66ec88fSEmmanuel Vadot 1224c66ec88fSEmmanuel Vadot mu: mailbox@30aa0000 { 1225c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1226c66ec88fSEmmanuel Vadot reg = <0x30aa0000 0x10000>; 1227c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 1228c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MU_ROOT>; 1229c66ec88fSEmmanuel Vadot #mbox-cells = <2>; 1230c66ec88fSEmmanuel Vadot }; 1231c66ec88fSEmmanuel Vadot 1232354d7675SEmmanuel Vadot mu2: mailbox@30e60000 { 1233354d7675SEmmanuel Vadot compatible = "fsl,imx8mp-mu", "fsl,imx6sx-mu"; 1234354d7675SEmmanuel Vadot reg = <0x30e60000 0x10000>; 1235354d7675SEmmanuel Vadot interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 1236354d7675SEmmanuel Vadot #mbox-cells = <2>; 1237354d7675SEmmanuel Vadot status = "disabled"; 1238354d7675SEmmanuel Vadot }; 1239354d7675SEmmanuel Vadot 1240c66ec88fSEmmanuel Vadot i2c5: i2c@30ad0000 { 1241c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1242c66ec88fSEmmanuel Vadot #address-cells = <1>; 1243c66ec88fSEmmanuel Vadot #size-cells = <0>; 1244c66ec88fSEmmanuel Vadot reg = <0x30ad0000 0x10000>; 1245c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 1246c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C5_ROOT>; 1247c66ec88fSEmmanuel Vadot status = "disabled"; 1248c66ec88fSEmmanuel Vadot }; 1249c66ec88fSEmmanuel Vadot 1250c66ec88fSEmmanuel Vadot i2c6: i2c@30ae0000 { 1251c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-i2c", "fsl,imx21-i2c"; 1252c66ec88fSEmmanuel Vadot #address-cells = <1>; 1253c66ec88fSEmmanuel Vadot #size-cells = <0>; 1254c66ec88fSEmmanuel Vadot reg = <0x30ae0000 0x10000>; 1255c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 1256c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_I2C6_ROOT>; 1257c66ec88fSEmmanuel Vadot status = "disabled"; 1258c66ec88fSEmmanuel Vadot }; 1259c66ec88fSEmmanuel Vadot 1260c66ec88fSEmmanuel Vadot usdhc1: mmc@30b40000 { 1261d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 1262c66ec88fSEmmanuel Vadot reg = <0x30b40000 0x10000>; 1263c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 1264*b2d2a78aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 1265c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 1266c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_USDHC1_ROOT>; 1267c66ec88fSEmmanuel Vadot clock-names = "ipg", "ahb", "per"; 1268c66ec88fSEmmanuel Vadot fsl,tuning-start-tap = <20>; 1269c66ec88fSEmmanuel Vadot fsl,tuning-step = <2>; 1270c66ec88fSEmmanuel Vadot bus-width = <4>; 1271c66ec88fSEmmanuel Vadot status = "disabled"; 1272c66ec88fSEmmanuel Vadot }; 1273c66ec88fSEmmanuel Vadot 1274c66ec88fSEmmanuel Vadot usdhc2: mmc@30b50000 { 1275d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 1276c66ec88fSEmmanuel Vadot reg = <0x30b50000 0x10000>; 1277c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 1278*b2d2a78aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 1279c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 1280c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_USDHC2_ROOT>; 1281c66ec88fSEmmanuel Vadot clock-names = "ipg", "ahb", "per"; 1282c66ec88fSEmmanuel Vadot fsl,tuning-start-tap = <20>; 1283c66ec88fSEmmanuel Vadot fsl,tuning-step = <2>; 1284c66ec88fSEmmanuel Vadot bus-width = <4>; 1285c66ec88fSEmmanuel Vadot status = "disabled"; 1286c66ec88fSEmmanuel Vadot }; 1287c66ec88fSEmmanuel Vadot 1288c66ec88fSEmmanuel Vadot usdhc3: mmc@30b60000 { 1289d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 1290c66ec88fSEmmanuel Vadot reg = <0x30b60000 0x10000>; 1291c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 1292*b2d2a78aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_IPG_ROOT>, 1293c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_NAND_USDHC_BUS>, 1294c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_USDHC3_ROOT>; 1295c66ec88fSEmmanuel Vadot clock-names = "ipg", "ahb", "per"; 1296c66ec88fSEmmanuel Vadot fsl,tuning-start-tap = <20>; 1297c66ec88fSEmmanuel Vadot fsl,tuning-step = <2>; 1298c66ec88fSEmmanuel Vadot bus-width = <4>; 1299c66ec88fSEmmanuel Vadot status = "disabled"; 1300c66ec88fSEmmanuel Vadot }; 1301c66ec88fSEmmanuel Vadot 13025956d97fSEmmanuel Vadot flexspi: spi@30bb0000 { 13035956d97fSEmmanuel Vadot compatible = "nxp,imx8mp-fspi"; 13045956d97fSEmmanuel Vadot reg = <0x30bb0000 0x10000>, <0x8000000 0x10000000>; 13055956d97fSEmmanuel Vadot reg-names = "fspi_base", "fspi_mmap"; 13065956d97fSEmmanuel Vadot interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 13075956d97fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_QSPI_ROOT>, 13085956d97fSEmmanuel Vadot <&clk IMX8MP_CLK_QSPI_ROOT>; 13098cc087a1SEmmanuel Vadot clock-names = "fspi_en", "fspi"; 13105956d97fSEmmanuel Vadot assigned-clock-rates = <80000000>; 13115956d97fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_QSPI>; 13125956d97fSEmmanuel Vadot #address-cells = <1>; 13135956d97fSEmmanuel Vadot #size-cells = <0>; 13145956d97fSEmmanuel Vadot status = "disabled"; 13155956d97fSEmmanuel Vadot }; 13165956d97fSEmmanuel Vadot 1317c66ec88fSEmmanuel Vadot sdma1: dma-controller@30bd0000 { 1318c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1319c66ec88fSEmmanuel Vadot reg = <0x30bd0000 0x10000>; 1320c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 1321c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_SDMA1_ROOT>, 1322c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_AHB>; 1323c66ec88fSEmmanuel Vadot clock-names = "ipg", "ahb"; 1324c66ec88fSEmmanuel Vadot #dma-cells = <3>; 1325c66ec88fSEmmanuel Vadot fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1326c66ec88fSEmmanuel Vadot }; 1327c66ec88fSEmmanuel Vadot 1328c66ec88fSEmmanuel Vadot fec: ethernet@30be0000 { 1329c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-fec", "fsl,imx8mq-fec", "fsl,imx6sx-fec"; 1330c66ec88fSEmmanuel Vadot reg = <0x30be0000 0x10000>; 1331c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 1332c66ec88fSEmmanuel Vadot <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 13336be33864SEmmanuel Vadot <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 13346be33864SEmmanuel Vadot <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 1335c66ec88fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ENET1_ROOT>, 1336c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_SIM_ENET_ROOT>, 1337c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_TIMER>, 1338c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_REF>, 1339c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_PHY_REF>; 1340c66ec88fSEmmanuel Vadot clock-names = "ipg", "ahb", "ptp", 1341c66ec88fSEmmanuel Vadot "enet_clk_ref", "enet_out"; 1342c66ec88fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 1343c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_TIMER>, 1344c66ec88fSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_REF>, 13455def4c47SEmmanuel Vadot <&clk IMX8MP_CLK_ENET_PHY_REF>; 1346c66ec88fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 1347c66ec88fSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_100M>, 13485def4c47SEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_125M>, 13495def4c47SEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_50M>; 13505def4c47SEmmanuel Vadot assigned-clock-rates = <0>, <100000000>, <125000000>, <0>; 1351c66ec88fSEmmanuel Vadot fsl,num-tx-queues = <3>; 1352c66ec88fSEmmanuel Vadot fsl,num-rx-queues = <3>; 13535def4c47SEmmanuel Vadot nvmem-cells = <ð_mac1>; 13545def4c47SEmmanuel Vadot nvmem-cell-names = "mac-address"; 13555def4c47SEmmanuel Vadot fsl,stop-mode = <&gpr 0x10 3>; 1356c66ec88fSEmmanuel Vadot status = "disabled"; 1357c66ec88fSEmmanuel Vadot }; 13582eb4d8dcSEmmanuel Vadot 13592eb4d8dcSEmmanuel Vadot eqos: ethernet@30bf0000 { 13602eb4d8dcSEmmanuel Vadot compatible = "nxp,imx8mp-dwmac-eqos", "snps,dwmac-5.10a"; 13612eb4d8dcSEmmanuel Vadot reg = <0x30bf0000 0x10000>; 13625956d97fSEmmanuel Vadot interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 13635956d97fSEmmanuel Vadot <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 13645956d97fSEmmanuel Vadot interrupt-names = "macirq", "eth_wake_irq"; 13652eb4d8dcSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_ENET_QOS_ROOT>, 13662eb4d8dcSEmmanuel Vadot <&clk IMX8MP_CLK_QOS_ENET_ROOT>, 13672eb4d8dcSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 13682eb4d8dcSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_QOS>; 13692eb4d8dcSEmmanuel Vadot clock-names = "stmmaceth", "pclk", "ptp_ref", "tx"; 13702eb4d8dcSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_ENET_AXI>, 13712eb4d8dcSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_QOS_TIMER>, 13722eb4d8dcSEmmanuel Vadot <&clk IMX8MP_CLK_ENET_QOS>; 13732eb4d8dcSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>, 13742eb4d8dcSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_100M>, 13752eb4d8dcSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_125M>; 13762eb4d8dcSEmmanuel Vadot assigned-clock-rates = <0>, <100000000>, <125000000>; 1377e67e8565SEmmanuel Vadot nvmem-cells = <ð_mac2>; 1378e67e8565SEmmanuel Vadot nvmem-cell-names = "mac-address"; 13792eb4d8dcSEmmanuel Vadot intf_mode = <&gpr 0x4>; 13802eb4d8dcSEmmanuel Vadot status = "disabled"; 13812eb4d8dcSEmmanuel Vadot }; 1382c66ec88fSEmmanuel Vadot }; 1383c66ec88fSEmmanuel Vadot 1384f126890aSEmmanuel Vadot aips5: bus@30c00000 { 1385f126890aSEmmanuel Vadot compatible = "fsl,aips-bus", "simple-bus"; 1386f126890aSEmmanuel Vadot reg = <0x30c00000 0x400000>; 1387f126890aSEmmanuel Vadot #address-cells = <1>; 1388f126890aSEmmanuel Vadot #size-cells = <1>; 1389f126890aSEmmanuel Vadot ranges; 1390f126890aSEmmanuel Vadot 1391f126890aSEmmanuel Vadot spba-bus@30c00000 { 1392f126890aSEmmanuel Vadot compatible = "fsl,spba-bus", "simple-bus"; 1393f126890aSEmmanuel Vadot reg = <0x30c00000 0x100000>; 1394f126890aSEmmanuel Vadot #address-cells = <1>; 1395f126890aSEmmanuel Vadot #size-cells = <1>; 1396f126890aSEmmanuel Vadot ranges; 1397f126890aSEmmanuel Vadot 1398f126890aSEmmanuel Vadot sai1: sai@30c10000 { 1399f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1400f126890aSEmmanuel Vadot reg = <0x30c10000 0x10000>; 1401f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1402f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_IPG>, 1403f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1404f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>, 1405f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK2>, 1406f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK3>; 1407f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1408f126890aSEmmanuel Vadot dmas = <&sdma2 0 2 0>, <&sdma2 1 2 0>; 1409f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1410f126890aSEmmanuel Vadot interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 1411f126890aSEmmanuel Vadot status = "disabled"; 1412f126890aSEmmanuel Vadot }; 1413f126890aSEmmanuel Vadot 1414f126890aSEmmanuel Vadot sai2: sai@30c20000 { 1415f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1416f126890aSEmmanuel Vadot reg = <0x30c20000 0x10000>; 1417f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1418f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_IPG>, 1419f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1420f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK1>, 1421f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK2>, 1422f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI2_MCLK3>; 1423f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1424f126890aSEmmanuel Vadot dmas = <&sdma2 2 2 0>, <&sdma2 3 2 0>; 1425f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1426f126890aSEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 1427f126890aSEmmanuel Vadot status = "disabled"; 1428f126890aSEmmanuel Vadot }; 1429f126890aSEmmanuel Vadot 1430f126890aSEmmanuel Vadot sai3: sai@30c30000 { 1431f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1432f126890aSEmmanuel Vadot reg = <0x30c30000 0x10000>; 1433f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1434f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_IPG>, 1435f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1436f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>, 1437f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK2>, 1438f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK3>; 1439f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1440f126890aSEmmanuel Vadot dmas = <&sdma2 4 2 0>, <&sdma2 5 2 0>; 1441f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1442f126890aSEmmanuel Vadot interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 1443f126890aSEmmanuel Vadot status = "disabled"; 1444f126890aSEmmanuel Vadot }; 1445f126890aSEmmanuel Vadot 1446f126890aSEmmanuel Vadot sai5: sai@30c50000 { 1447f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1448f126890aSEmmanuel Vadot reg = <0x30c50000 0x10000>; 1449f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1450f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_IPG>, 1451f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1452f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK1>, 1453f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK2>, 1454f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI5_MCLK3>; 1455f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1456f126890aSEmmanuel Vadot dmas = <&sdma2 8 2 0>, <&sdma2 9 2 0>; 1457f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1458f126890aSEmmanuel Vadot interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1459f126890aSEmmanuel Vadot status = "disabled"; 1460f126890aSEmmanuel Vadot }; 1461f126890aSEmmanuel Vadot 1462f126890aSEmmanuel Vadot sai6: sai@30c60000 { 1463f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1464f126890aSEmmanuel Vadot reg = <0x30c60000 0x10000>; 1465f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1466f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_IPG>, 1467f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1468f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK1>, 1469f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK2>, 1470f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI6_MCLK3>; 1471f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1472f126890aSEmmanuel Vadot dmas = <&sdma2 10 2 0>, <&sdma2 11 2 0>; 1473f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1474f126890aSEmmanuel Vadot interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1475f126890aSEmmanuel Vadot status = "disabled"; 1476f126890aSEmmanuel Vadot }; 1477f126890aSEmmanuel Vadot 1478f126890aSEmmanuel Vadot sai7: sai@30c80000 { 1479f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sai", "fsl,imx8mq-sai"; 1480f126890aSEmmanuel Vadot reg = <0x30c80000 0x10000>; 1481f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 1482f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_IPG>, 1483f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_DUMMY>, 1484f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK1>, 1485f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK2>, 1486f126890aSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI7_MCLK3>; 1487f126890aSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 1488f126890aSEmmanuel Vadot dmas = <&sdma2 12 2 0>, <&sdma2 13 2 0>; 1489f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1490f126890aSEmmanuel Vadot interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 1491f126890aSEmmanuel Vadot status = "disabled"; 1492f126890aSEmmanuel Vadot }; 149384943d6fSEmmanuel Vadot 149484943d6fSEmmanuel Vadot easrc: easrc@30c90000 { 149584943d6fSEmmanuel Vadot compatible = "fsl,imx8mp-easrc", "fsl,imx8mn-easrc"; 149684943d6fSEmmanuel Vadot reg = <0x30c90000 0x10000>; 149784943d6fSEmmanuel Vadot interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 149884943d6fSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_ASRC_IPG>; 149984943d6fSEmmanuel Vadot clock-names = "mem"; 150084943d6fSEmmanuel Vadot dmas = <&sdma2 16 23 0> , <&sdma2 17 23 0>, 150184943d6fSEmmanuel Vadot <&sdma2 18 23 0> , <&sdma2 19 23 0>, 150284943d6fSEmmanuel Vadot <&sdma2 20 23 0> , <&sdma2 21 23 0>, 150384943d6fSEmmanuel Vadot <&sdma2 22 23 0> , <&sdma2 23 23 0>; 150484943d6fSEmmanuel Vadot dma-names = "ctx0_rx", "ctx0_tx", 150584943d6fSEmmanuel Vadot "ctx1_rx", "ctx1_tx", 150684943d6fSEmmanuel Vadot "ctx2_rx", "ctx2_tx", 150784943d6fSEmmanuel Vadot "ctx3_rx", "ctx3_tx"; 150884943d6fSEmmanuel Vadot firmware-name = "imx/easrc/easrc-imx8mn.bin"; 150984943d6fSEmmanuel Vadot fsl,asrc-rate = <8000>; 151084943d6fSEmmanuel Vadot fsl,asrc-format = <2>; 151184943d6fSEmmanuel Vadot status = "disabled"; 151284943d6fSEmmanuel Vadot }; 151384943d6fSEmmanuel Vadot 151484943d6fSEmmanuel Vadot micfil: audio-controller@30ca0000 { 151584943d6fSEmmanuel Vadot compatible = "fsl,imx8mp-micfil"; 151684943d6fSEmmanuel Vadot reg = <0x30ca0000 0x10000>; 151784943d6fSEmmanuel Vadot #sound-dai-cells = <0>; 151884943d6fSEmmanuel Vadot interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 151984943d6fSEmmanuel Vadot <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 152084943d6fSEmmanuel Vadot <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 152184943d6fSEmmanuel Vadot <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 152284943d6fSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_IPG>, 152384943d6fSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_PDM_SEL>, 152484943d6fSEmmanuel Vadot <&clk IMX8MP_AUDIO_PLL1_OUT>, 152584943d6fSEmmanuel Vadot <&clk IMX8MP_AUDIO_PLL2_OUT>, 152684943d6fSEmmanuel Vadot <&clk IMX8MP_CLK_EXT3>; 152784943d6fSEmmanuel Vadot clock-names = "ipg_clk", "ipg_clk_app", 152884943d6fSEmmanuel Vadot "pll8k", "pll11k", "clkext3"; 152984943d6fSEmmanuel Vadot dmas = <&sdma2 24 25 0x80000000>; 153084943d6fSEmmanuel Vadot dma-names = "rx"; 153184943d6fSEmmanuel Vadot status = "disabled"; 153284943d6fSEmmanuel Vadot }; 153384943d6fSEmmanuel Vadot 15347d0873ebSEmmanuel Vadot aud2htx: aud2htx@30cb0000 { 15357d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-aud2htx"; 15367d0873ebSEmmanuel Vadot reg = <0x30cb0000 0x10000>; 15377d0873ebSEmmanuel Vadot interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>; 15387d0873ebSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_AUD2HTX_IPG>; 15397d0873ebSEmmanuel Vadot clock-names = "bus"; 15407d0873ebSEmmanuel Vadot dmas = <&sdma2 26 2 0>; 15417d0873ebSEmmanuel Vadot dma-names = "tx"; 15427d0873ebSEmmanuel Vadot status = "disabled"; 15437d0873ebSEmmanuel Vadot }; 15440e8011faSEmmanuel Vadot 15450e8011faSEmmanuel Vadot xcvr: xcvr@30cc0000 { 15460e8011faSEmmanuel Vadot compatible = "fsl,imx8mp-xcvr"; 15470e8011faSEmmanuel Vadot reg = <0x30cc0000 0x800>, 15480e8011faSEmmanuel Vadot <0x30cc0800 0x400>, 15490e8011faSEmmanuel Vadot <0x30cc0c00 0x080>, 15500e8011faSEmmanuel Vadot <0x30cc0e00 0x080>; 15510e8011faSEmmanuel Vadot reg-names = "ram", "regs", "rxfifo", 15520e8011faSEmmanuel Vadot "txfifo"; 15530e8011faSEmmanuel Vadot interrupts = /* XCVR IRQ 0 */ 15540e8011faSEmmanuel Vadot <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 15550e8011faSEmmanuel Vadot /* XCVR IRQ 1 */ 15560e8011faSEmmanuel Vadot <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 15570e8011faSEmmanuel Vadot /* XCVR PHY - SPDIF wakeup IRQ */ 15580e8011faSEmmanuel Vadot <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>; 15590e8011faSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_EARC_IPG>, 15600e8011faSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_EARC_PHY>, 15610e8011faSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SPBA2_ROOT>, 15620e8011faSEmmanuel Vadot <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_AUDPLL_ROOT>; 15630e8011faSEmmanuel Vadot clock-names = "ipg", "phy", "spba", "pll_ipg"; 15640e8011faSEmmanuel Vadot dmas = <&sdma2 30 2 0>, <&sdma2 31 2 0>; 15650e8011faSEmmanuel Vadot dma-names = "rx", "tx"; 15660e8011faSEmmanuel Vadot resets = <&audio_blk_ctrl 0>; 15670e8011faSEmmanuel Vadot status = "disabled"; 15680e8011faSEmmanuel Vadot }; 1569f126890aSEmmanuel Vadot }; 1570f126890aSEmmanuel Vadot 1571f126890aSEmmanuel Vadot sdma3: dma-controller@30e00000 { 1572f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1573f126890aSEmmanuel Vadot reg = <0x30e00000 0x10000>; 1574f126890aSEmmanuel Vadot #dma-cells = <3>; 1575f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA3_ROOT>, 1576f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_AUDIO_ROOT>; 1577f126890aSEmmanuel Vadot clock-names = "ipg", "ahb"; 1578f126890aSEmmanuel Vadot interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 1579f126890aSEmmanuel Vadot fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1580f126890aSEmmanuel Vadot }; 1581f126890aSEmmanuel Vadot 1582f126890aSEmmanuel Vadot sdma2: dma-controller@30e10000 { 1583f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-sdma", "fsl,imx8mq-sdma"; 1584f126890aSEmmanuel Vadot reg = <0x30e10000 0x10000>; 1585f126890aSEmmanuel Vadot #dma-cells = <3>; 1586f126890aSEmmanuel Vadot clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SDMA2_ROOT>, 1587f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_AUDIO_ROOT>; 1588f126890aSEmmanuel Vadot clock-names = "ipg", "ahb"; 1589f126890aSEmmanuel Vadot interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 1590f126890aSEmmanuel Vadot fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 1591f126890aSEmmanuel Vadot }; 1592f126890aSEmmanuel Vadot 1593f126890aSEmmanuel Vadot audio_blk_ctrl: clock-controller@30e20000 { 1594f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-audio-blk-ctrl"; 1595f126890aSEmmanuel Vadot reg = <0x30e20000 0x10000>; 1596f126890aSEmmanuel Vadot #clock-cells = <1>; 15970e8011faSEmmanuel Vadot #reset-cells = <1>; 1598f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, 1599f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI1>, 1600f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI2>, 1601f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI3>, 1602f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI5>, 1603f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI6>, 1604f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_SAI7>; 1605f126890aSEmmanuel Vadot clock-names = "ahb", 1606f126890aSEmmanuel Vadot "sai1", "sai2", "sai3", 1607f126890aSEmmanuel Vadot "sai5", "sai6", "sai7"; 1608f126890aSEmmanuel Vadot power-domains = <&pgc_audio>; 16090e8011faSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_AUDIO_PLL1>, 16100e8011faSEmmanuel Vadot <&clk IMX8MP_AUDIO_PLL2>; 16110e8011faSEmmanuel Vadot assigned-clock-rates = <393216000>, <361267200>; 1612f126890aSEmmanuel Vadot }; 1613f126890aSEmmanuel Vadot }; 1614f126890aSEmmanuel Vadot 1615b97ee269SEmmanuel Vadot noc: interconnect@32700000 { 1616b97ee269SEmmanuel Vadot compatible = "fsl,imx8mp-noc", "fsl,imx8m-noc"; 1617b97ee269SEmmanuel Vadot reg = <0x32700000 0x100000>; 1618b97ee269SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_NOC>; 1619b97ee269SEmmanuel Vadot #interconnect-cells = <1>; 1620b97ee269SEmmanuel Vadot operating-points-v2 = <&noc_opp_table>; 1621b97ee269SEmmanuel Vadot 1622b97ee269SEmmanuel Vadot noc_opp_table: opp-table { 1623b97ee269SEmmanuel Vadot compatible = "operating-points-v2"; 1624b97ee269SEmmanuel Vadot 16258bab661aSEmmanuel Vadot opp-200000000 { 1626b97ee269SEmmanuel Vadot opp-hz = /bits/ 64 <200000000>; 1627b97ee269SEmmanuel Vadot }; 1628b97ee269SEmmanuel Vadot 16298bab661aSEmmanuel Vadot opp-1000000000 { 1630b97ee269SEmmanuel Vadot opp-hz = /bits/ 64 <1000000000>; 1631b97ee269SEmmanuel Vadot }; 1632b97ee269SEmmanuel Vadot }; 1633b97ee269SEmmanuel Vadot }; 1634b97ee269SEmmanuel Vadot 1635d5b0e70fSEmmanuel Vadot aips4: bus@32c00000 { 1636d5b0e70fSEmmanuel Vadot compatible = "fsl,aips-bus", "simple-bus"; 1637d5b0e70fSEmmanuel Vadot reg = <0x32c00000 0x400000>; 1638d5b0e70fSEmmanuel Vadot #address-cells = <1>; 1639d5b0e70fSEmmanuel Vadot #size-cells = <1>; 1640d5b0e70fSEmmanuel Vadot ranges; 1641d5b0e70fSEmmanuel Vadot 1642f126890aSEmmanuel Vadot isi_0: isi@32e00000 { 1643f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-isi"; 1644f126890aSEmmanuel Vadot reg = <0x32e00000 0x4000>; 1645f126890aSEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 1646f126890aSEmmanuel Vadot <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 1647f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1648f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1649f126890aSEmmanuel Vadot clock-names = "axi", "apb"; 1650f126890aSEmmanuel Vadot fsl,blk-ctrl = <&media_blk_ctrl>; 1651f126890aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISI>; 1652f126890aSEmmanuel Vadot status = "disabled"; 1653f126890aSEmmanuel Vadot 1654f126890aSEmmanuel Vadot ports { 1655f126890aSEmmanuel Vadot #address-cells = <1>; 1656f126890aSEmmanuel Vadot #size-cells = <0>; 1657f126890aSEmmanuel Vadot 1658f126890aSEmmanuel Vadot port@0 { 1659f126890aSEmmanuel Vadot reg = <0>; 1660f126890aSEmmanuel Vadot 1661f126890aSEmmanuel Vadot isi_in_0: endpoint { 1662f126890aSEmmanuel Vadot remote-endpoint = <&mipi_csi_0_out>; 1663f126890aSEmmanuel Vadot }; 1664f126890aSEmmanuel Vadot }; 1665f126890aSEmmanuel Vadot 1666f126890aSEmmanuel Vadot port@1 { 1667f126890aSEmmanuel Vadot reg = <1>; 1668f126890aSEmmanuel Vadot 1669f126890aSEmmanuel Vadot isi_in_1: endpoint { 1670f126890aSEmmanuel Vadot remote-endpoint = <&mipi_csi_1_out>; 1671f126890aSEmmanuel Vadot }; 1672f126890aSEmmanuel Vadot }; 1673f126890aSEmmanuel Vadot }; 1674f126890aSEmmanuel Vadot }; 1675f126890aSEmmanuel Vadot 1676*b2d2a78aSEmmanuel Vadot isp_0: isp@32e10000 { 1677*b2d2a78aSEmmanuel Vadot compatible = "fsl,imx8mp-isp"; 1678*b2d2a78aSEmmanuel Vadot reg = <0x32e10000 0x10000>; 1679*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 1680*b2d2a78aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 1681*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1682*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1683*b2d2a78aSEmmanuel Vadot clock-names = "isp", "aclk", "hclk"; 1684*b2d2a78aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 1685*b2d2a78aSEmmanuel Vadot fsl,blk-ctrl = <&media_blk_ctrl 0>; 1686*b2d2a78aSEmmanuel Vadot status = "disabled"; 1687*b2d2a78aSEmmanuel Vadot 1688*b2d2a78aSEmmanuel Vadot ports { 1689*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1690*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1691*b2d2a78aSEmmanuel Vadot 1692*b2d2a78aSEmmanuel Vadot port@1 { 1693*b2d2a78aSEmmanuel Vadot reg = <1>; 1694*b2d2a78aSEmmanuel Vadot }; 1695*b2d2a78aSEmmanuel Vadot }; 1696*b2d2a78aSEmmanuel Vadot }; 1697*b2d2a78aSEmmanuel Vadot 1698*b2d2a78aSEmmanuel Vadot isp_1: isp@32e20000 { 1699*b2d2a78aSEmmanuel Vadot compatible = "fsl,imx8mp-isp"; 1700*b2d2a78aSEmmanuel Vadot reg = <0x32e20000 0x10000>; 1701*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 1702*b2d2a78aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 1703*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1704*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1705*b2d2a78aSEmmanuel Vadot clock-names = "isp", "aclk", "hclk"; 1706*b2d2a78aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 1707*b2d2a78aSEmmanuel Vadot fsl,blk-ctrl = <&media_blk_ctrl 1>; 1708*b2d2a78aSEmmanuel Vadot status = "disabled"; 1709*b2d2a78aSEmmanuel Vadot 1710*b2d2a78aSEmmanuel Vadot ports { 1711*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1712*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1713*b2d2a78aSEmmanuel Vadot 1714*b2d2a78aSEmmanuel Vadot port@1 { 1715*b2d2a78aSEmmanuel Vadot reg = <1>; 1716*b2d2a78aSEmmanuel Vadot }; 1717*b2d2a78aSEmmanuel Vadot }; 1718*b2d2a78aSEmmanuel Vadot }; 1719*b2d2a78aSEmmanuel Vadot 1720f126890aSEmmanuel Vadot dewarp: dwe@32e30000 { 1721f126890aSEmmanuel Vadot compatible = "nxp,imx8mp-dw100"; 1722f126890aSEmmanuel Vadot reg = <0x32e30000 0x10000>; 1723f126890aSEmmanuel Vadot interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 1724f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1725f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1726f126890aSEmmanuel Vadot clock-names = "axi", "ahb"; 1727f126890aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_DWE>; 1728f126890aSEmmanuel Vadot }; 1729f126890aSEmmanuel Vadot 1730f126890aSEmmanuel Vadot mipi_csi_0: csi@32e40000 { 1731f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 1732f126890aSEmmanuel Vadot reg = <0x32e40000 0x10000>; 1733f126890aSEmmanuel Vadot interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 1734*b2d2a78aSEmmanuel Vadot clock-frequency = <250000000>; 1735f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1736f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 1737f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 1738f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1739f126890aSEmmanuel Vadot clock-names = "pclk", "wrap", "phy", "axi"; 174001950c46SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM1_PIX>, 174101950c46SEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1742*b2d2a78aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_250M>, 174301950c46SEmmanuel Vadot <&clk IMX8MP_CLK_24M>; 1744f126890aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_1>; 1745f126890aSEmmanuel Vadot status = "disabled"; 1746f126890aSEmmanuel Vadot 1747f126890aSEmmanuel Vadot ports { 1748f126890aSEmmanuel Vadot #address-cells = <1>; 1749f126890aSEmmanuel Vadot #size-cells = <0>; 1750f126890aSEmmanuel Vadot 1751f126890aSEmmanuel Vadot port@0 { 1752f126890aSEmmanuel Vadot reg = <0>; 1753f126890aSEmmanuel Vadot }; 1754f126890aSEmmanuel Vadot 1755f126890aSEmmanuel Vadot port@1 { 1756f126890aSEmmanuel Vadot reg = <1>; 1757f126890aSEmmanuel Vadot 1758f126890aSEmmanuel Vadot mipi_csi_0_out: endpoint { 1759f126890aSEmmanuel Vadot remote-endpoint = <&isi_in_0>; 1760f126890aSEmmanuel Vadot }; 1761f126890aSEmmanuel Vadot }; 1762f126890aSEmmanuel Vadot }; 1763f126890aSEmmanuel Vadot }; 1764f126890aSEmmanuel Vadot 1765f126890aSEmmanuel Vadot mipi_csi_1: csi@32e50000 { 1766f126890aSEmmanuel Vadot compatible = "fsl,imx8mp-mipi-csi2", "fsl,imx8mm-mipi-csi2"; 1767f126890aSEmmanuel Vadot reg = <0x32e50000 0x10000>; 1768f126890aSEmmanuel Vadot interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 1769*b2d2a78aSEmmanuel Vadot clock-frequency = <250000000>; 1770f126890aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1771f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 1772f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>, 1773f126890aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1774f126890aSEmmanuel Vadot clock-names = "pclk", "wrap", "phy", "axi"; 177501950c46SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_MEDIA_CAM2_PIX>, 177601950c46SEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1777*b2d2a78aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_250M>, 177801950c46SEmmanuel Vadot <&clk IMX8MP_CLK_24M>; 1779f126890aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_2>; 1780f126890aSEmmanuel Vadot status = "disabled"; 1781f126890aSEmmanuel Vadot 1782f126890aSEmmanuel Vadot ports { 1783f126890aSEmmanuel Vadot #address-cells = <1>; 1784f126890aSEmmanuel Vadot #size-cells = <0>; 1785f126890aSEmmanuel Vadot 1786f126890aSEmmanuel Vadot port@0 { 1787f126890aSEmmanuel Vadot reg = <0>; 1788f126890aSEmmanuel Vadot }; 1789f126890aSEmmanuel Vadot 1790f126890aSEmmanuel Vadot port@1 { 1791f126890aSEmmanuel Vadot reg = <1>; 1792f126890aSEmmanuel Vadot 1793f126890aSEmmanuel Vadot mipi_csi_1_out: endpoint { 1794f126890aSEmmanuel Vadot remote-endpoint = <&isi_in_1>; 1795f126890aSEmmanuel Vadot }; 1796f126890aSEmmanuel Vadot }; 1797f126890aSEmmanuel Vadot }; 1798f126890aSEmmanuel Vadot }; 1799f126890aSEmmanuel Vadot 1800fac71e4eSEmmanuel Vadot mipi_dsi: dsi@32e60000 { 1801fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-mipi-dsim"; 1802fac71e4eSEmmanuel Vadot reg = <0x32e60000 0x400>; 1803fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1804fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1805fac71e4eSEmmanuel Vadot clock-names = "bus_clk", "sclk_mipi"; 1806fac71e4eSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_MEDIA_APB>, 1807fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>; 1808fac71e4eSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 1809fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_24M>; 1810fac71e4eSEmmanuel Vadot assigned-clock-rates = <200000000>, <24000000>; 1811fac71e4eSEmmanuel Vadot samsung,pll-clock-frequency = <24000000>; 1812fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 1813fac71e4eSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_DSI_1>; 1814fac71e4eSEmmanuel Vadot status = "disabled"; 1815fac71e4eSEmmanuel Vadot 1816fac71e4eSEmmanuel Vadot ports { 1817fac71e4eSEmmanuel Vadot #address-cells = <1>; 1818fac71e4eSEmmanuel Vadot #size-cells = <0>; 1819fac71e4eSEmmanuel Vadot 1820fac71e4eSEmmanuel Vadot port@0 { 1821fac71e4eSEmmanuel Vadot reg = <0>; 1822fac71e4eSEmmanuel Vadot 1823fac71e4eSEmmanuel Vadot dsim_from_lcdif1: endpoint { 1824fac71e4eSEmmanuel Vadot remote-endpoint = <&lcdif1_to_dsim>; 1825fac71e4eSEmmanuel Vadot }; 1826fac71e4eSEmmanuel Vadot }; 18277d0873ebSEmmanuel Vadot 18287d0873ebSEmmanuel Vadot port@1 { 18297d0873ebSEmmanuel Vadot reg = <1>; 18307d0873ebSEmmanuel Vadot 18317d0873ebSEmmanuel Vadot mipi_dsi_out: endpoint { 18327d0873ebSEmmanuel Vadot }; 18337d0873ebSEmmanuel Vadot }; 1834fac71e4eSEmmanuel Vadot }; 1835fac71e4eSEmmanuel Vadot }; 1836fac71e4eSEmmanuel Vadot 1837fac71e4eSEmmanuel Vadot lcdif1: display-controller@32e80000 { 1838fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-lcdif"; 1839fac71e4eSEmmanuel Vadot reg = <0x32e80000 0x10000>; 1840fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 1841fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1842fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1843fac71e4eSEmmanuel Vadot clock-names = "pix", "axi", "disp_axi"; 1844fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 1845fac71e4eSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_1>; 1846fac71e4eSEmmanuel Vadot status = "disabled"; 1847fac71e4eSEmmanuel Vadot 1848fac71e4eSEmmanuel Vadot port { 1849fac71e4eSEmmanuel Vadot lcdif1_to_dsim: endpoint { 1850fac71e4eSEmmanuel Vadot remote-endpoint = <&dsim_from_lcdif1>; 1851fac71e4eSEmmanuel Vadot }; 1852fac71e4eSEmmanuel Vadot }; 1853fac71e4eSEmmanuel Vadot }; 1854fac71e4eSEmmanuel Vadot 1855cb7aa33aSEmmanuel Vadot lcdif2: display-controller@32e90000 { 1856cb7aa33aSEmmanuel Vadot compatible = "fsl,imx8mp-lcdif"; 1857cb7aa33aSEmmanuel Vadot reg = <0x32e90000 0x10000>; 1858cb7aa33aSEmmanuel Vadot interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 1859cb7aa33aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 1860cb7aa33aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1861cb7aa33aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>; 1862cb7aa33aSEmmanuel Vadot clock-names = "pix", "axi", "disp_axi"; 1863cb7aa33aSEmmanuel Vadot power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_LCDIF_2>; 1864cb7aa33aSEmmanuel Vadot status = "disabled"; 1865cb7aa33aSEmmanuel Vadot 1866cb7aa33aSEmmanuel Vadot port { 1867cb7aa33aSEmmanuel Vadot lcdif2_to_ldb: endpoint { 1868cb7aa33aSEmmanuel Vadot remote-endpoint = <&ldb_from_lcdif2>; 1869cb7aa33aSEmmanuel Vadot }; 1870cb7aa33aSEmmanuel Vadot }; 1871cb7aa33aSEmmanuel Vadot }; 1872cb7aa33aSEmmanuel Vadot 1873d5b0e70fSEmmanuel Vadot media_blk_ctrl: blk-ctrl@32ec0000 { 1874d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-media-blk-ctrl", 1875fac71e4eSEmmanuel Vadot "syscon"; 1876d5b0e70fSEmmanuel Vadot reg = <0x32ec0000 0x10000>; 1877cb7aa33aSEmmanuel Vadot #address-cells = <1>; 1878cb7aa33aSEmmanuel Vadot #size-cells = <1>; 1879d5b0e70fSEmmanuel Vadot power-domains = <&pgc_mediamix>, 1880d5b0e70fSEmmanuel Vadot <&pgc_mipi_phy1>, 1881d5b0e70fSEmmanuel Vadot <&pgc_mipi_phy1>, 1882d5b0e70fSEmmanuel Vadot <&pgc_mediamix>, 1883d5b0e70fSEmmanuel Vadot <&pgc_mediamix>, 1884d5b0e70fSEmmanuel Vadot <&pgc_mipi_phy2>, 1885d5b0e70fSEmmanuel Vadot <&pgc_mediamix>, 1886d5b0e70fSEmmanuel Vadot <&pgc_ispdwp>, 1887d5b0e70fSEmmanuel Vadot <&pgc_ispdwp>, 1888d5b0e70fSEmmanuel Vadot <&pgc_mipi_phy2>; 1889d5b0e70fSEmmanuel Vadot power-domain-names = "bus", "mipi-dsi1", "mipi-csi1", 1890d5b0e70fSEmmanuel Vadot "lcdif1", "isi", "mipi-csi2", 1891d5b0e70fSEmmanuel Vadot "lcdif2", "isp", "dwe", 1892d5b0e70fSEmmanuel Vadot "mipi-dsi2"; 18937ef62cebSEmmanuel Vadot interconnects = 18947ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_LCDIF_RD &noc IMX8MP_ICN_MEDIA>, 18957ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_LCDIF_WR &noc IMX8MP_ICN_MEDIA>, 18967ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_ISI0 &noc IMX8MP_ICN_MEDIA>, 18977ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_ISI1 &noc IMX8MP_ICN_MEDIA>, 18987ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_ISI2 &noc IMX8MP_ICN_MEDIA>, 18997ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_ISP0 &noc IMX8MP_ICN_MEDIA>, 19007ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_ISP1 &noc IMX8MP_ICN_MEDIA>, 19017ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_DWE &noc IMX8MP_ICN_MEDIA>; 19027ef62cebSEmmanuel Vadot interconnect-names = "lcdif-rd", "lcdif-wr", "isi0", 19037ef62cebSEmmanuel Vadot "isi1", "isi2", "isp0", "isp1", 19047ef62cebSEmmanuel Vadot "dwe"; 1905d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1906d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1907d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 1908d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 1909d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 1910d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 1911d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 1912d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>; 1913d5b0e70fSEmmanuel Vadot clock-names = "apb", "axi", "cam1", "cam2", 1914d5b0e70fSEmmanuel Vadot "disp1", "disp2", "isp", "phy"; 1915d5b0e70fSEmmanuel Vadot 1916*b2d2a78aSEmmanuel Vadot /* 1917*b2d2a78aSEmmanuel Vadot * The ISP maximum frequency is 400MHz in normal mode 1918*b2d2a78aSEmmanuel Vadot * and 500MHz in overdrive mode. The 400MHz operating 1919*b2d2a78aSEmmanuel Vadot * point hasn't been successfully tested yet, so set 1920*b2d2a78aSEmmanuel Vadot * IMX8MP_CLK_MEDIA_ISP to 500MHz for the time being. 1921*b2d2a78aSEmmanuel Vadot */ 1922d5b0e70fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_MEDIA_AXI>, 1923fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_APB>, 1924fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP1_PIX>, 1925fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP2_PIX>, 1926*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_ISP>, 1927fac71e4eSEmmanuel Vadot <&clk IMX8MP_VIDEO_PLL1>; 1928d5b0e70fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>, 1929fac71e4eSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>, 1930fac71e4eSEmmanuel Vadot <&clk IMX8MP_VIDEO_PLL1_OUT>, 1931*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_VIDEO_PLL1_OUT>, 1932*b2d2a78aSEmmanuel Vadot <&clk IMX8MP_SYS_PLL2_500M>; 1933fac71e4eSEmmanuel Vadot assigned-clock-rates = <500000000>, <200000000>, 1934*b2d2a78aSEmmanuel Vadot <0>, <0>, <500000000>, 1935*b2d2a78aSEmmanuel Vadot <1039500000>; 1936d5b0e70fSEmmanuel Vadot #power-domain-cells = <1>; 1937cb7aa33aSEmmanuel Vadot 1938cb7aa33aSEmmanuel Vadot lvds_bridge: bridge@5c { 1939cb7aa33aSEmmanuel Vadot compatible = "fsl,imx8mp-ldb"; 1940cb7aa33aSEmmanuel Vadot reg = <0x5c 0x4>, <0x128 0x4>; 1941cb7aa33aSEmmanuel Vadot reg-names = "ldb", "lvds"; 19428d13bc63SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_LDB_ROOT>; 1943fac71e4eSEmmanuel Vadot clock-names = "ldb"; 1944cb7aa33aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>; 1945cb7aa33aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_VIDEO_PLL1_OUT>; 1946cb7aa33aSEmmanuel Vadot status = "disabled"; 1947cb7aa33aSEmmanuel Vadot 1948cb7aa33aSEmmanuel Vadot ports { 1949cb7aa33aSEmmanuel Vadot #address-cells = <1>; 1950cb7aa33aSEmmanuel Vadot #size-cells = <0>; 1951cb7aa33aSEmmanuel Vadot 1952cb7aa33aSEmmanuel Vadot port@0 { 1953cb7aa33aSEmmanuel Vadot reg = <0>; 1954cb7aa33aSEmmanuel Vadot 1955cb7aa33aSEmmanuel Vadot ldb_from_lcdif2: endpoint { 1956cb7aa33aSEmmanuel Vadot remote-endpoint = <&lcdif2_to_ldb>; 1957cb7aa33aSEmmanuel Vadot }; 1958cb7aa33aSEmmanuel Vadot }; 1959cb7aa33aSEmmanuel Vadot 1960cb7aa33aSEmmanuel Vadot port@1 { 1961cb7aa33aSEmmanuel Vadot reg = <1>; 1962cb7aa33aSEmmanuel Vadot 1963cb7aa33aSEmmanuel Vadot ldb_lvds_ch0: endpoint { 1964cb7aa33aSEmmanuel Vadot }; 1965cb7aa33aSEmmanuel Vadot }; 1966cb7aa33aSEmmanuel Vadot 1967cb7aa33aSEmmanuel Vadot port@2 { 1968cb7aa33aSEmmanuel Vadot reg = <2>; 1969cb7aa33aSEmmanuel Vadot 1970cb7aa33aSEmmanuel Vadot ldb_lvds_ch1: endpoint { 1971cb7aa33aSEmmanuel Vadot }; 1972cb7aa33aSEmmanuel Vadot }; 1973cb7aa33aSEmmanuel Vadot }; 1974cb7aa33aSEmmanuel Vadot }; 1975d5b0e70fSEmmanuel Vadot }; 1976d5b0e70fSEmmanuel Vadot 19777ef62cebSEmmanuel Vadot pcie_phy: pcie-phy@32f00000 { 19787ef62cebSEmmanuel Vadot compatible = "fsl,imx8mp-pcie-phy"; 19797ef62cebSEmmanuel Vadot reg = <0x32f00000 0x10000>; 19807ef62cebSEmmanuel Vadot resets = <&src IMX8MP_RESET_PCIEPHY>, 19817ef62cebSEmmanuel Vadot <&src IMX8MP_RESET_PCIEPHY_PERST>; 19827ef62cebSEmmanuel Vadot reset-names = "pciephy", "perst"; 19837ef62cebSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE_PHY>; 19847ef62cebSEmmanuel Vadot #phy-cells = <0>; 19857ef62cebSEmmanuel Vadot status = "disabled"; 19867ef62cebSEmmanuel Vadot }; 19877ef62cebSEmmanuel Vadot 1988d5b0e70fSEmmanuel Vadot hsio_blk_ctrl: blk-ctrl@32f10000 { 1989d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-hsio-blk-ctrl", "syscon"; 1990d5b0e70fSEmmanuel Vadot reg = <0x32f10000 0x24>; 1991d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_USB_ROOT>, 1992d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_PCIE_ROOT>; 1993d5b0e70fSEmmanuel Vadot clock-names = "usb", "pcie"; 1994d5b0e70fSEmmanuel Vadot power-domains = <&pgc_hsiomix>, <&pgc_hsiomix>, 1995d5b0e70fSEmmanuel Vadot <&pgc_usb1_phy>, <&pgc_usb2_phy>, 1996d5b0e70fSEmmanuel Vadot <&pgc_hsiomix>, <&pgc_pcie_phy>; 1997d5b0e70fSEmmanuel Vadot power-domain-names = "bus", "usb", "usb-phy1", 1998d5b0e70fSEmmanuel Vadot "usb-phy2", "pcie", "pcie-phy"; 19997ef62cebSEmmanuel Vadot interconnects = <&noc IMX8MP_ICM_NOC_PCIE &noc IMX8MP_ICN_HSIO>, 20007ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_USB1 &noc IMX8MP_ICN_HSIO>, 20017ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_USB2 &noc IMX8MP_ICN_HSIO>, 20027ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_PCIE &noc IMX8MP_ICN_HSIO>; 20037ef62cebSEmmanuel Vadot interconnect-names = "noc-pcie", "usb1", "usb2", "pcie"; 2004d5b0e70fSEmmanuel Vadot #power-domain-cells = <1>; 2005cb7aa33aSEmmanuel Vadot #clock-cells = <0>; 2006d5b0e70fSEmmanuel Vadot }; 20077d0873ebSEmmanuel Vadot 20087d0873ebSEmmanuel Vadot hdmi_blk_ctrl: blk-ctrl@32fc0000 { 20097d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-hdmi-blk-ctrl", "syscon"; 20107d0873ebSEmmanuel Vadot reg = <0x32fc0000 0x1000>; 20117d0873ebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HDMI_APB>, 20127d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_ROOT>, 20137d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_REF_266M>, 20147d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_24M>, 20157d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_FDCC_TST>; 20167d0873ebSEmmanuel Vadot clock-names = "apb", "axi", "ref_266m", "ref_24m", "fdcc"; 20177d0873ebSEmmanuel Vadot power-domains = <&pgc_hdmimix>, <&pgc_hdmimix>, 20187d0873ebSEmmanuel Vadot <&pgc_hdmimix>, <&pgc_hdmimix>, 20197d0873ebSEmmanuel Vadot <&pgc_hdmimix>, <&pgc_hdmimix>, 20207d0873ebSEmmanuel Vadot <&pgc_hdmimix>, <&pgc_hdmi_phy>, 20217d0873ebSEmmanuel Vadot <&pgc_hdmimix>, <&pgc_hdmimix>; 20227d0873ebSEmmanuel Vadot power-domain-names = "bus", "irqsteer", "lcdif", 20237d0873ebSEmmanuel Vadot "pai", "pvi", "trng", 20247d0873ebSEmmanuel Vadot "hdmi-tx", "hdmi-tx-phy", 20257d0873ebSEmmanuel Vadot "hdcp", "hrv"; 20267d0873ebSEmmanuel Vadot #power-domain-cells = <1>; 20277d0873ebSEmmanuel Vadot }; 20287d0873ebSEmmanuel Vadot 20297d0873ebSEmmanuel Vadot irqsteer_hdmi: interrupt-controller@32fc2000 { 20300e8011faSEmmanuel Vadot compatible = "fsl,imx8mp-irqsteer", "fsl,imx-irqsteer"; 20317d0873ebSEmmanuel Vadot reg = <0x32fc2000 0x1000>; 20327d0873ebSEmmanuel Vadot interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 20337d0873ebSEmmanuel Vadot interrupt-controller; 20347d0873ebSEmmanuel Vadot #interrupt-cells = <1>; 20357d0873ebSEmmanuel Vadot fsl,channel = <1>; 20367d0873ebSEmmanuel Vadot fsl,num-irqs = <64>; 20377d0873ebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HDMI_APB>; 20387d0873ebSEmmanuel Vadot clock-names = "ipg"; 20397d0873ebSEmmanuel Vadot power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_IRQSTEER>; 20407d0873ebSEmmanuel Vadot }; 20417d0873ebSEmmanuel Vadot 20427d0873ebSEmmanuel Vadot hdmi_pvi: display-bridge@32fc4000 { 20437d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-hdmi-pvi"; 20447d0873ebSEmmanuel Vadot reg = <0x32fc4000 0x1000>; 20457d0873ebSEmmanuel Vadot interrupt-parent = <&irqsteer_hdmi>; 20467d0873ebSEmmanuel Vadot interrupts = <12>; 20477d0873ebSEmmanuel Vadot power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_PVI>; 20487d0873ebSEmmanuel Vadot status = "disabled"; 20497d0873ebSEmmanuel Vadot 20507d0873ebSEmmanuel Vadot ports { 20517d0873ebSEmmanuel Vadot #address-cells = <1>; 20527d0873ebSEmmanuel Vadot #size-cells = <0>; 20537d0873ebSEmmanuel Vadot 20547d0873ebSEmmanuel Vadot port@0 { 20557d0873ebSEmmanuel Vadot reg = <0>; 20567d0873ebSEmmanuel Vadot pvi_from_lcdif3: endpoint { 20577d0873ebSEmmanuel Vadot remote-endpoint = <&lcdif3_to_pvi>; 20587d0873ebSEmmanuel Vadot }; 20597d0873ebSEmmanuel Vadot }; 20607d0873ebSEmmanuel Vadot 20617d0873ebSEmmanuel Vadot port@1 { 20627d0873ebSEmmanuel Vadot reg = <1>; 20637d0873ebSEmmanuel Vadot pvi_to_hdmi_tx: endpoint { 20647d0873ebSEmmanuel Vadot remote-endpoint = <&hdmi_tx_from_pvi>; 20657d0873ebSEmmanuel Vadot }; 20667d0873ebSEmmanuel Vadot }; 20677d0873ebSEmmanuel Vadot }; 20687d0873ebSEmmanuel Vadot }; 20697d0873ebSEmmanuel Vadot 20707d0873ebSEmmanuel Vadot lcdif3: display-controller@32fc6000 { 20717d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-lcdif"; 20727d0873ebSEmmanuel Vadot reg = <0x32fc6000 0x1000>; 20737d0873ebSEmmanuel Vadot interrupt-parent = <&irqsteer_hdmi>; 20747d0873ebSEmmanuel Vadot interrupts = <8>; 20757d0873ebSEmmanuel Vadot clocks = <&hdmi_tx_phy>, 20767d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_APB>, 20777d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_ROOT>; 20787d0873ebSEmmanuel Vadot clock-names = "pix", "axi", "disp_axi"; 20797d0873ebSEmmanuel Vadot power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_LCDIF>; 20807d0873ebSEmmanuel Vadot status = "disabled"; 20817d0873ebSEmmanuel Vadot 20827d0873ebSEmmanuel Vadot port { 20837d0873ebSEmmanuel Vadot lcdif3_to_pvi: endpoint { 20847d0873ebSEmmanuel Vadot remote-endpoint = <&pvi_from_lcdif3>; 20857d0873ebSEmmanuel Vadot }; 20867d0873ebSEmmanuel Vadot }; 20877d0873ebSEmmanuel Vadot }; 20887d0873ebSEmmanuel Vadot 20897d0873ebSEmmanuel Vadot hdmi_tx: hdmi@32fd8000 { 20907d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-hdmi-tx"; 20917d0873ebSEmmanuel Vadot reg = <0x32fd8000 0x7eff>; 20927d0873ebSEmmanuel Vadot interrupt-parent = <&irqsteer_hdmi>; 20937d0873ebSEmmanuel Vadot interrupts = <0>; 20947d0873ebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HDMI_APB>, 20957d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_REF_266M>, 20967d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_32K>, 20977d0873ebSEmmanuel Vadot <&hdmi_tx_phy>; 20987d0873ebSEmmanuel Vadot clock-names = "iahb", "isfr", "cec", "pix"; 20997d0873ebSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_HDMI_REF_266M>; 21007d0873ebSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_266M>; 21017d0873ebSEmmanuel Vadot power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_HDMI_TX>; 21027d0873ebSEmmanuel Vadot reg-io-width = <1>; 21037d0873ebSEmmanuel Vadot status = "disabled"; 21047d0873ebSEmmanuel Vadot 21057d0873ebSEmmanuel Vadot ports { 21067d0873ebSEmmanuel Vadot #address-cells = <1>; 21077d0873ebSEmmanuel Vadot #size-cells = <0>; 21087d0873ebSEmmanuel Vadot 21097d0873ebSEmmanuel Vadot port@0 { 21107d0873ebSEmmanuel Vadot reg = <0>; 21117d0873ebSEmmanuel Vadot 21127d0873ebSEmmanuel Vadot hdmi_tx_from_pvi: endpoint { 21137d0873ebSEmmanuel Vadot remote-endpoint = <&pvi_to_hdmi_tx>; 21147d0873ebSEmmanuel Vadot }; 21157d0873ebSEmmanuel Vadot }; 21167d0873ebSEmmanuel Vadot 21177d0873ebSEmmanuel Vadot port@1 { 21187d0873ebSEmmanuel Vadot reg = <1>; 21197d0873ebSEmmanuel Vadot /* Point endpoint to the HDMI connector */ 21207d0873ebSEmmanuel Vadot }; 21217d0873ebSEmmanuel Vadot }; 21227d0873ebSEmmanuel Vadot }; 21237d0873ebSEmmanuel Vadot 21247d0873ebSEmmanuel Vadot hdmi_tx_phy: phy@32fdff00 { 21257d0873ebSEmmanuel Vadot compatible = "fsl,imx8mp-hdmi-phy"; 21267d0873ebSEmmanuel Vadot reg = <0x32fdff00 0x100>; 21277d0873ebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HDMI_APB>, 21287d0873ebSEmmanuel Vadot <&clk IMX8MP_CLK_HDMI_24M>; 21297d0873ebSEmmanuel Vadot clock-names = "apb", "ref"; 21307d0873ebSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_HDMI_24M>; 21317d0873ebSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 21327d0873ebSEmmanuel Vadot power-domains = <&hdmi_blk_ctrl IMX8MP_HDMIBLK_PD_HDMI_TX_PHY>; 21337d0873ebSEmmanuel Vadot #clock-cells = <0>; 21347d0873ebSEmmanuel Vadot #phy-cells = <0>; 21357d0873ebSEmmanuel Vadot status = "disabled"; 21367d0873ebSEmmanuel Vadot }; 2137d5b0e70fSEmmanuel Vadot }; 2138d5b0e70fSEmmanuel Vadot 21397ef62cebSEmmanuel Vadot pcie: pcie@33800000 { 21407ef62cebSEmmanuel Vadot compatible = "fsl,imx8mp-pcie"; 21417ef62cebSEmmanuel Vadot reg = <0x33800000 0x400000>, <0x1ff00000 0x80000>; 21427ef62cebSEmmanuel Vadot reg-names = "dbi", "config"; 2143cb7aa33aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 2144cb7aa33aSEmmanuel Vadot <&clk IMX8MP_CLK_HSIO_AXI>, 2145cb7aa33aSEmmanuel Vadot <&clk IMX8MP_CLK_PCIE_ROOT>; 2146cb7aa33aSEmmanuel Vadot clock-names = "pcie", "pcie_bus", "pcie_aux"; 2147cb7aa33aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 2148cb7aa33aSEmmanuel Vadot assigned-clock-rates = <10000000>; 2149cb7aa33aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 21507ef62cebSEmmanuel Vadot #address-cells = <3>; 21517ef62cebSEmmanuel Vadot #size-cells = <2>; 21527ef62cebSEmmanuel Vadot device_type = "pci"; 21537ef62cebSEmmanuel Vadot bus-range = <0x00 0xff>; 21547ef62cebSEmmanuel Vadot ranges = <0x81000000 0 0x00000000 0x1ff80000 0 0x00010000>, /* downstream I/O 64KB */ 21557ef62cebSEmmanuel Vadot <0x82000000 0 0x18000000 0x18000000 0 0x07f00000>; /* non-prefetchable memory */ 21567ef62cebSEmmanuel Vadot num-lanes = <1>; 21577ef62cebSEmmanuel Vadot num-viewport = <4>; 21587ef62cebSEmmanuel Vadot interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 21597ef62cebSEmmanuel Vadot interrupt-names = "msi"; 21607ef62cebSEmmanuel Vadot #interrupt-cells = <1>; 21617ef62cebSEmmanuel Vadot interrupt-map-mask = <0 0 0 0x7>; 21627ef62cebSEmmanuel Vadot interrupt-map = <0 0 0 1 &gic GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 21637ef62cebSEmmanuel Vadot <0 0 0 2 &gic GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 21647ef62cebSEmmanuel Vadot <0 0 0 3 &gic GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, 21657ef62cebSEmmanuel Vadot <0 0 0 4 &gic GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 21667ef62cebSEmmanuel Vadot fsl,max-link-speed = <3>; 21677ef62cebSEmmanuel Vadot linux,pci-domain = <0>; 21687ef62cebSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 21697ef62cebSEmmanuel Vadot resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 21707ef62cebSEmmanuel Vadot <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 21717ef62cebSEmmanuel Vadot reset-names = "apps", "turnoff"; 21727ef62cebSEmmanuel Vadot phys = <&pcie_phy>; 21737ef62cebSEmmanuel Vadot phy-names = "pcie-phy"; 21747ef62cebSEmmanuel Vadot status = "disabled"; 21757ef62cebSEmmanuel Vadot }; 21767ef62cebSEmmanuel Vadot 2177fac71e4eSEmmanuel Vadot pcie_ep: pcie-ep@33800000 { 2178fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-pcie-ep"; 2179fac71e4eSEmmanuel Vadot reg = <0x33800000 0x000400000>, <0x18000000 0x08000000>; 2180fac71e4eSEmmanuel Vadot reg-names = "dbi", "addr_space"; 2181fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 2182fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_HSIO_AXI>, 2183fac71e4eSEmmanuel Vadot <&clk IMX8MP_CLK_PCIE_ROOT>; 2184fac71e4eSEmmanuel Vadot clock-names = "pcie", "pcie_bus", "pcie_aux"; 2185fac71e4eSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>; 2186fac71e4eSEmmanuel Vadot assigned-clock-rates = <10000000>; 2187fac71e4eSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>; 2188fac71e4eSEmmanuel Vadot num-lanes = <1>; 2189fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; /* eDMA */ 2190fac71e4eSEmmanuel Vadot interrupt-names = "dma"; 2191fac71e4eSEmmanuel Vadot fsl,max-link-speed = <3>; 2192fac71e4eSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_PCIE>; 2193fac71e4eSEmmanuel Vadot resets = <&src IMX8MP_RESET_PCIE_CTRL_APPS_EN>, 2194fac71e4eSEmmanuel Vadot <&src IMX8MP_RESET_PCIE_CTRL_APPS_TURNOFF>; 2195fac71e4eSEmmanuel Vadot reset-names = "apps", "turnoff"; 2196fac71e4eSEmmanuel Vadot phys = <&pcie_phy>; 2197fac71e4eSEmmanuel Vadot phy-names = "pcie-phy"; 2198fac71e4eSEmmanuel Vadot num-ib-windows = <4>; 2199fac71e4eSEmmanuel Vadot num-ob-windows = <4>; 2200fac71e4eSEmmanuel Vadot status = "disabled"; 2201fac71e4eSEmmanuel Vadot }; 2202fac71e4eSEmmanuel Vadot 2203d5b0e70fSEmmanuel Vadot gpu3d: gpu@38000000 { 2204d5b0e70fSEmmanuel Vadot compatible = "vivante,gc"; 2205d5b0e70fSEmmanuel Vadot reg = <0x38000000 0x8000>; 2206d5b0e70fSEmmanuel Vadot interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 2207d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPU3D_ROOT>, 2208d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>, 2209d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_ROOT>, 2210d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_AHB>; 2211d5b0e70fSEmmanuel Vadot clock-names = "core", "shader", "bus", "reg"; 2212d5b0e70fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_GPU3D_CORE>, 2213d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU3D_SHADER_CORE>; 2214d5b0e70fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, 2215d5b0e70fSEmmanuel Vadot <&clk IMX8MP_SYS_PLL1_800M>; 2216d5b0e70fSEmmanuel Vadot assigned-clock-rates = <800000000>, <800000000>; 2217d5b0e70fSEmmanuel Vadot power-domains = <&pgc_gpu3d>; 2218d5b0e70fSEmmanuel Vadot }; 2219d5b0e70fSEmmanuel Vadot 2220d5b0e70fSEmmanuel Vadot gpu2d: gpu@38008000 { 2221d5b0e70fSEmmanuel Vadot compatible = "vivante,gc"; 2222d5b0e70fSEmmanuel Vadot reg = <0x38008000 0x8000>; 2223d5b0e70fSEmmanuel Vadot interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 2224d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_GPU2D_ROOT>, 2225d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_ROOT>, 2226d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_GPU_AHB>; 2227d5b0e70fSEmmanuel Vadot clock-names = "core", "bus", "reg"; 2228d5b0e70fSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_GPU2D_CORE>; 2229d5b0e70fSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>; 2230d5b0e70fSEmmanuel Vadot assigned-clock-rates = <800000000>; 2231d5b0e70fSEmmanuel Vadot power-domains = <&pgc_gpu2d>; 2232d5b0e70fSEmmanuel Vadot }; 2233d5b0e70fSEmmanuel Vadot 2234cb7aa33aSEmmanuel Vadot vpu_g1: video-codec@38300000 { 2235cb7aa33aSEmmanuel Vadot compatible = "nxp,imx8mm-vpu-g1"; 2236cb7aa33aSEmmanuel Vadot reg = <0x38300000 0x10000>; 2237cb7aa33aSEmmanuel Vadot interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 2238cb7aa33aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>; 2239cb7aa33aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_VPU_G1>; 2240cb7aa33aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 2241cb7aa33aSEmmanuel Vadot assigned-clock-rates = <600000000>; 2242cb7aa33aSEmmanuel Vadot power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G1>; 2243cb7aa33aSEmmanuel Vadot }; 2244cb7aa33aSEmmanuel Vadot 2245cb7aa33aSEmmanuel Vadot vpu_g2: video-codec@38310000 { 2246cb7aa33aSEmmanuel Vadot compatible = "nxp,imx8mq-vpu-g2"; 2247cb7aa33aSEmmanuel Vadot reg = <0x38310000 0x10000>; 2248cb7aa33aSEmmanuel Vadot interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 2249cb7aa33aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>; 2250cb7aa33aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_VPU_G2>; 2251cb7aa33aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_1000M>; 2252cb7aa33aSEmmanuel Vadot assigned-clock-rates = <500000000>; 2253cb7aa33aSEmmanuel Vadot power-domains = <&vpumix_blk_ctrl IMX8MP_VPUBLK_PD_G2>; 2254cb7aa33aSEmmanuel Vadot }; 2255cb7aa33aSEmmanuel Vadot 22567ef62cebSEmmanuel Vadot vpumix_blk_ctrl: blk-ctrl@38330000 { 22577ef62cebSEmmanuel Vadot compatible = "fsl,imx8mp-vpu-blk-ctrl", "syscon"; 22587ef62cebSEmmanuel Vadot reg = <0x38330000 0x100>; 22597ef62cebSEmmanuel Vadot #power-domain-cells = <1>; 22607ef62cebSEmmanuel Vadot power-domains = <&pgc_vpumix>, <&pgc_vpu_g1>, 22617ef62cebSEmmanuel Vadot <&pgc_vpu_g2>, <&pgc_vpu_vc8000e>; 22627ef62cebSEmmanuel Vadot power-domain-names = "bus", "g1", "g2", "vc8000e"; 22637ef62cebSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>, 22647ef62cebSEmmanuel Vadot <&clk IMX8MP_CLK_VPU_G2_ROOT>, 22657ef62cebSEmmanuel Vadot <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>; 22667ef62cebSEmmanuel Vadot clock-names = "g1", "g2", "vc8000e"; 2267cb7aa33aSEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_VPU_BUS>, <&clk IMX8MP_VPU_PLL>; 2268cb7aa33aSEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_VPU_PLL_OUT>; 2269cb7aa33aSEmmanuel Vadot assigned-clock-rates = <600000000>, <600000000>; 22707ef62cebSEmmanuel Vadot interconnects = <&noc IMX8MP_ICM_VPU_G1 &noc IMX8MP_ICN_VIDEO>, 22717ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_VPU_G2 &noc IMX8MP_ICN_VIDEO>, 22727ef62cebSEmmanuel Vadot <&noc IMX8MP_ICM_VPU_H1 &noc IMX8MP_ICN_VIDEO>; 22737ef62cebSEmmanuel Vadot interconnect-names = "g1", "g2", "vc8000e"; 22747ef62cebSEmmanuel Vadot }; 22757ef62cebSEmmanuel Vadot 22768d13bc63SEmmanuel Vadot npu: npu@38500000 { 22778d13bc63SEmmanuel Vadot compatible = "vivante,gc"; 22788d13bc63SEmmanuel Vadot reg = <0x38500000 0x200000>; 22798d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 22808d13bc63SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_NPU_ROOT>, 22818d13bc63SEmmanuel Vadot <&clk IMX8MP_CLK_NPU_ROOT>, 22828d13bc63SEmmanuel Vadot <&clk IMX8MP_CLK_ML_AXI>, 22838d13bc63SEmmanuel Vadot <&clk IMX8MP_CLK_ML_AHB>; 22848d13bc63SEmmanuel Vadot clock-names = "core", "shader", "bus", "reg"; 22858d13bc63SEmmanuel Vadot power-domains = <&pgc_mlmix>; 22868d13bc63SEmmanuel Vadot }; 22878d13bc63SEmmanuel Vadot 2288c66ec88fSEmmanuel Vadot gic: interrupt-controller@38800000 { 2289c66ec88fSEmmanuel Vadot compatible = "arm,gic-v3"; 2290c66ec88fSEmmanuel Vadot reg = <0x38800000 0x10000>, 2291c66ec88fSEmmanuel Vadot <0x38880000 0xc0000>; 2292c66ec88fSEmmanuel Vadot #interrupt-cells = <3>; 2293c66ec88fSEmmanuel Vadot interrupt-controller; 2294c66ec88fSEmmanuel Vadot interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 2295c66ec88fSEmmanuel Vadot interrupt-parent = <&gic>; 2296c66ec88fSEmmanuel Vadot }; 2297c66ec88fSEmmanuel Vadot 2298d5b0e70fSEmmanuel Vadot edacmc: memory-controller@3d400000 { 2299d5b0e70fSEmmanuel Vadot compatible = "snps,ddrc-3.80a"; 2300d5b0e70fSEmmanuel Vadot reg = <0x3d400000 0x400000>; 2301d5b0e70fSEmmanuel Vadot interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 2302d5b0e70fSEmmanuel Vadot }; 2303d5b0e70fSEmmanuel Vadot 2304c66ec88fSEmmanuel Vadot ddr-pmu@3d800000 { 2305c66ec88fSEmmanuel Vadot compatible = "fsl,imx8mp-ddr-pmu", "fsl,imx8m-ddr-pmu"; 2306c66ec88fSEmmanuel Vadot reg = <0x3d800000 0x400000>; 2307c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 2308c66ec88fSEmmanuel Vadot }; 23095def4c47SEmmanuel Vadot 23105def4c47SEmmanuel Vadot usb3_phy0: usb-phy@381f0040 { 23115def4c47SEmmanuel Vadot compatible = "fsl,imx8mp-usb-phy"; 23125def4c47SEmmanuel Vadot reg = <0x381f0040 0x40>; 23135def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 23145def4c47SEmmanuel Vadot clock-names = "phy"; 23155def4c47SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 23165def4c47SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 2317d5b0e70fSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY1>; 23185def4c47SEmmanuel Vadot #phy-cells = <0>; 23195def4c47SEmmanuel Vadot status = "disabled"; 23205def4c47SEmmanuel Vadot }; 23215def4c47SEmmanuel Vadot 23225def4c47SEmmanuel Vadot usb3_0: usb@32f10100 { 23235def4c47SEmmanuel Vadot compatible = "fsl,imx8mp-dwc3"; 2324c9ccf3a3SEmmanuel Vadot reg = <0x32f10100 0x8>, 2325c9ccf3a3SEmmanuel Vadot <0x381f0000 0x20>; 23265def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 23278bab661aSEmmanuel Vadot <&clk IMX8MP_CLK_USB_SUSP>; 23285def4c47SEmmanuel Vadot clock-names = "hsio", "suspend"; 23295def4c47SEmmanuel Vadot interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 2330d5b0e70fSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 23315def4c47SEmmanuel Vadot #address-cells = <1>; 23325def4c47SEmmanuel Vadot #size-cells = <1>; 23335def4c47SEmmanuel Vadot dma-ranges = <0x40000000 0x40000000 0xc0000000>; 23345def4c47SEmmanuel Vadot ranges; 23355def4c47SEmmanuel Vadot status = "disabled"; 23365def4c47SEmmanuel Vadot 23372eb4d8dcSEmmanuel Vadot usb_dwc3_0: usb@38100000 { 23385def4c47SEmmanuel Vadot compatible = "snps,dwc3"; 23395def4c47SEmmanuel Vadot reg = <0x38100000 0x10000>; 23408bab661aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_USB_ROOT>, 23415def4c47SEmmanuel Vadot <&clk IMX8MP_CLK_USB_CORE_REF>, 23428bab661aSEmmanuel Vadot <&clk IMX8MP_CLK_USB_SUSP>; 23435def4c47SEmmanuel Vadot clock-names = "bus_early", "ref", "suspend"; 23445def4c47SEmmanuel Vadot interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 23455def4c47SEmmanuel Vadot phys = <&usb3_phy0>, <&usb3_phy0>; 23465def4c47SEmmanuel Vadot phy-names = "usb2-phy", "usb3-phy"; 23477ef62cebSEmmanuel Vadot snps,gfladj-refclk-lpm-sel-quirk; 234884943d6fSEmmanuel Vadot snps,parkmode-disable-ss-quirk; 23495def4c47SEmmanuel Vadot }; 23505def4c47SEmmanuel Vadot 23515def4c47SEmmanuel Vadot }; 23525def4c47SEmmanuel Vadot 23535def4c47SEmmanuel Vadot usb3_phy1: usb-phy@382f0040 { 23545def4c47SEmmanuel Vadot compatible = "fsl,imx8mp-usb-phy"; 23555def4c47SEmmanuel Vadot reg = <0x382f0040 0x40>; 23565def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_USB_PHY_ROOT>; 23575def4c47SEmmanuel Vadot clock-names = "phy"; 23585def4c47SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_USB_PHY_REF>; 23595def4c47SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_CLK_24M>; 2360d5b0e70fSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB_PHY2>; 23615def4c47SEmmanuel Vadot #phy-cells = <0>; 2362c9ccf3a3SEmmanuel Vadot status = "disabled"; 23635def4c47SEmmanuel Vadot }; 23645def4c47SEmmanuel Vadot 23655def4c47SEmmanuel Vadot usb3_1: usb@32f10108 { 23665def4c47SEmmanuel Vadot compatible = "fsl,imx8mp-dwc3"; 2367c9ccf3a3SEmmanuel Vadot reg = <0x32f10108 0x8>, 2368c9ccf3a3SEmmanuel Vadot <0x382f0000 0x20>; 23695def4c47SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_HSIO_ROOT>, 23708bab661aSEmmanuel Vadot <&clk IMX8MP_CLK_USB_SUSP>; 23715def4c47SEmmanuel Vadot clock-names = "hsio", "suspend"; 23725def4c47SEmmanuel Vadot interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; 2373d5b0e70fSEmmanuel Vadot power-domains = <&hsio_blk_ctrl IMX8MP_HSIOBLK_PD_USB>; 23745def4c47SEmmanuel Vadot #address-cells = <1>; 23755def4c47SEmmanuel Vadot #size-cells = <1>; 23765def4c47SEmmanuel Vadot dma-ranges = <0x40000000 0x40000000 0xc0000000>; 23775def4c47SEmmanuel Vadot ranges; 23785def4c47SEmmanuel Vadot status = "disabled"; 23795def4c47SEmmanuel Vadot 23802eb4d8dcSEmmanuel Vadot usb_dwc3_1: usb@38200000 { 23815def4c47SEmmanuel Vadot compatible = "snps,dwc3"; 23825def4c47SEmmanuel Vadot reg = <0x38200000 0x10000>; 23838bab661aSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_USB_ROOT>, 23845def4c47SEmmanuel Vadot <&clk IMX8MP_CLK_USB_CORE_REF>, 23858bab661aSEmmanuel Vadot <&clk IMX8MP_CLK_USB_SUSP>; 23865def4c47SEmmanuel Vadot clock-names = "bus_early", "ref", "suspend"; 23875def4c47SEmmanuel Vadot interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 23885def4c47SEmmanuel Vadot phys = <&usb3_phy1>, <&usb3_phy1>; 23895def4c47SEmmanuel Vadot phy-names = "usb2-phy", "usb3-phy"; 23907ef62cebSEmmanuel Vadot snps,gfladj-refclk-lpm-sel-quirk; 239184943d6fSEmmanuel Vadot snps,parkmode-disable-ss-quirk; 23925def4c47SEmmanuel Vadot }; 23935def4c47SEmmanuel Vadot }; 2394354d7675SEmmanuel Vadot 2395354d7675SEmmanuel Vadot dsp: dsp@3b6e8000 { 2396354d7675SEmmanuel Vadot compatible = "fsl,imx8mp-dsp"; 2397354d7675SEmmanuel Vadot reg = <0x3b6e8000 0x88000>; 2398354d7675SEmmanuel Vadot mbox-names = "txdb0", "txdb1", 2399354d7675SEmmanuel Vadot "rxdb0", "rxdb1"; 2400354d7675SEmmanuel Vadot mboxes = <&mu2 2 0>, <&mu2 2 1>, 2401354d7675SEmmanuel Vadot <&mu2 3 0>, <&mu2 3 1>; 2402354d7675SEmmanuel Vadot memory-region = <&dsp_reserved>; 2403354d7675SEmmanuel Vadot status = "disabled"; 2404354d7675SEmmanuel Vadot }; 2405c66ec88fSEmmanuel Vadot }; 2406c66ec88fSEmmanuel Vadot}; 2407