162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ OR MIT 262306a36Sopenharmony_ci// 362306a36Sopenharmony_ci// Copyright 2015 Freescale Semiconductor, Inc. 462306a36Sopenharmony_ci// Copyright 2016 Toradex AG 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include <dt-bindings/clock/imx7d-clock.h> 762306a36Sopenharmony_ci#include <dt-bindings/power/imx7-power.h> 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci#include <dt-bindings/input/input.h> 1062306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 1162306a36Sopenharmony_ci#include <dt-bindings/reset/imx7-reset.h> 1262306a36Sopenharmony_ci#include "imx7d-pinfunc.h" 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci/ { 1562306a36Sopenharmony_ci #address-cells = <1>; 1662306a36Sopenharmony_ci #size-cells = <1>; 1762306a36Sopenharmony_ci /* 1862306a36Sopenharmony_ci * The decompressor and also some bootloaders rely on a 1962306a36Sopenharmony_ci * pre-existing /chosen node to be available to insert the 2062306a36Sopenharmony_ci * command line and merge other ATAGS info. 2162306a36Sopenharmony_ci */ 2262306a36Sopenharmony_ci chosen {}; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci aliases { 2562306a36Sopenharmony_ci gpio0 = &gpio1; 2662306a36Sopenharmony_ci gpio1 = &gpio2; 2762306a36Sopenharmony_ci gpio2 = &gpio3; 2862306a36Sopenharmony_ci gpio3 = &gpio4; 2962306a36Sopenharmony_ci gpio4 = &gpio5; 3062306a36Sopenharmony_ci gpio5 = &gpio6; 3162306a36Sopenharmony_ci gpio6 = &gpio7; 3262306a36Sopenharmony_ci i2c0 = &i2c1; 3362306a36Sopenharmony_ci i2c1 = &i2c2; 3462306a36Sopenharmony_ci i2c2 = &i2c3; 3562306a36Sopenharmony_ci i2c3 = &i2c4; 3662306a36Sopenharmony_ci mmc0 = &usdhc1; 3762306a36Sopenharmony_ci mmc1 = &usdhc2; 3862306a36Sopenharmony_ci mmc2 = &usdhc3; 3962306a36Sopenharmony_ci serial0 = &uart1; 4062306a36Sopenharmony_ci serial1 = &uart2; 4162306a36Sopenharmony_ci serial2 = &uart3; 4262306a36Sopenharmony_ci serial3 = &uart4; 4362306a36Sopenharmony_ci serial4 = &uart5; 4462306a36Sopenharmony_ci serial5 = &uart6; 4562306a36Sopenharmony_ci serial6 = &uart7; 4662306a36Sopenharmony_ci spi0 = &ecspi1; 4762306a36Sopenharmony_ci spi1 = &ecspi2; 4862306a36Sopenharmony_ci spi2 = &ecspi3; 4962306a36Sopenharmony_ci spi3 = &ecspi4; 5062306a36Sopenharmony_ci usb0 = &usbotg1; 5162306a36Sopenharmony_ci usb1 = &usbh; 5262306a36Sopenharmony_ci }; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci cpus { 5562306a36Sopenharmony_ci #address-cells = <1>; 5662306a36Sopenharmony_ci #size-cells = <0>; 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci idle-states { 5962306a36Sopenharmony_ci entry-method = "psci"; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci cpu_sleep_wait: cpu-sleep-wait { 6262306a36Sopenharmony_ci compatible = "arm,idle-state"; 6362306a36Sopenharmony_ci arm,psci-suspend-param = <0x0010000>; 6462306a36Sopenharmony_ci local-timer-stop; 6562306a36Sopenharmony_ci entry-latency-us = <100>; 6662306a36Sopenharmony_ci exit-latency-us = <50>; 6762306a36Sopenharmony_ci min-residency-us = <1000>; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci cpu0: cpu@0 { 7262306a36Sopenharmony_ci compatible = "arm,cortex-a7"; 7362306a36Sopenharmony_ci device_type = "cpu"; 7462306a36Sopenharmony_ci reg = <0>; 7562306a36Sopenharmony_ci clock-frequency = <792000000>; 7662306a36Sopenharmony_ci clock-latency = <61036>; /* two CLK32 periods */ 7762306a36Sopenharmony_ci clocks = <&clks IMX7D_CLK_ARM>; 7862306a36Sopenharmony_ci cpu-idle-states = <&cpu_sleep_wait>; 7962306a36Sopenharmony_ci operating-points-v2 = <&cpu0_opp_table>; 8062306a36Sopenharmony_ci #cooling-cells = <2>; 8162306a36Sopenharmony_ci nvmem-cells = <&fuse_grade>; 8262306a36Sopenharmony_ci nvmem-cell-names = "speed_grade"; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci cpu0_opp_table: opp-table { 8762306a36Sopenharmony_ci compatible = "operating-points-v2"; 8862306a36Sopenharmony_ci opp-shared; 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci opp-792000000 { 9162306a36Sopenharmony_ci opp-hz = /bits/ 64 <792000000>; 9262306a36Sopenharmony_ci opp-microvolt = <1000000>; 9362306a36Sopenharmony_ci clock-latency-ns = <150000>; 9462306a36Sopenharmony_ci opp-supported-hw = <0xf>, <0xf>; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci }; 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci ckil: clock-cki { 9962306a36Sopenharmony_ci compatible = "fixed-clock"; 10062306a36Sopenharmony_ci #clock-cells = <0>; 10162306a36Sopenharmony_ci clock-frequency = <32768>; 10262306a36Sopenharmony_ci clock-output-names = "ckil"; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci osc: clock-osc { 10662306a36Sopenharmony_ci compatible = "fixed-clock"; 10762306a36Sopenharmony_ci #clock-cells = <0>; 10862306a36Sopenharmony_ci clock-frequency = <24000000>; 10962306a36Sopenharmony_ci clock-output-names = "osc"; 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci usbphynop1: usbphynop1 { 11362306a36Sopenharmony_ci compatible = "usb-nop-xceiv"; 11462306a36Sopenharmony_ci clocks = <&clks IMX7D_USB_PHY1_CLK>; 11562306a36Sopenharmony_ci clock-names = "main_clk"; 11662306a36Sopenharmony_ci #phy-cells = <0>; 11762306a36Sopenharmony_ci }; 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci usbphynop3: usbphynop3 { 12062306a36Sopenharmony_ci compatible = "usb-nop-xceiv"; 12162306a36Sopenharmony_ci clocks = <&clks IMX7D_USB_HSIC_ROOT_CLK>; 12262306a36Sopenharmony_ci clock-names = "main_clk"; 12362306a36Sopenharmony_ci power-domains = <&pgc_hsic_phy>; 12462306a36Sopenharmony_ci #phy-cells = <0>; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci pmu { 12862306a36Sopenharmony_ci compatible = "arm,cortex-a7-pmu"; 12962306a36Sopenharmony_ci interrupt-parent = <&gpc>; 13062306a36Sopenharmony_ci interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 13162306a36Sopenharmony_ci interrupt-affinity = <&cpu0>; 13262306a36Sopenharmony_ci }; 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci replicator { 13562306a36Sopenharmony_ci /* 13662306a36Sopenharmony_ci * non-configurable replicators don't show up on the 13762306a36Sopenharmony_ci * AMBA bus. As such no need to add "arm,primecell" 13862306a36Sopenharmony_ci */ 13962306a36Sopenharmony_ci compatible = "arm,coresight-static-replicator"; 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ci out-ports { 14262306a36Sopenharmony_ci #address-cells = <1>; 14362306a36Sopenharmony_ci #size-cells = <0>; 14462306a36Sopenharmony_ci /* replicator output ports */ 14562306a36Sopenharmony_ci port@0 { 14662306a36Sopenharmony_ci reg = <0>; 14762306a36Sopenharmony_ci replicator_out_port0: endpoint { 14862306a36Sopenharmony_ci remote-endpoint = <&tpiu_in_port>; 14962306a36Sopenharmony_ci }; 15062306a36Sopenharmony_ci }; 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci port@1 { 15362306a36Sopenharmony_ci reg = <1>; 15462306a36Sopenharmony_ci replicator_out_port1: endpoint { 15562306a36Sopenharmony_ci remote-endpoint = <&etr_in_port>; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci }; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci in-ports { 16162306a36Sopenharmony_ci port { 16262306a36Sopenharmony_ci replicator_in_port0: endpoint { 16362306a36Sopenharmony_ci remote-endpoint = <&etf_out_port>; 16462306a36Sopenharmony_ci }; 16562306a36Sopenharmony_ci }; 16662306a36Sopenharmony_ci }; 16762306a36Sopenharmony_ci }; 16862306a36Sopenharmony_ci 16962306a36Sopenharmony_ci timer { 17062306a36Sopenharmony_ci compatible = "arm,armv7-timer"; 17162306a36Sopenharmony_ci arm,cpu-registers-not-fw-configured; 17262306a36Sopenharmony_ci interrupt-parent = <&intc>; 17362306a36Sopenharmony_ci interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 17462306a36Sopenharmony_ci <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 17562306a36Sopenharmony_ci <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 17662306a36Sopenharmony_ci <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>; 17762306a36Sopenharmony_ci }; 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_ci soc: soc { 18062306a36Sopenharmony_ci #address-cells = <1>; 18162306a36Sopenharmony_ci #size-cells = <1>; 18262306a36Sopenharmony_ci compatible = "simple-bus"; 18362306a36Sopenharmony_ci interrupt-parent = <&gpc>; 18462306a36Sopenharmony_ci ranges; 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci funnel@30041000 { 18762306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 18862306a36Sopenharmony_ci reg = <0x30041000 0x1000>; 18962306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 19062306a36Sopenharmony_ci clock-names = "apb_pclk"; 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci ca_funnel_in_ports: in-ports { 19362306a36Sopenharmony_ci #address-cells = <1>; 19462306a36Sopenharmony_ci #size-cells = <0>; 19562306a36Sopenharmony_ci 19662306a36Sopenharmony_ci port@0 { 19762306a36Sopenharmony_ci reg = <0>; 19862306a36Sopenharmony_ci ca_funnel_in_port0: endpoint { 19962306a36Sopenharmony_ci remote-endpoint = <&etm0_out_port>; 20062306a36Sopenharmony_ci }; 20162306a36Sopenharmony_ci }; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci /* the other input ports are not connect to anything */ 20462306a36Sopenharmony_ci }; 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ci out-ports { 20762306a36Sopenharmony_ci port { 20862306a36Sopenharmony_ci ca_funnel_out_port0: endpoint { 20962306a36Sopenharmony_ci remote-endpoint = <&hugo_funnel_in_port0>; 21062306a36Sopenharmony_ci }; 21162306a36Sopenharmony_ci }; 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci etm@3007c000 { 21762306a36Sopenharmony_ci compatible = "arm,coresight-etm3x", "arm,primecell"; 21862306a36Sopenharmony_ci reg = <0x3007c000 0x1000>; 21962306a36Sopenharmony_ci cpu = <&cpu0>; 22062306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 22162306a36Sopenharmony_ci clock-names = "apb_pclk"; 22262306a36Sopenharmony_ci 22362306a36Sopenharmony_ci out-ports { 22462306a36Sopenharmony_ci port { 22562306a36Sopenharmony_ci etm0_out_port: endpoint { 22662306a36Sopenharmony_ci remote-endpoint = <&ca_funnel_in_port0>; 22762306a36Sopenharmony_ci }; 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci }; 23062306a36Sopenharmony_ci }; 23162306a36Sopenharmony_ci 23262306a36Sopenharmony_ci funnel@30083000 { 23362306a36Sopenharmony_ci compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 23462306a36Sopenharmony_ci reg = <0x30083000 0x1000>; 23562306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 23662306a36Sopenharmony_ci clock-names = "apb_pclk"; 23762306a36Sopenharmony_ci 23862306a36Sopenharmony_ci in-ports { 23962306a36Sopenharmony_ci #address-cells = <1>; 24062306a36Sopenharmony_ci #size-cells = <0>; 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci port@0 { 24362306a36Sopenharmony_ci reg = <0>; 24462306a36Sopenharmony_ci hugo_funnel_in_port0: endpoint { 24562306a36Sopenharmony_ci remote-endpoint = <&ca_funnel_out_port0>; 24662306a36Sopenharmony_ci }; 24762306a36Sopenharmony_ci }; 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_ci port@1 { 25062306a36Sopenharmony_ci reg = <1>; 25162306a36Sopenharmony_ci hugo_funnel_in_port1: endpoint { 25262306a36Sopenharmony_ci /* M4 input */ 25362306a36Sopenharmony_ci }; 25462306a36Sopenharmony_ci }; 25562306a36Sopenharmony_ci /* the other input ports are not connect to anything */ 25662306a36Sopenharmony_ci }; 25762306a36Sopenharmony_ci 25862306a36Sopenharmony_ci out-ports { 25962306a36Sopenharmony_ci port { 26062306a36Sopenharmony_ci hugo_funnel_out_port0: endpoint { 26162306a36Sopenharmony_ci remote-endpoint = <&etf_in_port>; 26262306a36Sopenharmony_ci }; 26362306a36Sopenharmony_ci }; 26462306a36Sopenharmony_ci }; 26562306a36Sopenharmony_ci }; 26662306a36Sopenharmony_ci 26762306a36Sopenharmony_ci etf@30084000 { 26862306a36Sopenharmony_ci compatible = "arm,coresight-tmc", "arm,primecell"; 26962306a36Sopenharmony_ci reg = <0x30084000 0x1000>; 27062306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 27162306a36Sopenharmony_ci clock-names = "apb_pclk"; 27262306a36Sopenharmony_ci 27362306a36Sopenharmony_ci in-ports { 27462306a36Sopenharmony_ci port { 27562306a36Sopenharmony_ci etf_in_port: endpoint { 27662306a36Sopenharmony_ci remote-endpoint = <&hugo_funnel_out_port0>; 27762306a36Sopenharmony_ci }; 27862306a36Sopenharmony_ci }; 27962306a36Sopenharmony_ci }; 28062306a36Sopenharmony_ci 28162306a36Sopenharmony_ci out-ports { 28262306a36Sopenharmony_ci port { 28362306a36Sopenharmony_ci etf_out_port: endpoint { 28462306a36Sopenharmony_ci remote-endpoint = <&replicator_in_port0>; 28562306a36Sopenharmony_ci }; 28662306a36Sopenharmony_ci }; 28762306a36Sopenharmony_ci }; 28862306a36Sopenharmony_ci }; 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ci etr@30086000 { 29162306a36Sopenharmony_ci compatible = "arm,coresight-tmc", "arm,primecell"; 29262306a36Sopenharmony_ci reg = <0x30086000 0x1000>; 29362306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 29462306a36Sopenharmony_ci clock-names = "apb_pclk"; 29562306a36Sopenharmony_ci 29662306a36Sopenharmony_ci in-ports { 29762306a36Sopenharmony_ci port { 29862306a36Sopenharmony_ci etr_in_port: endpoint { 29962306a36Sopenharmony_ci remote-endpoint = <&replicator_out_port1>; 30062306a36Sopenharmony_ci }; 30162306a36Sopenharmony_ci }; 30262306a36Sopenharmony_ci }; 30362306a36Sopenharmony_ci }; 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci tpiu@30087000 { 30662306a36Sopenharmony_ci compatible = "arm,coresight-tpiu", "arm,primecell"; 30762306a36Sopenharmony_ci reg = <0x30087000 0x1000>; 30862306a36Sopenharmony_ci clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 30962306a36Sopenharmony_ci clock-names = "apb_pclk"; 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ci in-ports { 31262306a36Sopenharmony_ci port { 31362306a36Sopenharmony_ci tpiu_in_port: endpoint { 31462306a36Sopenharmony_ci remote-endpoint = <&replicator_out_port0>; 31562306a36Sopenharmony_ci }; 31662306a36Sopenharmony_ci }; 31762306a36Sopenharmony_ci }; 31862306a36Sopenharmony_ci }; 31962306a36Sopenharmony_ci 32062306a36Sopenharmony_ci intc: interrupt-controller@31001000 { 32162306a36Sopenharmony_ci compatible = "arm,cortex-a7-gic"; 32262306a36Sopenharmony_ci interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_HIGH)>; 32362306a36Sopenharmony_ci #interrupt-cells = <3>; 32462306a36Sopenharmony_ci interrupt-controller; 32562306a36Sopenharmony_ci interrupt-parent = <&intc>; 32662306a36Sopenharmony_ci reg = <0x31001000 0x1000>, 32762306a36Sopenharmony_ci <0x31002000 0x2000>, 32862306a36Sopenharmony_ci <0x31004000 0x2000>, 32962306a36Sopenharmony_ci <0x31006000 0x2000>; 33062306a36Sopenharmony_ci }; 33162306a36Sopenharmony_ci 33262306a36Sopenharmony_ci aips1: bus@30000000 { 33362306a36Sopenharmony_ci compatible = "fsl,aips-bus", "simple-bus"; 33462306a36Sopenharmony_ci #address-cells = <1>; 33562306a36Sopenharmony_ci #size-cells = <1>; 33662306a36Sopenharmony_ci reg = <0x30000000 0x400000>; 33762306a36Sopenharmony_ci ranges; 33862306a36Sopenharmony_ci 33962306a36Sopenharmony_ci gpio1: gpio@30200000 { 34062306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 34162306a36Sopenharmony_ci reg = <0x30200000 0x10000>; 34262306a36Sopenharmony_ci interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, /* GPIO1_INT15_0 */ 34362306a36Sopenharmony_ci <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; /* GPIO1_INT31_16 */ 34462306a36Sopenharmony_ci gpio-controller; 34562306a36Sopenharmony_ci #gpio-cells = <2>; 34662306a36Sopenharmony_ci interrupt-controller; 34762306a36Sopenharmony_ci #interrupt-cells = <2>; 34862306a36Sopenharmony_ci gpio-ranges = <&iomuxc_lpsr 0 0 8>, <&iomuxc 8 5 8>; 34962306a36Sopenharmony_ci }; 35062306a36Sopenharmony_ci 35162306a36Sopenharmony_ci gpio2: gpio@30210000 { 35262306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 35362306a36Sopenharmony_ci reg = <0x30210000 0x10000>; 35462306a36Sopenharmony_ci interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 35562306a36Sopenharmony_ci <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 35662306a36Sopenharmony_ci gpio-controller; 35762306a36Sopenharmony_ci #gpio-cells = <2>; 35862306a36Sopenharmony_ci interrupt-controller; 35962306a36Sopenharmony_ci #interrupt-cells = <2>; 36062306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 13 32>; 36162306a36Sopenharmony_ci }; 36262306a36Sopenharmony_ci 36362306a36Sopenharmony_ci gpio3: gpio@30220000 { 36462306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 36562306a36Sopenharmony_ci reg = <0x30220000 0x10000>; 36662306a36Sopenharmony_ci interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 36762306a36Sopenharmony_ci <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 36862306a36Sopenharmony_ci gpio-controller; 36962306a36Sopenharmony_ci #gpio-cells = <2>; 37062306a36Sopenharmony_ci interrupt-controller; 37162306a36Sopenharmony_ci #interrupt-cells = <2>; 37262306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 45 29>; 37362306a36Sopenharmony_ci }; 37462306a36Sopenharmony_ci 37562306a36Sopenharmony_ci gpio4: gpio@30230000 { 37662306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 37762306a36Sopenharmony_ci reg = <0x30230000 0x10000>; 37862306a36Sopenharmony_ci interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 37962306a36Sopenharmony_ci <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 38062306a36Sopenharmony_ci gpio-controller; 38162306a36Sopenharmony_ci #gpio-cells = <2>; 38262306a36Sopenharmony_ci interrupt-controller; 38362306a36Sopenharmony_ci #interrupt-cells = <2>; 38462306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 74 24>; 38562306a36Sopenharmony_ci }; 38662306a36Sopenharmony_ci 38762306a36Sopenharmony_ci gpio5: gpio@30240000 { 38862306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 38962306a36Sopenharmony_ci reg = <0x30240000 0x10000>; 39062306a36Sopenharmony_ci interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 39162306a36Sopenharmony_ci <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 39262306a36Sopenharmony_ci gpio-controller; 39362306a36Sopenharmony_ci #gpio-cells = <2>; 39462306a36Sopenharmony_ci interrupt-controller; 39562306a36Sopenharmony_ci #interrupt-cells = <2>; 39662306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 98 18>; 39762306a36Sopenharmony_ci }; 39862306a36Sopenharmony_ci 39962306a36Sopenharmony_ci gpio6: gpio@30250000 { 40062306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 40162306a36Sopenharmony_ci reg = <0x30250000 0x10000>; 40262306a36Sopenharmony_ci interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 40362306a36Sopenharmony_ci <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 40462306a36Sopenharmony_ci gpio-controller; 40562306a36Sopenharmony_ci #gpio-cells = <2>; 40662306a36Sopenharmony_ci interrupt-controller; 40762306a36Sopenharmony_ci #interrupt-cells = <2>; 40862306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 116 23>; 40962306a36Sopenharmony_ci }; 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci gpio7: gpio@30260000 { 41262306a36Sopenharmony_ci compatible = "fsl,imx7d-gpio", "fsl,imx35-gpio"; 41362306a36Sopenharmony_ci reg = <0x30260000 0x10000>; 41462306a36Sopenharmony_ci interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, 41562306a36Sopenharmony_ci <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 41662306a36Sopenharmony_ci gpio-controller; 41762306a36Sopenharmony_ci #gpio-cells = <2>; 41862306a36Sopenharmony_ci interrupt-controller; 41962306a36Sopenharmony_ci #interrupt-cells = <2>; 42062306a36Sopenharmony_ci gpio-ranges = <&iomuxc 0 139 16>; 42162306a36Sopenharmony_ci }; 42262306a36Sopenharmony_ci 42362306a36Sopenharmony_ci wdog1: watchdog@30280000 { 42462306a36Sopenharmony_ci compatible = "fsl,imx7d-wdt", "fsl,imx21-wdt"; 42562306a36Sopenharmony_ci reg = <0x30280000 0x10000>; 42662306a36Sopenharmony_ci interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 42762306a36Sopenharmony_ci clocks = <&clks IMX7D_WDOG1_ROOT_CLK>; 42862306a36Sopenharmony_ci }; 42962306a36Sopenharmony_ci 43062306a36Sopenharmony_ci wdog2: watchdog@30290000 { 43162306a36Sopenharmony_ci compatible = "fsl,imx7d-wdt", "fsl,imx21-wdt"; 43262306a36Sopenharmony_ci reg = <0x30290000 0x10000>; 43362306a36Sopenharmony_ci interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 43462306a36Sopenharmony_ci clocks = <&clks IMX7D_WDOG2_ROOT_CLK>; 43562306a36Sopenharmony_ci status = "disabled"; 43662306a36Sopenharmony_ci }; 43762306a36Sopenharmony_ci 43862306a36Sopenharmony_ci wdog3: watchdog@302a0000 { 43962306a36Sopenharmony_ci compatible = "fsl,imx7d-wdt", "fsl,imx21-wdt"; 44062306a36Sopenharmony_ci reg = <0x302a0000 0x10000>; 44162306a36Sopenharmony_ci interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 44262306a36Sopenharmony_ci clocks = <&clks IMX7D_WDOG3_ROOT_CLK>; 44362306a36Sopenharmony_ci status = "disabled"; 44462306a36Sopenharmony_ci }; 44562306a36Sopenharmony_ci 44662306a36Sopenharmony_ci wdog4: watchdog@302b0000 { 44762306a36Sopenharmony_ci compatible = "fsl,imx7d-wdt", "fsl,imx21-wdt"; 44862306a36Sopenharmony_ci reg = <0x302b0000 0x10000>; 44962306a36Sopenharmony_ci interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 45062306a36Sopenharmony_ci clocks = <&clks IMX7D_WDOG4_ROOT_CLK>; 45162306a36Sopenharmony_ci status = "disabled"; 45262306a36Sopenharmony_ci }; 45362306a36Sopenharmony_ci 45462306a36Sopenharmony_ci iomuxc_lpsr: pinctrl@302c0000 { 45562306a36Sopenharmony_ci compatible = "fsl,imx7d-iomuxc-lpsr"; 45662306a36Sopenharmony_ci reg = <0x302c0000 0x10000>; 45762306a36Sopenharmony_ci fsl,input-sel = <&iomuxc>; 45862306a36Sopenharmony_ci }; 45962306a36Sopenharmony_ci 46062306a36Sopenharmony_ci gpt1: timer@302d0000 { 46162306a36Sopenharmony_ci compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt"; 46262306a36Sopenharmony_ci reg = <0x302d0000 0x10000>; 46362306a36Sopenharmony_ci interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 46462306a36Sopenharmony_ci clocks = <&clks IMX7D_GPT1_ROOT_CLK>, 46562306a36Sopenharmony_ci <&clks IMX7D_GPT1_ROOT_CLK>; 46662306a36Sopenharmony_ci clock-names = "ipg", "per"; 46762306a36Sopenharmony_ci }; 46862306a36Sopenharmony_ci 46962306a36Sopenharmony_ci gpt2: timer@302e0000 { 47062306a36Sopenharmony_ci compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt"; 47162306a36Sopenharmony_ci reg = <0x302e0000 0x10000>; 47262306a36Sopenharmony_ci interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 47362306a36Sopenharmony_ci clocks = <&clks IMX7D_GPT2_ROOT_CLK>, 47462306a36Sopenharmony_ci <&clks IMX7D_GPT2_ROOT_CLK>; 47562306a36Sopenharmony_ci clock-names = "ipg", "per"; 47662306a36Sopenharmony_ci status = "disabled"; 47762306a36Sopenharmony_ci }; 47862306a36Sopenharmony_ci 47962306a36Sopenharmony_ci gpt3: timer@302f0000 { 48062306a36Sopenharmony_ci compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt"; 48162306a36Sopenharmony_ci reg = <0x302f0000 0x10000>; 48262306a36Sopenharmony_ci interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 48362306a36Sopenharmony_ci clocks = <&clks IMX7D_GPT3_ROOT_CLK>, 48462306a36Sopenharmony_ci <&clks IMX7D_GPT3_ROOT_CLK>; 48562306a36Sopenharmony_ci clock-names = "ipg", "per"; 48662306a36Sopenharmony_ci status = "disabled"; 48762306a36Sopenharmony_ci }; 48862306a36Sopenharmony_ci 48962306a36Sopenharmony_ci gpt4: timer@30300000 { 49062306a36Sopenharmony_ci compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt"; 49162306a36Sopenharmony_ci reg = <0x30300000 0x10000>; 49262306a36Sopenharmony_ci interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 49362306a36Sopenharmony_ci clocks = <&clks IMX7D_GPT4_ROOT_CLK>, 49462306a36Sopenharmony_ci <&clks IMX7D_GPT4_ROOT_CLK>; 49562306a36Sopenharmony_ci clock-names = "ipg", "per"; 49662306a36Sopenharmony_ci status = "disabled"; 49762306a36Sopenharmony_ci }; 49862306a36Sopenharmony_ci 49962306a36Sopenharmony_ci kpp: keypad@30320000 { 50062306a36Sopenharmony_ci compatible = "fsl,imx7d-kpp", "fsl,imx21-kpp"; 50162306a36Sopenharmony_ci reg = <0x30320000 0x10000>; 50262306a36Sopenharmony_ci interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 50362306a36Sopenharmony_ci clocks = <&clks IMX7D_KPP_ROOT_CLK>; 50462306a36Sopenharmony_ci status = "disabled"; 50562306a36Sopenharmony_ci }; 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci iomuxc: pinctrl@30330000 { 50862306a36Sopenharmony_ci compatible = "fsl,imx7d-iomuxc"; 50962306a36Sopenharmony_ci reg = <0x30330000 0x10000>; 51062306a36Sopenharmony_ci }; 51162306a36Sopenharmony_ci 51262306a36Sopenharmony_ci gpr: iomuxc-gpr@30340000 { 51362306a36Sopenharmony_ci compatible = "fsl,imx7d-iomuxc-gpr", 51462306a36Sopenharmony_ci "fsl,imx6q-iomuxc-gpr", "syscon", 51562306a36Sopenharmony_ci "simple-mfd"; 51662306a36Sopenharmony_ci reg = <0x30340000 0x10000>; 51762306a36Sopenharmony_ci 51862306a36Sopenharmony_ci mux: mux-controller { 51962306a36Sopenharmony_ci compatible = "mmio-mux"; 52062306a36Sopenharmony_ci #mux-control-cells = <1>; 52162306a36Sopenharmony_ci mux-reg-masks = <0x14 0x00000010>; 52262306a36Sopenharmony_ci }; 52362306a36Sopenharmony_ci 52462306a36Sopenharmony_ci video_mux: csi-mux { 52562306a36Sopenharmony_ci compatible = "video-mux"; 52662306a36Sopenharmony_ci mux-controls = <&mux 0>; 52762306a36Sopenharmony_ci #address-cells = <1>; 52862306a36Sopenharmony_ci #size-cells = <0>; 52962306a36Sopenharmony_ci status = "disabled"; 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ci port@0 { 53262306a36Sopenharmony_ci reg = <0>; 53362306a36Sopenharmony_ci }; 53462306a36Sopenharmony_ci 53562306a36Sopenharmony_ci port@1 { 53662306a36Sopenharmony_ci reg = <1>; 53762306a36Sopenharmony_ci 53862306a36Sopenharmony_ci csi_mux_from_mipi_vc0: endpoint { 53962306a36Sopenharmony_ci remote-endpoint = <&mipi_vc0_to_csi_mux>; 54062306a36Sopenharmony_ci }; 54162306a36Sopenharmony_ci }; 54262306a36Sopenharmony_ci 54362306a36Sopenharmony_ci port@2 { 54462306a36Sopenharmony_ci reg = <2>; 54562306a36Sopenharmony_ci 54662306a36Sopenharmony_ci csi_mux_to_csi: endpoint { 54762306a36Sopenharmony_ci remote-endpoint = <&csi_from_csi_mux>; 54862306a36Sopenharmony_ci }; 54962306a36Sopenharmony_ci }; 55062306a36Sopenharmony_ci }; 55162306a36Sopenharmony_ci }; 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ci ocotp: efuse@30350000 { 55462306a36Sopenharmony_ci #address-cells = <1>; 55562306a36Sopenharmony_ci #size-cells = <1>; 55662306a36Sopenharmony_ci compatible = "fsl,imx7d-ocotp", "syscon"; 55762306a36Sopenharmony_ci reg = <0x30350000 0x10000>; 55862306a36Sopenharmony_ci clocks = <&clks IMX7D_OCOTP_CLK>; 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ci tempmon_calib: calib@3c { 56162306a36Sopenharmony_ci reg = <0x3c 0x4>; 56262306a36Sopenharmony_ci }; 56362306a36Sopenharmony_ci 56462306a36Sopenharmony_ci fuse_grade: fuse-grade@10 { 56562306a36Sopenharmony_ci reg = <0x10 0x4>; 56662306a36Sopenharmony_ci }; 56762306a36Sopenharmony_ci }; 56862306a36Sopenharmony_ci 56962306a36Sopenharmony_ci anatop: anatop@30360000 { 57062306a36Sopenharmony_ci compatible = "fsl,imx7d-anatop", "fsl,imx6q-anatop", 57162306a36Sopenharmony_ci "syscon", "simple-mfd"; 57262306a36Sopenharmony_ci reg = <0x30360000 0x10000>; 57362306a36Sopenharmony_ci interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, 57462306a36Sopenharmony_ci <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ci reg_1p0d: regulator-vdd1p0d { 57762306a36Sopenharmony_ci compatible = "fsl,anatop-regulator"; 57862306a36Sopenharmony_ci regulator-name = "vdd1p0d"; 57962306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 58062306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 58162306a36Sopenharmony_ci anatop-reg-offset = <0x210>; 58262306a36Sopenharmony_ci anatop-vol-bit-shift = <8>; 58362306a36Sopenharmony_ci anatop-vol-bit-width = <5>; 58462306a36Sopenharmony_ci anatop-min-bit-val = <8>; 58562306a36Sopenharmony_ci anatop-min-voltage = <800000>; 58662306a36Sopenharmony_ci anatop-max-voltage = <1200000>; 58762306a36Sopenharmony_ci anatop-enable-bit = <0>; 58862306a36Sopenharmony_ci }; 58962306a36Sopenharmony_ci 59062306a36Sopenharmony_ci reg_1p2: regulator-vdd1p2 { 59162306a36Sopenharmony_ci compatible = "fsl,anatop-regulator"; 59262306a36Sopenharmony_ci regulator-name = "vdd1p2"; 59362306a36Sopenharmony_ci regulator-min-microvolt = <1100000>; 59462306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 59562306a36Sopenharmony_ci anatop-reg-offset = <0x220>; 59662306a36Sopenharmony_ci anatop-vol-bit-shift = <8>; 59762306a36Sopenharmony_ci anatop-vol-bit-width = <5>; 59862306a36Sopenharmony_ci anatop-min-bit-val = <0x14>; 59962306a36Sopenharmony_ci anatop-min-voltage = <1100000>; 60062306a36Sopenharmony_ci anatop-max-voltage = <1300000>; 60162306a36Sopenharmony_ci anatop-enable-bit = <0>; 60262306a36Sopenharmony_ci }; 60362306a36Sopenharmony_ci 60462306a36Sopenharmony_ci tempmon: tempmon { 60562306a36Sopenharmony_ci compatible = "fsl,imx7d-tempmon"; 60662306a36Sopenharmony_ci interrupt-parent = <&gpc>; 60762306a36Sopenharmony_ci interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 60862306a36Sopenharmony_ci fsl,tempmon = <&anatop>; 60962306a36Sopenharmony_ci nvmem-cells = <&tempmon_calib>, <&fuse_grade>; 61062306a36Sopenharmony_ci nvmem-cell-names = "calib", "temp_grade"; 61162306a36Sopenharmony_ci clocks = <&clks IMX7D_PLL_SYS_MAIN_CLK>; 61262306a36Sopenharmony_ci }; 61362306a36Sopenharmony_ci }; 61462306a36Sopenharmony_ci 61562306a36Sopenharmony_ci snvs: snvs@30370000 { 61662306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd"; 61762306a36Sopenharmony_ci reg = <0x30370000 0x10000>; 61862306a36Sopenharmony_ci 61962306a36Sopenharmony_ci snvs_rtc: snvs-rtc-lp { 62062306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-mon-rtc-lp"; 62162306a36Sopenharmony_ci regmap = <&snvs>; 62262306a36Sopenharmony_ci offset = <0x34>; 62362306a36Sopenharmony_ci interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 62462306a36Sopenharmony_ci <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 62562306a36Sopenharmony_ci clocks = <&clks IMX7D_SNVS_CLK>; 62662306a36Sopenharmony_ci clock-names = "snvs-rtc"; 62762306a36Sopenharmony_ci }; 62862306a36Sopenharmony_ci 62962306a36Sopenharmony_ci snvs_pwrkey: snvs-powerkey { 63062306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-pwrkey"; 63162306a36Sopenharmony_ci regmap = <&snvs>; 63262306a36Sopenharmony_ci interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 63362306a36Sopenharmony_ci clocks = <&clks IMX7D_SNVS_CLK>; 63462306a36Sopenharmony_ci clock-names = "snvs-pwrkey"; 63562306a36Sopenharmony_ci linux,keycode = <KEY_POWER>; 63662306a36Sopenharmony_ci wakeup-source; 63762306a36Sopenharmony_ci status = "disabled"; 63862306a36Sopenharmony_ci }; 63962306a36Sopenharmony_ci }; 64062306a36Sopenharmony_ci 64162306a36Sopenharmony_ci clks: clock-controller@30380000 { 64262306a36Sopenharmony_ci compatible = "fsl,imx7d-ccm"; 64362306a36Sopenharmony_ci reg = <0x30380000 0x10000>; 64462306a36Sopenharmony_ci interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>, 64562306a36Sopenharmony_ci <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 64662306a36Sopenharmony_ci #clock-cells = <1>; 64762306a36Sopenharmony_ci clocks = <&ckil>, <&osc>; 64862306a36Sopenharmony_ci clock-names = "ckil", "osc"; 64962306a36Sopenharmony_ci }; 65062306a36Sopenharmony_ci 65162306a36Sopenharmony_ci src: reset-controller@30390000 { 65262306a36Sopenharmony_ci compatible = "fsl,imx7d-src", "syscon"; 65362306a36Sopenharmony_ci reg = <0x30390000 0x10000>; 65462306a36Sopenharmony_ci interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 65562306a36Sopenharmony_ci #reset-cells = <1>; 65662306a36Sopenharmony_ci }; 65762306a36Sopenharmony_ci 65862306a36Sopenharmony_ci gpc: gpc@303a0000 { 65962306a36Sopenharmony_ci compatible = "fsl,imx7d-gpc"; 66062306a36Sopenharmony_ci reg = <0x303a0000 0x10000>; 66162306a36Sopenharmony_ci interrupt-controller; 66262306a36Sopenharmony_ci interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 66362306a36Sopenharmony_ci #interrupt-cells = <3>; 66462306a36Sopenharmony_ci interrupt-parent = <&intc>; 66562306a36Sopenharmony_ci #power-domain-cells = <1>; 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ci pgc { 66862306a36Sopenharmony_ci #address-cells = <1>; 66962306a36Sopenharmony_ci #size-cells = <0>; 67062306a36Sopenharmony_ci 67162306a36Sopenharmony_ci pgc_mipi_phy: power-domain@0 { 67262306a36Sopenharmony_ci #power-domain-cells = <0>; 67362306a36Sopenharmony_ci reg = <0>; 67462306a36Sopenharmony_ci power-supply = <®_1p0d>; 67562306a36Sopenharmony_ci }; 67662306a36Sopenharmony_ci 67762306a36Sopenharmony_ci pgc_pcie_phy: power-domain@1 { 67862306a36Sopenharmony_ci #power-domain-cells = <0>; 67962306a36Sopenharmony_ci reg = <1>; 68062306a36Sopenharmony_ci power-supply = <®_1p0d>; 68162306a36Sopenharmony_ci }; 68262306a36Sopenharmony_ci 68362306a36Sopenharmony_ci pgc_hsic_phy: power-domain@2 { 68462306a36Sopenharmony_ci #power-domain-cells = <0>; 68562306a36Sopenharmony_ci reg = <2>; 68662306a36Sopenharmony_ci power-supply = <®_1p2>; 68762306a36Sopenharmony_ci }; 68862306a36Sopenharmony_ci }; 68962306a36Sopenharmony_ci }; 69062306a36Sopenharmony_ci }; 69162306a36Sopenharmony_ci 69262306a36Sopenharmony_ci aips2: bus@30400000 { 69362306a36Sopenharmony_ci compatible = "fsl,aips-bus", "simple-bus"; 69462306a36Sopenharmony_ci #address-cells = <1>; 69562306a36Sopenharmony_ci #size-cells = <1>; 69662306a36Sopenharmony_ci reg = <0x30400000 0x400000>; 69762306a36Sopenharmony_ci ranges; 69862306a36Sopenharmony_ci 69962306a36Sopenharmony_ci adc1: adc@30610000 { 70062306a36Sopenharmony_ci compatible = "fsl,imx7d-adc"; 70162306a36Sopenharmony_ci reg = <0x30610000 0x10000>; 70262306a36Sopenharmony_ci interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 70362306a36Sopenharmony_ci clocks = <&clks IMX7D_ADC_ROOT_CLK>; 70462306a36Sopenharmony_ci clock-names = "adc"; 70562306a36Sopenharmony_ci #io-channel-cells = <1>; 70662306a36Sopenharmony_ci status = "disabled"; 70762306a36Sopenharmony_ci }; 70862306a36Sopenharmony_ci 70962306a36Sopenharmony_ci adc2: adc@30620000 { 71062306a36Sopenharmony_ci compatible = "fsl,imx7d-adc"; 71162306a36Sopenharmony_ci reg = <0x30620000 0x10000>; 71262306a36Sopenharmony_ci interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 71362306a36Sopenharmony_ci clocks = <&clks IMX7D_ADC_ROOT_CLK>; 71462306a36Sopenharmony_ci clock-names = "adc"; 71562306a36Sopenharmony_ci #io-channel-cells = <1>; 71662306a36Sopenharmony_ci status = "disabled"; 71762306a36Sopenharmony_ci }; 71862306a36Sopenharmony_ci 71962306a36Sopenharmony_ci ecspi4: spi@30630000 { 72062306a36Sopenharmony_ci #address-cells = <1>; 72162306a36Sopenharmony_ci #size-cells = <0>; 72262306a36Sopenharmony_ci compatible = "fsl,imx7d-ecspi", "fsl,imx51-ecspi"; 72362306a36Sopenharmony_ci reg = <0x30630000 0x10000>; 72462306a36Sopenharmony_ci interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 72562306a36Sopenharmony_ci clocks = <&clks IMX7D_ECSPI4_ROOT_CLK>, 72662306a36Sopenharmony_ci <&clks IMX7D_ECSPI4_ROOT_CLK>; 72762306a36Sopenharmony_ci clock-names = "ipg", "per"; 72862306a36Sopenharmony_ci status = "disabled"; 72962306a36Sopenharmony_ci }; 73062306a36Sopenharmony_ci 73162306a36Sopenharmony_ci ftm1: pwm@30640000 { 73262306a36Sopenharmony_ci compatible = "fsl,vf610-ftm-pwm"; 73362306a36Sopenharmony_ci reg = <0x30640000 0x10000>; 73462306a36Sopenharmony_ci #pwm-cells = <3>; 73562306a36Sopenharmony_ci interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 73662306a36Sopenharmony_ci clock-names = "ftm_sys", "ftm_ext", 73762306a36Sopenharmony_ci "ftm_fix", "ftm_cnt_clk_en"; 73862306a36Sopenharmony_ci clocks = <&clks IMX7D_FLEXTIMER1_ROOT_CLK>, 73962306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER1_ROOT_CLK>, 74062306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER1_ROOT_CLK>, 74162306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER1_ROOT_CLK>; 74262306a36Sopenharmony_ci status = "disabled"; 74362306a36Sopenharmony_ci }; 74462306a36Sopenharmony_ci 74562306a36Sopenharmony_ci ftm2: pwm@30650000 { 74662306a36Sopenharmony_ci compatible = "fsl,vf610-ftm-pwm"; 74762306a36Sopenharmony_ci reg = <0x30650000 0x10000>; 74862306a36Sopenharmony_ci #pwm-cells = <3>; 74962306a36Sopenharmony_ci interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 75062306a36Sopenharmony_ci clock-names = "ftm_sys", "ftm_ext", 75162306a36Sopenharmony_ci "ftm_fix", "ftm_cnt_clk_en"; 75262306a36Sopenharmony_ci clocks = <&clks IMX7D_FLEXTIMER2_ROOT_CLK>, 75362306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER2_ROOT_CLK>, 75462306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER2_ROOT_CLK>, 75562306a36Sopenharmony_ci <&clks IMX7D_FLEXTIMER2_ROOT_CLK>; 75662306a36Sopenharmony_ci status = "disabled"; 75762306a36Sopenharmony_ci }; 75862306a36Sopenharmony_ci 75962306a36Sopenharmony_ci pwm1: pwm@30660000 { 76062306a36Sopenharmony_ci compatible = "fsl,imx7d-pwm", "fsl,imx27-pwm"; 76162306a36Sopenharmony_ci reg = <0x30660000 0x10000>; 76262306a36Sopenharmony_ci interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 76362306a36Sopenharmony_ci clocks = <&clks IMX7D_PWM1_ROOT_CLK>, 76462306a36Sopenharmony_ci <&clks IMX7D_PWM1_ROOT_CLK>; 76562306a36Sopenharmony_ci clock-names = "ipg", "per"; 76662306a36Sopenharmony_ci #pwm-cells = <3>; 76762306a36Sopenharmony_ci status = "disabled"; 76862306a36Sopenharmony_ci }; 76962306a36Sopenharmony_ci 77062306a36Sopenharmony_ci pwm2: pwm@30670000 { 77162306a36Sopenharmony_ci compatible = "fsl,imx7d-pwm", "fsl,imx27-pwm"; 77262306a36Sopenharmony_ci reg = <0x30670000 0x10000>; 77362306a36Sopenharmony_ci interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 77462306a36Sopenharmony_ci clocks = <&clks IMX7D_PWM2_ROOT_CLK>, 77562306a36Sopenharmony_ci <&clks IMX7D_PWM2_ROOT_CLK>; 77662306a36Sopenharmony_ci clock-names = "ipg", "per"; 77762306a36Sopenharmony_ci #pwm-cells = <3>; 77862306a36Sopenharmony_ci status = "disabled"; 77962306a36Sopenharmony_ci }; 78062306a36Sopenharmony_ci 78162306a36Sopenharmony_ci pwm3: pwm@30680000 { 78262306a36Sopenharmony_ci compatible = "fsl,imx7d-pwm", "fsl,imx27-pwm"; 78362306a36Sopenharmony_ci reg = <0x30680000 0x10000>; 78462306a36Sopenharmony_ci interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 78562306a36Sopenharmony_ci clocks = <&clks IMX7D_PWM3_ROOT_CLK>, 78662306a36Sopenharmony_ci <&clks IMX7D_PWM3_ROOT_CLK>; 78762306a36Sopenharmony_ci clock-names = "ipg", "per"; 78862306a36Sopenharmony_ci #pwm-cells = <3>; 78962306a36Sopenharmony_ci status = "disabled"; 79062306a36Sopenharmony_ci }; 79162306a36Sopenharmony_ci 79262306a36Sopenharmony_ci pwm4: pwm@30690000 { 79362306a36Sopenharmony_ci compatible = "fsl,imx7d-pwm", "fsl,imx27-pwm"; 79462306a36Sopenharmony_ci reg = <0x30690000 0x10000>; 79562306a36Sopenharmony_ci interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 79662306a36Sopenharmony_ci clocks = <&clks IMX7D_PWM4_ROOT_CLK>, 79762306a36Sopenharmony_ci <&clks IMX7D_PWM4_ROOT_CLK>; 79862306a36Sopenharmony_ci clock-names = "ipg", "per"; 79962306a36Sopenharmony_ci #pwm-cells = <3>; 80062306a36Sopenharmony_ci status = "disabled"; 80162306a36Sopenharmony_ci }; 80262306a36Sopenharmony_ci 80362306a36Sopenharmony_ci csi: csi@30710000 { 80462306a36Sopenharmony_ci compatible = "fsl,imx7-csi"; 80562306a36Sopenharmony_ci reg = <0x30710000 0x10000>; 80662306a36Sopenharmony_ci interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 80762306a36Sopenharmony_ci clocks = <&clks IMX7D_CLK_DUMMY>, 80862306a36Sopenharmony_ci <&clks IMX7D_CSI_MCLK_ROOT_CLK>, 80962306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>; 81062306a36Sopenharmony_ci clock-names = "axi", "mclk", "dcic"; 81162306a36Sopenharmony_ci status = "disabled"; 81262306a36Sopenharmony_ci 81362306a36Sopenharmony_ci port { 81462306a36Sopenharmony_ci csi_from_csi_mux: endpoint { 81562306a36Sopenharmony_ci remote-endpoint = <&csi_mux_to_csi>; 81662306a36Sopenharmony_ci }; 81762306a36Sopenharmony_ci }; 81862306a36Sopenharmony_ci }; 81962306a36Sopenharmony_ci 82062306a36Sopenharmony_ci lcdif: lcdif@30730000 { 82162306a36Sopenharmony_ci compatible = "fsl,imx7d-lcdif", "fsl,imx6sx-lcdif"; 82262306a36Sopenharmony_ci reg = <0x30730000 0x10000>; 82362306a36Sopenharmony_ci interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 82462306a36Sopenharmony_ci clocks = <&clks IMX7D_LCDIF_PIXEL_ROOT_CLK>, 82562306a36Sopenharmony_ci <&clks IMX7D_LCDIF_PIXEL_ROOT_CLK>; 82662306a36Sopenharmony_ci clock-names = "pix", "axi"; 82762306a36Sopenharmony_ci status = "disabled"; 82862306a36Sopenharmony_ci }; 82962306a36Sopenharmony_ci 83062306a36Sopenharmony_ci mipi_csi: mipi-csi@30750000 { 83162306a36Sopenharmony_ci compatible = "fsl,imx7-mipi-csi2"; 83262306a36Sopenharmony_ci reg = <0x30750000 0x10000>; 83362306a36Sopenharmony_ci interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 83462306a36Sopenharmony_ci clocks = <&clks IMX7D_IPG_ROOT_CLK>, 83562306a36Sopenharmony_ci <&clks IMX7D_MIPI_CSI_ROOT_CLK>, 83662306a36Sopenharmony_ci <&clks IMX7D_MIPI_DPHY_ROOT_CLK>; 83762306a36Sopenharmony_ci clock-names = "pclk", "wrap", "phy"; 83862306a36Sopenharmony_ci power-domains = <&pgc_mipi_phy>; 83962306a36Sopenharmony_ci phy-supply = <®_1p0d>; 84062306a36Sopenharmony_ci resets = <&src IMX7_RESET_MIPI_PHY_MRST>; 84162306a36Sopenharmony_ci status = "disabled"; 84262306a36Sopenharmony_ci 84362306a36Sopenharmony_ci ports { 84462306a36Sopenharmony_ci #address-cells = <1>; 84562306a36Sopenharmony_ci #size-cells = <0>; 84662306a36Sopenharmony_ci 84762306a36Sopenharmony_ci port@0 { 84862306a36Sopenharmony_ci reg = <0>; 84962306a36Sopenharmony_ci }; 85062306a36Sopenharmony_ci 85162306a36Sopenharmony_ci port@1 { 85262306a36Sopenharmony_ci reg = <1>; 85362306a36Sopenharmony_ci 85462306a36Sopenharmony_ci mipi_vc0_to_csi_mux: endpoint { 85562306a36Sopenharmony_ci remote-endpoint = <&csi_mux_from_mipi_vc0>; 85662306a36Sopenharmony_ci }; 85762306a36Sopenharmony_ci }; 85862306a36Sopenharmony_ci }; 85962306a36Sopenharmony_ci }; 86062306a36Sopenharmony_ci }; 86162306a36Sopenharmony_ci 86262306a36Sopenharmony_ci aips3: bus@30800000 { 86362306a36Sopenharmony_ci compatible = "fsl,aips-bus", "simple-bus"; 86462306a36Sopenharmony_ci #address-cells = <1>; 86562306a36Sopenharmony_ci #size-cells = <1>; 86662306a36Sopenharmony_ci reg = <0x30800000 0x400000>; 86762306a36Sopenharmony_ci ranges; 86862306a36Sopenharmony_ci 86962306a36Sopenharmony_ci spba-bus@30800000 { 87062306a36Sopenharmony_ci compatible = "fsl,spba-bus", "simple-bus"; 87162306a36Sopenharmony_ci #address-cells = <1>; 87262306a36Sopenharmony_ci #size-cells = <1>; 87362306a36Sopenharmony_ci reg = <0x30800000 0x100000>; 87462306a36Sopenharmony_ci ranges; 87562306a36Sopenharmony_ci 87662306a36Sopenharmony_ci ecspi1: spi@30820000 { 87762306a36Sopenharmony_ci #address-cells = <1>; 87862306a36Sopenharmony_ci #size-cells = <0>; 87962306a36Sopenharmony_ci compatible = "fsl,imx7d-ecspi", "fsl,imx51-ecspi"; 88062306a36Sopenharmony_ci reg = <0x30820000 0x10000>; 88162306a36Sopenharmony_ci interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 88262306a36Sopenharmony_ci clocks = <&clks IMX7D_ECSPI1_ROOT_CLK>, 88362306a36Sopenharmony_ci <&clks IMX7D_ECSPI1_ROOT_CLK>; 88462306a36Sopenharmony_ci clock-names = "ipg", "per"; 88562306a36Sopenharmony_ci status = "disabled"; 88662306a36Sopenharmony_ci }; 88762306a36Sopenharmony_ci 88862306a36Sopenharmony_ci ecspi2: spi@30830000 { 88962306a36Sopenharmony_ci #address-cells = <1>; 89062306a36Sopenharmony_ci #size-cells = <0>; 89162306a36Sopenharmony_ci compatible = "fsl,imx7d-ecspi", "fsl,imx51-ecspi"; 89262306a36Sopenharmony_ci reg = <0x30830000 0x10000>; 89362306a36Sopenharmony_ci interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 89462306a36Sopenharmony_ci clocks = <&clks IMX7D_ECSPI2_ROOT_CLK>, 89562306a36Sopenharmony_ci <&clks IMX7D_ECSPI2_ROOT_CLK>; 89662306a36Sopenharmony_ci clock-names = "ipg", "per"; 89762306a36Sopenharmony_ci status = "disabled"; 89862306a36Sopenharmony_ci }; 89962306a36Sopenharmony_ci 90062306a36Sopenharmony_ci ecspi3: spi@30840000 { 90162306a36Sopenharmony_ci #address-cells = <1>; 90262306a36Sopenharmony_ci #size-cells = <0>; 90362306a36Sopenharmony_ci compatible = "fsl,imx7d-ecspi", "fsl,imx51-ecspi"; 90462306a36Sopenharmony_ci reg = <0x30840000 0x10000>; 90562306a36Sopenharmony_ci interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 90662306a36Sopenharmony_ci clocks = <&clks IMX7D_ECSPI3_ROOT_CLK>, 90762306a36Sopenharmony_ci <&clks IMX7D_ECSPI3_ROOT_CLK>; 90862306a36Sopenharmony_ci clock-names = "ipg", "per"; 90962306a36Sopenharmony_ci status = "disabled"; 91062306a36Sopenharmony_ci }; 91162306a36Sopenharmony_ci 91262306a36Sopenharmony_ci uart1: serial@30860000 { 91362306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 91462306a36Sopenharmony_ci "fsl,imx6q-uart"; 91562306a36Sopenharmony_ci reg = <0x30860000 0x10000>; 91662306a36Sopenharmony_ci interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 91762306a36Sopenharmony_ci clocks = <&clks IMX7D_UART1_ROOT_CLK>, 91862306a36Sopenharmony_ci <&clks IMX7D_UART1_ROOT_CLK>; 91962306a36Sopenharmony_ci clock-names = "ipg", "per"; 92062306a36Sopenharmony_ci status = "disabled"; 92162306a36Sopenharmony_ci }; 92262306a36Sopenharmony_ci 92362306a36Sopenharmony_ci uart2: serial@30890000 { 92462306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 92562306a36Sopenharmony_ci "fsl,imx6q-uart"; 92662306a36Sopenharmony_ci reg = <0x30890000 0x10000>; 92762306a36Sopenharmony_ci interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 92862306a36Sopenharmony_ci clocks = <&clks IMX7D_UART2_ROOT_CLK>, 92962306a36Sopenharmony_ci <&clks IMX7D_UART2_ROOT_CLK>; 93062306a36Sopenharmony_ci clock-names = "ipg", "per"; 93162306a36Sopenharmony_ci status = "disabled"; 93262306a36Sopenharmony_ci }; 93362306a36Sopenharmony_ci 93462306a36Sopenharmony_ci uart3: serial@30880000 { 93562306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 93662306a36Sopenharmony_ci "fsl,imx6q-uart"; 93762306a36Sopenharmony_ci reg = <0x30880000 0x10000>; 93862306a36Sopenharmony_ci interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 93962306a36Sopenharmony_ci clocks = <&clks IMX7D_UART3_ROOT_CLK>, 94062306a36Sopenharmony_ci <&clks IMX7D_UART3_ROOT_CLK>; 94162306a36Sopenharmony_ci clock-names = "ipg", "per"; 94262306a36Sopenharmony_ci status = "disabled"; 94362306a36Sopenharmony_ci }; 94462306a36Sopenharmony_ci 94562306a36Sopenharmony_ci sai1: sai@308a0000 { 94662306a36Sopenharmony_ci #sound-dai-cells = <0>; 94762306a36Sopenharmony_ci compatible = "fsl,imx7d-sai", "fsl,imx6sx-sai"; 94862306a36Sopenharmony_ci reg = <0x308a0000 0x10000>; 94962306a36Sopenharmony_ci interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 95062306a36Sopenharmony_ci clocks = <&clks IMX7D_SAI1_IPG_CLK>, 95162306a36Sopenharmony_ci <&clks IMX7D_SAI1_ROOT_CLK>, 95262306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>, 95362306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>; 95462306a36Sopenharmony_ci clock-names = "bus", "mclk1", "mclk2", "mclk3"; 95562306a36Sopenharmony_ci dma-names = "rx", "tx"; 95662306a36Sopenharmony_ci dmas = <&sdma 8 24 0>, <&sdma 9 24 0>; 95762306a36Sopenharmony_ci status = "disabled"; 95862306a36Sopenharmony_ci }; 95962306a36Sopenharmony_ci 96062306a36Sopenharmony_ci sai2: sai@308b0000 { 96162306a36Sopenharmony_ci #sound-dai-cells = <0>; 96262306a36Sopenharmony_ci compatible = "fsl,imx7d-sai", "fsl,imx6sx-sai"; 96362306a36Sopenharmony_ci reg = <0x308b0000 0x10000>; 96462306a36Sopenharmony_ci interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 96562306a36Sopenharmony_ci clocks = <&clks IMX7D_SAI2_IPG_CLK>, 96662306a36Sopenharmony_ci <&clks IMX7D_SAI2_ROOT_CLK>, 96762306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>, 96862306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>; 96962306a36Sopenharmony_ci clock-names = "bus", "mclk1", "mclk2", "mclk3"; 97062306a36Sopenharmony_ci dma-names = "rx", "tx"; 97162306a36Sopenharmony_ci dmas = <&sdma 10 24 0>, <&sdma 11 24 0>; 97262306a36Sopenharmony_ci status = "disabled"; 97362306a36Sopenharmony_ci }; 97462306a36Sopenharmony_ci 97562306a36Sopenharmony_ci sai3: sai@308c0000 { 97662306a36Sopenharmony_ci #sound-dai-cells = <0>; 97762306a36Sopenharmony_ci compatible = "fsl,imx7d-sai", "fsl,imx6sx-sai"; 97862306a36Sopenharmony_ci reg = <0x308c0000 0x10000>; 97962306a36Sopenharmony_ci interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 98062306a36Sopenharmony_ci clocks = <&clks IMX7D_SAI3_IPG_CLK>, 98162306a36Sopenharmony_ci <&clks IMX7D_SAI3_ROOT_CLK>, 98262306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>, 98362306a36Sopenharmony_ci <&clks IMX7D_CLK_DUMMY>; 98462306a36Sopenharmony_ci clock-names = "bus", "mclk1", "mclk2", "mclk3"; 98562306a36Sopenharmony_ci dma-names = "rx", "tx"; 98662306a36Sopenharmony_ci dmas = <&sdma 12 24 0>, <&sdma 13 24 0>; 98762306a36Sopenharmony_ci status = "disabled"; 98862306a36Sopenharmony_ci }; 98962306a36Sopenharmony_ci }; 99062306a36Sopenharmony_ci 99162306a36Sopenharmony_ci crypto: crypto@30900000 { 99262306a36Sopenharmony_ci compatible = "fsl,sec-v4.0"; 99362306a36Sopenharmony_ci #address-cells = <1>; 99462306a36Sopenharmony_ci #size-cells = <1>; 99562306a36Sopenharmony_ci reg = <0x30900000 0x40000>; 99662306a36Sopenharmony_ci ranges = <0 0x30900000 0x40000>; 99762306a36Sopenharmony_ci interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 99862306a36Sopenharmony_ci clocks = <&clks IMX7D_CAAM_CLK>, 99962306a36Sopenharmony_ci <&clks IMX7D_AHB_CHANNEL_ROOT_CLK>; 100062306a36Sopenharmony_ci clock-names = "ipg", "aclk"; 100162306a36Sopenharmony_ci 100262306a36Sopenharmony_ci sec_jr0: jr@1000 { 100362306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-job-ring"; 100462306a36Sopenharmony_ci reg = <0x1000 0x1000>; 100562306a36Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 100662306a36Sopenharmony_ci }; 100762306a36Sopenharmony_ci 100862306a36Sopenharmony_ci sec_jr1: jr@2000 { 100962306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-job-ring"; 101062306a36Sopenharmony_ci reg = <0x2000 0x1000>; 101162306a36Sopenharmony_ci interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 101262306a36Sopenharmony_ci }; 101362306a36Sopenharmony_ci 101462306a36Sopenharmony_ci sec_jr2: jr@3000 { 101562306a36Sopenharmony_ci compatible = "fsl,sec-v4.0-job-ring"; 101662306a36Sopenharmony_ci reg = <0x3000 0x1000>; 101762306a36Sopenharmony_ci interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 101862306a36Sopenharmony_ci }; 101962306a36Sopenharmony_ci }; 102062306a36Sopenharmony_ci 102162306a36Sopenharmony_ci flexcan1: can@30a00000 { 102262306a36Sopenharmony_ci compatible = "fsl,imx7d-flexcan", "fsl,imx6q-flexcan"; 102362306a36Sopenharmony_ci reg = <0x30a00000 0x10000>; 102462306a36Sopenharmony_ci interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 102562306a36Sopenharmony_ci clocks = <&clks IMX7D_CLK_DUMMY>, 102662306a36Sopenharmony_ci <&clks IMX7D_CAN1_ROOT_CLK>; 102762306a36Sopenharmony_ci clock-names = "ipg", "per"; 102862306a36Sopenharmony_ci fsl,stop-mode = <&gpr 0x10 1>; 102962306a36Sopenharmony_ci status = "disabled"; 103062306a36Sopenharmony_ci }; 103162306a36Sopenharmony_ci 103262306a36Sopenharmony_ci flexcan2: can@30a10000 { 103362306a36Sopenharmony_ci compatible = "fsl,imx7d-flexcan", "fsl,imx6q-flexcan"; 103462306a36Sopenharmony_ci reg = <0x30a10000 0x10000>; 103562306a36Sopenharmony_ci interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 103662306a36Sopenharmony_ci clocks = <&clks IMX7D_CLK_DUMMY>, 103762306a36Sopenharmony_ci <&clks IMX7D_CAN2_ROOT_CLK>; 103862306a36Sopenharmony_ci clock-names = "ipg", "per"; 103962306a36Sopenharmony_ci fsl,stop-mode = <&gpr 0x10 2>; 104062306a36Sopenharmony_ci status = "disabled"; 104162306a36Sopenharmony_ci }; 104262306a36Sopenharmony_ci 104362306a36Sopenharmony_ci i2c1: i2c@30a20000 { 104462306a36Sopenharmony_ci #address-cells = <1>; 104562306a36Sopenharmony_ci #size-cells = <0>; 104662306a36Sopenharmony_ci compatible = "fsl,imx7d-i2c", "fsl,imx21-i2c"; 104762306a36Sopenharmony_ci reg = <0x30a20000 0x10000>; 104862306a36Sopenharmony_ci interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 104962306a36Sopenharmony_ci clocks = <&clks IMX7D_I2C1_ROOT_CLK>; 105062306a36Sopenharmony_ci status = "disabled"; 105162306a36Sopenharmony_ci }; 105262306a36Sopenharmony_ci 105362306a36Sopenharmony_ci i2c2: i2c@30a30000 { 105462306a36Sopenharmony_ci #address-cells = <1>; 105562306a36Sopenharmony_ci #size-cells = <0>; 105662306a36Sopenharmony_ci compatible = "fsl,imx7d-i2c", "fsl,imx21-i2c"; 105762306a36Sopenharmony_ci reg = <0x30a30000 0x10000>; 105862306a36Sopenharmony_ci interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 105962306a36Sopenharmony_ci clocks = <&clks IMX7D_I2C2_ROOT_CLK>; 106062306a36Sopenharmony_ci status = "disabled"; 106162306a36Sopenharmony_ci }; 106262306a36Sopenharmony_ci 106362306a36Sopenharmony_ci i2c3: i2c@30a40000 { 106462306a36Sopenharmony_ci #address-cells = <1>; 106562306a36Sopenharmony_ci #size-cells = <0>; 106662306a36Sopenharmony_ci compatible = "fsl,imx7d-i2c", "fsl,imx21-i2c"; 106762306a36Sopenharmony_ci reg = <0x30a40000 0x10000>; 106862306a36Sopenharmony_ci interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 106962306a36Sopenharmony_ci clocks = <&clks IMX7D_I2C3_ROOT_CLK>; 107062306a36Sopenharmony_ci status = "disabled"; 107162306a36Sopenharmony_ci }; 107262306a36Sopenharmony_ci 107362306a36Sopenharmony_ci i2c4: i2c@30a50000 { 107462306a36Sopenharmony_ci #address-cells = <1>; 107562306a36Sopenharmony_ci #size-cells = <0>; 107662306a36Sopenharmony_ci compatible = "fsl,imx7d-i2c", "fsl,imx21-i2c"; 107762306a36Sopenharmony_ci reg = <0x30a50000 0x10000>; 107862306a36Sopenharmony_ci interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 107962306a36Sopenharmony_ci clocks = <&clks IMX7D_I2C4_ROOT_CLK>; 108062306a36Sopenharmony_ci status = "disabled"; 108162306a36Sopenharmony_ci }; 108262306a36Sopenharmony_ci 108362306a36Sopenharmony_ci uart4: serial@30a60000 { 108462306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 108562306a36Sopenharmony_ci "fsl,imx6q-uart"; 108662306a36Sopenharmony_ci reg = <0x30a60000 0x10000>; 108762306a36Sopenharmony_ci interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 108862306a36Sopenharmony_ci clocks = <&clks IMX7D_UART4_ROOT_CLK>, 108962306a36Sopenharmony_ci <&clks IMX7D_UART4_ROOT_CLK>; 109062306a36Sopenharmony_ci clock-names = "ipg", "per"; 109162306a36Sopenharmony_ci status = "disabled"; 109262306a36Sopenharmony_ci }; 109362306a36Sopenharmony_ci 109462306a36Sopenharmony_ci uart5: serial@30a70000 { 109562306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 109662306a36Sopenharmony_ci "fsl,imx6q-uart"; 109762306a36Sopenharmony_ci reg = <0x30a70000 0x10000>; 109862306a36Sopenharmony_ci interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 109962306a36Sopenharmony_ci clocks = <&clks IMX7D_UART5_ROOT_CLK>, 110062306a36Sopenharmony_ci <&clks IMX7D_UART5_ROOT_CLK>; 110162306a36Sopenharmony_ci clock-names = "ipg", "per"; 110262306a36Sopenharmony_ci status = "disabled"; 110362306a36Sopenharmony_ci }; 110462306a36Sopenharmony_ci 110562306a36Sopenharmony_ci uart6: serial@30a80000 { 110662306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 110762306a36Sopenharmony_ci "fsl,imx6q-uart"; 110862306a36Sopenharmony_ci reg = <0x30a80000 0x10000>; 110962306a36Sopenharmony_ci interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 111062306a36Sopenharmony_ci clocks = <&clks IMX7D_UART6_ROOT_CLK>, 111162306a36Sopenharmony_ci <&clks IMX7D_UART6_ROOT_CLK>; 111262306a36Sopenharmony_ci clock-names = "ipg", "per"; 111362306a36Sopenharmony_ci status = "disabled"; 111462306a36Sopenharmony_ci }; 111562306a36Sopenharmony_ci 111662306a36Sopenharmony_ci uart7: serial@30a90000 { 111762306a36Sopenharmony_ci compatible = "fsl,imx7d-uart", 111862306a36Sopenharmony_ci "fsl,imx6q-uart"; 111962306a36Sopenharmony_ci reg = <0x30a90000 0x10000>; 112062306a36Sopenharmony_ci interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 112162306a36Sopenharmony_ci clocks = <&clks IMX7D_UART7_ROOT_CLK>, 112262306a36Sopenharmony_ci <&clks IMX7D_UART7_ROOT_CLK>; 112362306a36Sopenharmony_ci clock-names = "ipg", "per"; 112462306a36Sopenharmony_ci status = "disabled"; 112562306a36Sopenharmony_ci }; 112662306a36Sopenharmony_ci 112762306a36Sopenharmony_ci mu0a: mailbox@30aa0000 { 112862306a36Sopenharmony_ci compatible = "fsl,imx7s-mu", "fsl,imx6sx-mu"; 112962306a36Sopenharmony_ci reg = <0x30aa0000 0x10000>; 113062306a36Sopenharmony_ci interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 113162306a36Sopenharmony_ci clocks = <&clks IMX7D_MU_ROOT_CLK>; 113262306a36Sopenharmony_ci #mbox-cells = <2>; 113362306a36Sopenharmony_ci status = "disabled"; 113462306a36Sopenharmony_ci }; 113562306a36Sopenharmony_ci 113662306a36Sopenharmony_ci mu0b: mailbox@30ab0000 { 113762306a36Sopenharmony_ci compatible = "fsl,imx7s-mu", "fsl,imx6sx-mu"; 113862306a36Sopenharmony_ci reg = <0x30ab0000 0x10000>; 113962306a36Sopenharmony_ci interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 114062306a36Sopenharmony_ci clocks = <&clks IMX7D_MU_ROOT_CLK>; 114162306a36Sopenharmony_ci #mbox-cells = <2>; 114262306a36Sopenharmony_ci fsl,mu-side-b; 114362306a36Sopenharmony_ci status = "disabled"; 114462306a36Sopenharmony_ci }; 114562306a36Sopenharmony_ci 114662306a36Sopenharmony_ci usbotg1: usb@30b10000 { 114762306a36Sopenharmony_ci compatible = "fsl,imx7d-usb", "fsl,imx27-usb"; 114862306a36Sopenharmony_ci reg = <0x30b10000 0x200>; 114962306a36Sopenharmony_ci interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 115062306a36Sopenharmony_ci clocks = <&clks IMX7D_USB_CTRL_CLK>; 115162306a36Sopenharmony_ci fsl,usbphy = <&usbphynop1>; 115262306a36Sopenharmony_ci fsl,usbmisc = <&usbmisc1 0>; 115362306a36Sopenharmony_ci phy-clkgate-delay-us = <400>; 115462306a36Sopenharmony_ci status = "disabled"; 115562306a36Sopenharmony_ci }; 115662306a36Sopenharmony_ci 115762306a36Sopenharmony_ci usbh: usb@30b30000 { 115862306a36Sopenharmony_ci compatible = "fsl,imx7d-usb", "fsl,imx27-usb"; 115962306a36Sopenharmony_ci reg = <0x30b30000 0x200>; 116062306a36Sopenharmony_ci interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 116162306a36Sopenharmony_ci clocks = <&clks IMX7D_USB_CTRL_CLK>; 116262306a36Sopenharmony_ci fsl,usbphy = <&usbphynop3>; 116362306a36Sopenharmony_ci fsl,usbmisc = <&usbmisc3 0>; 116462306a36Sopenharmony_ci phy_type = "hsic"; 116562306a36Sopenharmony_ci dr_mode = "host"; 116662306a36Sopenharmony_ci phy-clkgate-delay-us = <400>; 116762306a36Sopenharmony_ci status = "disabled"; 116862306a36Sopenharmony_ci }; 116962306a36Sopenharmony_ci 117062306a36Sopenharmony_ci usbmisc1: usbmisc@30b10200 { 117162306a36Sopenharmony_ci #index-cells = <1>; 117262306a36Sopenharmony_ci compatible = "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc"; 117362306a36Sopenharmony_ci reg = <0x30b10200 0x200>; 117462306a36Sopenharmony_ci }; 117562306a36Sopenharmony_ci 117662306a36Sopenharmony_ci usbmisc3: usbmisc@30b30200 { 117762306a36Sopenharmony_ci #index-cells = <1>; 117862306a36Sopenharmony_ci compatible = "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc"; 117962306a36Sopenharmony_ci reg = <0x30b30200 0x200>; 118062306a36Sopenharmony_ci }; 118162306a36Sopenharmony_ci 118262306a36Sopenharmony_ci usdhc1: mmc@30b40000 { 118362306a36Sopenharmony_ci compatible = "fsl,imx7d-usdhc", "fsl,imx6sl-usdhc"; 118462306a36Sopenharmony_ci reg = <0x30b40000 0x10000>; 118562306a36Sopenharmony_ci interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 118662306a36Sopenharmony_ci clocks = <&clks IMX7D_IPG_ROOT_CLK>, 118762306a36Sopenharmony_ci <&clks IMX7D_NAND_USDHC_BUS_ROOT_CLK>, 118862306a36Sopenharmony_ci <&clks IMX7D_USDHC1_ROOT_CLK>; 118962306a36Sopenharmony_ci clock-names = "ipg", "ahb", "per"; 119062306a36Sopenharmony_ci bus-width = <4>; 119162306a36Sopenharmony_ci fsl,tuning-step = <2>; 119262306a36Sopenharmony_ci fsl,tuning-start-tap = <20>; 119362306a36Sopenharmony_ci status = "disabled"; 119462306a36Sopenharmony_ci }; 119562306a36Sopenharmony_ci 119662306a36Sopenharmony_ci usdhc2: mmc@30b50000 { 119762306a36Sopenharmony_ci compatible = "fsl,imx7d-usdhc", "fsl,imx6sl-usdhc"; 119862306a36Sopenharmony_ci reg = <0x30b50000 0x10000>; 119962306a36Sopenharmony_ci interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 120062306a36Sopenharmony_ci clocks = <&clks IMX7D_IPG_ROOT_CLK>, 120162306a36Sopenharmony_ci <&clks IMX7D_NAND_USDHC_BUS_ROOT_CLK>, 120262306a36Sopenharmony_ci <&clks IMX7D_USDHC2_ROOT_CLK>; 120362306a36Sopenharmony_ci clock-names = "ipg", "ahb", "per"; 120462306a36Sopenharmony_ci bus-width = <4>; 120562306a36Sopenharmony_ci fsl,tuning-step = <2>; 120662306a36Sopenharmony_ci fsl,tuning-start-tap = <20>; 120762306a36Sopenharmony_ci status = "disabled"; 120862306a36Sopenharmony_ci }; 120962306a36Sopenharmony_ci 121062306a36Sopenharmony_ci usdhc3: mmc@30b60000 { 121162306a36Sopenharmony_ci compatible = "fsl,imx7d-usdhc", "fsl,imx6sl-usdhc"; 121262306a36Sopenharmony_ci reg = <0x30b60000 0x10000>; 121362306a36Sopenharmony_ci interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 121462306a36Sopenharmony_ci clocks = <&clks IMX7D_IPG_ROOT_CLK>, 121562306a36Sopenharmony_ci <&clks IMX7D_NAND_USDHC_BUS_ROOT_CLK>, 121662306a36Sopenharmony_ci <&clks IMX7D_USDHC3_ROOT_CLK>; 121762306a36Sopenharmony_ci clock-names = "ipg", "ahb", "per"; 121862306a36Sopenharmony_ci bus-width = <4>; 121962306a36Sopenharmony_ci fsl,tuning-step = <2>; 122062306a36Sopenharmony_ci fsl,tuning-start-tap = <20>; 122162306a36Sopenharmony_ci status = "disabled"; 122262306a36Sopenharmony_ci }; 122362306a36Sopenharmony_ci 122462306a36Sopenharmony_ci qspi: spi@30bb0000 { 122562306a36Sopenharmony_ci compatible = "fsl,imx7d-qspi"; 122662306a36Sopenharmony_ci reg = <0x30bb0000 0x10000>, <0x60000000 0x10000000>; 122762306a36Sopenharmony_ci reg-names = "QuadSPI", "QuadSPI-memory"; 122862306a36Sopenharmony_ci #address-cells = <1>; 122962306a36Sopenharmony_ci #size-cells = <0>; 123062306a36Sopenharmony_ci interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 123162306a36Sopenharmony_ci clocks = <&clks IMX7D_QSPI_ROOT_CLK>, 123262306a36Sopenharmony_ci <&clks IMX7D_QSPI_ROOT_CLK>; 123362306a36Sopenharmony_ci clock-names = "qspi_en", "qspi"; 123462306a36Sopenharmony_ci status = "disabled"; 123562306a36Sopenharmony_ci }; 123662306a36Sopenharmony_ci 123762306a36Sopenharmony_ci sdma: dma-controller@30bd0000 { 123862306a36Sopenharmony_ci compatible = "fsl,imx7d-sdma", "fsl,imx35-sdma"; 123962306a36Sopenharmony_ci reg = <0x30bd0000 0x10000>; 124062306a36Sopenharmony_ci interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 124162306a36Sopenharmony_ci clocks = <&clks IMX7D_IPG_ROOT_CLK>, 124262306a36Sopenharmony_ci <&clks IMX7D_SDMA_CORE_CLK>; 124362306a36Sopenharmony_ci clock-names = "ipg", "ahb"; 124462306a36Sopenharmony_ci #dma-cells = <3>; 124562306a36Sopenharmony_ci fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; 124662306a36Sopenharmony_ci }; 124762306a36Sopenharmony_ci 124862306a36Sopenharmony_ci fec1: ethernet@30be0000 { 124962306a36Sopenharmony_ci compatible = "fsl,imx7d-fec", "fsl,imx6sx-fec"; 125062306a36Sopenharmony_ci reg = <0x30be0000 0x10000>; 125162306a36Sopenharmony_ci interrupt-names = "int0", "int1", "int2", "pps"; 125262306a36Sopenharmony_ci interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 125362306a36Sopenharmony_ci <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 125462306a36Sopenharmony_ci <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 125562306a36Sopenharmony_ci <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 125662306a36Sopenharmony_ci clocks = <&clks IMX7D_ENET1_IPG_ROOT_CLK>, 125762306a36Sopenharmony_ci <&clks IMX7D_ENET_AXI_ROOT_CLK>, 125862306a36Sopenharmony_ci <&clks IMX7D_ENET1_TIME_ROOT_CLK>, 125962306a36Sopenharmony_ci <&clks IMX7D_PLL_ENET_MAIN_125M_CLK>, 126062306a36Sopenharmony_ci <&clks IMX7D_ENET_PHY_REF_ROOT_CLK>; 126162306a36Sopenharmony_ci clock-names = "ipg", "ahb", "ptp", 126262306a36Sopenharmony_ci "enet_clk_ref", "enet_out"; 126362306a36Sopenharmony_ci fsl,num-tx-queues = <3>; 126462306a36Sopenharmony_ci fsl,num-rx-queues = <3>; 126562306a36Sopenharmony_ci fsl,stop-mode = <&gpr 0x10 3>; 126662306a36Sopenharmony_ci status = "disabled"; 126762306a36Sopenharmony_ci }; 126862306a36Sopenharmony_ci }; 126962306a36Sopenharmony_ci 127062306a36Sopenharmony_ci dma_apbh: dma-controller@33000000 { 127162306a36Sopenharmony_ci compatible = "fsl,imx7d-dma-apbh", "fsl,imx28-dma-apbh"; 127262306a36Sopenharmony_ci reg = <0x33000000 0x2000>; 127362306a36Sopenharmony_ci interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 127462306a36Sopenharmony_ci <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 127562306a36Sopenharmony_ci <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 127662306a36Sopenharmony_ci <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 127762306a36Sopenharmony_ci #dma-cells = <1>; 127862306a36Sopenharmony_ci dma-channels = <4>; 127962306a36Sopenharmony_ci clocks = <&clks IMX7D_NAND_USDHC_BUS_RAWNAND_CLK>; 128062306a36Sopenharmony_ci }; 128162306a36Sopenharmony_ci 128262306a36Sopenharmony_ci gpmi: nand-controller@33002000 { 128362306a36Sopenharmony_ci compatible = "fsl,imx7d-gpmi-nand"; 128462306a36Sopenharmony_ci #address-cells = <1>; 128562306a36Sopenharmony_ci #size-cells = <0>; 128662306a36Sopenharmony_ci reg = <0x33002000 0x2000>, <0x33004000 0x4000>; 128762306a36Sopenharmony_ci reg-names = "gpmi-nand", "bch"; 128862306a36Sopenharmony_ci interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 128962306a36Sopenharmony_ci interrupt-names = "bch"; 129062306a36Sopenharmony_ci clocks = <&clks IMX7D_NAND_RAWNAND_CLK>, 129162306a36Sopenharmony_ci <&clks IMX7D_NAND_USDHC_BUS_RAWNAND_CLK>; 129262306a36Sopenharmony_ci clock-names = "gpmi_io", "gpmi_bch_apb"; 129362306a36Sopenharmony_ci dmas = <&dma_apbh 0>; 129462306a36Sopenharmony_ci dma-names = "rx-tx"; 129562306a36Sopenharmony_ci status = "disabled"; 129662306a36Sopenharmony_ci assigned-clocks = <&clks IMX7D_NAND_ROOT_SRC>; 129762306a36Sopenharmony_ci assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_500M_CLK>; 129862306a36Sopenharmony_ci }; 129962306a36Sopenharmony_ci }; 130062306a36Sopenharmony_ci}; 1301