1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun// 3*4882a593Smuzhiyun// Copyright 2015 Freescale Semiconductor, Inc. 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun#include <dt-bindings/clock/imx6ul-clock.h> 6*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 7*4882a593Smuzhiyun#include <dt-bindings/input/input.h> 8*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 9*4882a593Smuzhiyun#include "imx6ul-pinfunc.h" 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun/ { 12*4882a593Smuzhiyun #address-cells = <1>; 13*4882a593Smuzhiyun #size-cells = <1>; 14*4882a593Smuzhiyun /* 15*4882a593Smuzhiyun * The decompressor and also some bootloaders rely on a 16*4882a593Smuzhiyun * pre-existing /chosen node to be available to insert the 17*4882a593Smuzhiyun * command line and merge other ATAGS info. 18*4882a593Smuzhiyun */ 19*4882a593Smuzhiyun chosen {}; 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun aliases { 22*4882a593Smuzhiyun ethernet0 = &fec1; 23*4882a593Smuzhiyun ethernet1 = &fec2; 24*4882a593Smuzhiyun gpio0 = &gpio1; 25*4882a593Smuzhiyun gpio1 = &gpio2; 26*4882a593Smuzhiyun gpio2 = &gpio3; 27*4882a593Smuzhiyun gpio3 = &gpio4; 28*4882a593Smuzhiyun gpio4 = &gpio5; 29*4882a593Smuzhiyun i2c0 = &i2c1; 30*4882a593Smuzhiyun i2c1 = &i2c2; 31*4882a593Smuzhiyun i2c2 = &i2c3; 32*4882a593Smuzhiyun i2c3 = &i2c4; 33*4882a593Smuzhiyun mmc0 = &usdhc1; 34*4882a593Smuzhiyun mmc1 = &usdhc2; 35*4882a593Smuzhiyun serial0 = &uart1; 36*4882a593Smuzhiyun serial1 = &uart2; 37*4882a593Smuzhiyun serial2 = &uart3; 38*4882a593Smuzhiyun serial3 = &uart4; 39*4882a593Smuzhiyun serial4 = &uart5; 40*4882a593Smuzhiyun serial5 = &uart6; 41*4882a593Smuzhiyun serial6 = &uart7; 42*4882a593Smuzhiyun serial7 = &uart8; 43*4882a593Smuzhiyun sai1 = &sai1; 44*4882a593Smuzhiyun sai2 = &sai2; 45*4882a593Smuzhiyun sai3 = &sai3; 46*4882a593Smuzhiyun spi0 = &ecspi1; 47*4882a593Smuzhiyun spi1 = &ecspi2; 48*4882a593Smuzhiyun spi2 = &ecspi3; 49*4882a593Smuzhiyun spi3 = &ecspi4; 50*4882a593Smuzhiyun usbphy0 = &usbphy1; 51*4882a593Smuzhiyun usbphy1 = &usbphy2; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun cpus { 55*4882a593Smuzhiyun #address-cells = <1>; 56*4882a593Smuzhiyun #size-cells = <0>; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun cpu0: cpu@0 { 59*4882a593Smuzhiyun compatible = "arm,cortex-a7"; 60*4882a593Smuzhiyun device_type = "cpu"; 61*4882a593Smuzhiyun reg = <0>; 62*4882a593Smuzhiyun clock-frequency = <696000000>; 63*4882a593Smuzhiyun clock-latency = <61036>; /* two CLK32 periods */ 64*4882a593Smuzhiyun #cooling-cells = <2>; 65*4882a593Smuzhiyun operating-points = 66*4882a593Smuzhiyun /* kHz uV */ 67*4882a593Smuzhiyun <696000 1275000>, 68*4882a593Smuzhiyun <528000 1175000>, 69*4882a593Smuzhiyun <396000 1025000>, 70*4882a593Smuzhiyun <198000 950000>; 71*4882a593Smuzhiyun fsl,soc-operating-points = 72*4882a593Smuzhiyun /* KHz uV */ 73*4882a593Smuzhiyun <696000 1275000>, 74*4882a593Smuzhiyun <528000 1175000>, 75*4882a593Smuzhiyun <396000 1175000>, 76*4882a593Smuzhiyun <198000 1175000>; 77*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ARM>, 78*4882a593Smuzhiyun <&clks IMX6UL_CLK_PLL2_BUS>, 79*4882a593Smuzhiyun <&clks IMX6UL_CLK_PLL2_PFD2>, 80*4882a593Smuzhiyun <&clks IMX6UL_CA7_SECONDARY_SEL>, 81*4882a593Smuzhiyun <&clks IMX6UL_CLK_STEP>, 82*4882a593Smuzhiyun <&clks IMX6UL_CLK_PLL1_SW>, 83*4882a593Smuzhiyun <&clks IMX6UL_CLK_PLL1_SYS>; 84*4882a593Smuzhiyun clock-names = "arm", "pll2_bus", "pll2_pfd2_396m", 85*4882a593Smuzhiyun "secondary_sel", "step", "pll1_sw", 86*4882a593Smuzhiyun "pll1_sys"; 87*4882a593Smuzhiyun arm-supply = <®_arm>; 88*4882a593Smuzhiyun soc-supply = <®_soc>; 89*4882a593Smuzhiyun nvmem-cells = <&cpu_speed_grade>; 90*4882a593Smuzhiyun nvmem-cell-names = "speed_grade"; 91*4882a593Smuzhiyun }; 92*4882a593Smuzhiyun }; 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun timer { 95*4882a593Smuzhiyun compatible = "arm,armv7-timer"; 96*4882a593Smuzhiyun interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 97*4882a593Smuzhiyun <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 98*4882a593Smuzhiyun <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 99*4882a593Smuzhiyun <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>; 100*4882a593Smuzhiyun interrupt-parent = <&intc>; 101*4882a593Smuzhiyun status = "disabled"; 102*4882a593Smuzhiyun }; 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun ckil: clock-cli { 105*4882a593Smuzhiyun compatible = "fixed-clock"; 106*4882a593Smuzhiyun #clock-cells = <0>; 107*4882a593Smuzhiyun clock-frequency = <32768>; 108*4882a593Smuzhiyun clock-output-names = "ckil"; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun osc: clock-osc { 112*4882a593Smuzhiyun compatible = "fixed-clock"; 113*4882a593Smuzhiyun #clock-cells = <0>; 114*4882a593Smuzhiyun clock-frequency = <24000000>; 115*4882a593Smuzhiyun clock-output-names = "osc"; 116*4882a593Smuzhiyun }; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun ipp_di0: clock-di0 { 119*4882a593Smuzhiyun compatible = "fixed-clock"; 120*4882a593Smuzhiyun #clock-cells = <0>; 121*4882a593Smuzhiyun clock-frequency = <0>; 122*4882a593Smuzhiyun clock-output-names = "ipp_di0"; 123*4882a593Smuzhiyun }; 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun ipp_di1: clock-di1 { 126*4882a593Smuzhiyun compatible = "fixed-clock"; 127*4882a593Smuzhiyun #clock-cells = <0>; 128*4882a593Smuzhiyun clock-frequency = <0>; 129*4882a593Smuzhiyun clock-output-names = "ipp_di1"; 130*4882a593Smuzhiyun }; 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun pmu { 133*4882a593Smuzhiyun compatible = "arm,cortex-a7-pmu"; 134*4882a593Smuzhiyun interrupt-parent = <&gpc>; 135*4882a593Smuzhiyun interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 136*4882a593Smuzhiyun }; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun soc { 139*4882a593Smuzhiyun #address-cells = <1>; 140*4882a593Smuzhiyun #size-cells = <1>; 141*4882a593Smuzhiyun compatible = "simple-bus"; 142*4882a593Smuzhiyun interrupt-parent = <&gpc>; 143*4882a593Smuzhiyun ranges; 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun ocram: sram@900000 { 146*4882a593Smuzhiyun compatible = "mmio-sram"; 147*4882a593Smuzhiyun reg = <0x00900000 0x20000>; 148*4882a593Smuzhiyun ranges = <0 0x00900000 0x20000>; 149*4882a593Smuzhiyun #address-cells = <1>; 150*4882a593Smuzhiyun #size-cells = <1>; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun intc: interrupt-controller@a01000 { 154*4882a593Smuzhiyun compatible = "arm,gic-400", "arm,cortex-a7-gic"; 155*4882a593Smuzhiyun interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_HIGH)>; 156*4882a593Smuzhiyun #interrupt-cells = <3>; 157*4882a593Smuzhiyun interrupt-controller; 158*4882a593Smuzhiyun interrupt-parent = <&intc>; 159*4882a593Smuzhiyun reg = <0x00a01000 0x1000>, 160*4882a593Smuzhiyun <0x00a02000 0x2000>, 161*4882a593Smuzhiyun <0x00a04000 0x2000>, 162*4882a593Smuzhiyun <0x00a06000 0x2000>; 163*4882a593Smuzhiyun }; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun dma_apbh: dma-apbh@1804000 { 166*4882a593Smuzhiyun compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh"; 167*4882a593Smuzhiyun reg = <0x01804000 0x2000>; 168*4882a593Smuzhiyun interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>, 169*4882a593Smuzhiyun <0 13 IRQ_TYPE_LEVEL_HIGH>, 170*4882a593Smuzhiyun <0 13 IRQ_TYPE_LEVEL_HIGH>, 171*4882a593Smuzhiyun <0 13 IRQ_TYPE_LEVEL_HIGH>; 172*4882a593Smuzhiyun interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3"; 173*4882a593Smuzhiyun #dma-cells = <1>; 174*4882a593Smuzhiyun dma-channels = <4>; 175*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_APBHDMA>; 176*4882a593Smuzhiyun }; 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun gpmi: nand-controller@1806000 { 179*4882a593Smuzhiyun compatible = "fsl,imx6q-gpmi-nand"; 180*4882a593Smuzhiyun #address-cells = <1>; 181*4882a593Smuzhiyun #size-cells = <1>; 182*4882a593Smuzhiyun reg = <0x01806000 0x2000>, <0x01808000 0x2000>; 183*4882a593Smuzhiyun reg-names = "gpmi-nand", "bch"; 184*4882a593Smuzhiyun interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>; 185*4882a593Smuzhiyun interrupt-names = "bch"; 186*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPMI_IO>, 187*4882a593Smuzhiyun <&clks IMX6UL_CLK_GPMI_APB>, 188*4882a593Smuzhiyun <&clks IMX6UL_CLK_GPMI_BCH>, 189*4882a593Smuzhiyun <&clks IMX6UL_CLK_GPMI_BCH_APB>, 190*4882a593Smuzhiyun <&clks IMX6UL_CLK_PER_BCH>; 191*4882a593Smuzhiyun clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch", 192*4882a593Smuzhiyun "gpmi_bch_apb", "per1_bch"; 193*4882a593Smuzhiyun dmas = <&dma_apbh 0>; 194*4882a593Smuzhiyun dma-names = "rx-tx"; 195*4882a593Smuzhiyun status = "disabled"; 196*4882a593Smuzhiyun }; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun aips1: bus@2000000 { 199*4882a593Smuzhiyun compatible = "fsl,aips-bus", "simple-bus"; 200*4882a593Smuzhiyun #address-cells = <1>; 201*4882a593Smuzhiyun #size-cells = <1>; 202*4882a593Smuzhiyun reg = <0x02000000 0x100000>; 203*4882a593Smuzhiyun ranges; 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun spba-bus@2000000 { 206*4882a593Smuzhiyun compatible = "fsl,spba-bus", "simple-bus"; 207*4882a593Smuzhiyun #address-cells = <1>; 208*4882a593Smuzhiyun #size-cells = <1>; 209*4882a593Smuzhiyun reg = <0x02000000 0x40000>; 210*4882a593Smuzhiyun ranges; 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun ecspi1: spi@2008000 { 213*4882a593Smuzhiyun #address-cells = <1>; 214*4882a593Smuzhiyun #size-cells = <0>; 215*4882a593Smuzhiyun compatible = "fsl,imx6ul-ecspi", "fsl,imx51-ecspi"; 216*4882a593Smuzhiyun reg = <0x02008000 0x4000>; 217*4882a593Smuzhiyun interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 218*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ECSPI1>, 219*4882a593Smuzhiyun <&clks IMX6UL_CLK_ECSPI1>; 220*4882a593Smuzhiyun clock-names = "ipg", "per"; 221*4882a593Smuzhiyun dmas = <&sdma 3 7 1>, <&sdma 4 7 2>; 222*4882a593Smuzhiyun dma-names = "rx", "tx"; 223*4882a593Smuzhiyun status = "disabled"; 224*4882a593Smuzhiyun }; 225*4882a593Smuzhiyun 226*4882a593Smuzhiyun ecspi2: spi@200c000 { 227*4882a593Smuzhiyun #address-cells = <1>; 228*4882a593Smuzhiyun #size-cells = <0>; 229*4882a593Smuzhiyun compatible = "fsl,imx6ul-ecspi", "fsl,imx51-ecspi"; 230*4882a593Smuzhiyun reg = <0x0200c000 0x4000>; 231*4882a593Smuzhiyun interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 232*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ECSPI2>, 233*4882a593Smuzhiyun <&clks IMX6UL_CLK_ECSPI2>; 234*4882a593Smuzhiyun clock-names = "ipg", "per"; 235*4882a593Smuzhiyun dmas = <&sdma 5 7 1>, <&sdma 6 7 2>; 236*4882a593Smuzhiyun dma-names = "rx", "tx"; 237*4882a593Smuzhiyun status = "disabled"; 238*4882a593Smuzhiyun }; 239*4882a593Smuzhiyun 240*4882a593Smuzhiyun ecspi3: spi@2010000 { 241*4882a593Smuzhiyun #address-cells = <1>; 242*4882a593Smuzhiyun #size-cells = <0>; 243*4882a593Smuzhiyun compatible = "fsl,imx6ul-ecspi", "fsl,imx51-ecspi"; 244*4882a593Smuzhiyun reg = <0x02010000 0x4000>; 245*4882a593Smuzhiyun interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 246*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ECSPI3>, 247*4882a593Smuzhiyun <&clks IMX6UL_CLK_ECSPI3>; 248*4882a593Smuzhiyun clock-names = "ipg", "per"; 249*4882a593Smuzhiyun dmas = <&sdma 7 7 1>, <&sdma 8 7 2>; 250*4882a593Smuzhiyun dma-names = "rx", "tx"; 251*4882a593Smuzhiyun status = "disabled"; 252*4882a593Smuzhiyun }; 253*4882a593Smuzhiyun 254*4882a593Smuzhiyun ecspi4: spi@2014000 { 255*4882a593Smuzhiyun #address-cells = <1>; 256*4882a593Smuzhiyun #size-cells = <0>; 257*4882a593Smuzhiyun compatible = "fsl,imx6ul-ecspi", "fsl,imx51-ecspi"; 258*4882a593Smuzhiyun reg = <0x02014000 0x4000>; 259*4882a593Smuzhiyun interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 260*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ECSPI4>, 261*4882a593Smuzhiyun <&clks IMX6UL_CLK_ECSPI4>; 262*4882a593Smuzhiyun clock-names = "ipg", "per"; 263*4882a593Smuzhiyun dmas = <&sdma 9 7 1>, <&sdma 10 7 2>; 264*4882a593Smuzhiyun dma-names = "rx", "tx"; 265*4882a593Smuzhiyun status = "disabled"; 266*4882a593Smuzhiyun }; 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun uart7: serial@2018000 { 269*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 270*4882a593Smuzhiyun "fsl,imx6q-uart"; 271*4882a593Smuzhiyun reg = <0x02018000 0x4000>; 272*4882a593Smuzhiyun interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 273*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART7_IPG>, 274*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART7_SERIAL>; 275*4882a593Smuzhiyun clock-names = "ipg", "per"; 276*4882a593Smuzhiyun status = "disabled"; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun uart1: serial@2020000 { 280*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 281*4882a593Smuzhiyun "fsl,imx6q-uart"; 282*4882a593Smuzhiyun reg = <0x02020000 0x4000>; 283*4882a593Smuzhiyun interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 284*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART1_IPG>, 285*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART1_SERIAL>; 286*4882a593Smuzhiyun clock-names = "ipg", "per"; 287*4882a593Smuzhiyun status = "disabled"; 288*4882a593Smuzhiyun }; 289*4882a593Smuzhiyun 290*4882a593Smuzhiyun uart8: serial@2024000 { 291*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 292*4882a593Smuzhiyun "fsl,imx6q-uart"; 293*4882a593Smuzhiyun reg = <0x02024000 0x4000>; 294*4882a593Smuzhiyun interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 295*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART8_IPG>, 296*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART8_SERIAL>; 297*4882a593Smuzhiyun clock-names = "ipg", "per"; 298*4882a593Smuzhiyun status = "disabled"; 299*4882a593Smuzhiyun }; 300*4882a593Smuzhiyun 301*4882a593Smuzhiyun sai1: sai@2028000 { 302*4882a593Smuzhiyun #sound-dai-cells = <0>; 303*4882a593Smuzhiyun compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai"; 304*4882a593Smuzhiyun reg = <0x02028000 0x4000>; 305*4882a593Smuzhiyun interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 306*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_SAI1_IPG>, 307*4882a593Smuzhiyun <&clks IMX6UL_CLK_SAI1>, 308*4882a593Smuzhiyun <&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>; 309*4882a593Smuzhiyun clock-names = "bus", "mclk1", "mclk2", "mclk3"; 310*4882a593Smuzhiyun dmas = <&sdma 35 24 0>, 311*4882a593Smuzhiyun <&sdma 36 24 0>; 312*4882a593Smuzhiyun dma-names = "rx", "tx"; 313*4882a593Smuzhiyun status = "disabled"; 314*4882a593Smuzhiyun }; 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun sai2: sai@202c000 { 317*4882a593Smuzhiyun #sound-dai-cells = <0>; 318*4882a593Smuzhiyun compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai"; 319*4882a593Smuzhiyun reg = <0x0202c000 0x4000>; 320*4882a593Smuzhiyun interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 321*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_SAI2_IPG>, 322*4882a593Smuzhiyun <&clks IMX6UL_CLK_SAI2>, 323*4882a593Smuzhiyun <&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>; 324*4882a593Smuzhiyun clock-names = "bus", "mclk1", "mclk2", "mclk3"; 325*4882a593Smuzhiyun dmas = <&sdma 37 24 0>, 326*4882a593Smuzhiyun <&sdma 38 24 0>; 327*4882a593Smuzhiyun dma-names = "rx", "tx"; 328*4882a593Smuzhiyun status = "disabled"; 329*4882a593Smuzhiyun }; 330*4882a593Smuzhiyun 331*4882a593Smuzhiyun sai3: sai@2030000 { 332*4882a593Smuzhiyun #sound-dai-cells = <0>; 333*4882a593Smuzhiyun compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai"; 334*4882a593Smuzhiyun reg = <0x02030000 0x4000>; 335*4882a593Smuzhiyun interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 336*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_SAI3_IPG>, 337*4882a593Smuzhiyun <&clks IMX6UL_CLK_SAI3>, 338*4882a593Smuzhiyun <&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>; 339*4882a593Smuzhiyun clock-names = "bus", "mclk1", "mclk2", "mclk3"; 340*4882a593Smuzhiyun dmas = <&sdma 39 24 0>, 341*4882a593Smuzhiyun <&sdma 40 24 0>; 342*4882a593Smuzhiyun dma-names = "rx", "tx"; 343*4882a593Smuzhiyun status = "disabled"; 344*4882a593Smuzhiyun }; 345*4882a593Smuzhiyun 346*4882a593Smuzhiyun asrc: asrc@2034000 { 347*4882a593Smuzhiyun compatible = "fsl,imx6ul-asrc", "fsl,imx53-asrc"; 348*4882a593Smuzhiyun reg = <0x2034000 0x4000>; 349*4882a593Smuzhiyun interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 350*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ASRC_IPG>, 351*4882a593Smuzhiyun <&clks IMX6UL_CLK_ASRC_MEM>, <&clks 0>, 352*4882a593Smuzhiyun <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, 353*4882a593Smuzhiyun <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, 354*4882a593Smuzhiyun <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, 355*4882a593Smuzhiyun <&clks IMX6UL_CLK_SPDIF>, <&clks 0>, <&clks 0>, 356*4882a593Smuzhiyun <&clks IMX6UL_CLK_SPBA>; 357*4882a593Smuzhiyun clock-names = "mem", "ipg", "asrck_0", 358*4882a593Smuzhiyun "asrck_1", "asrck_2", "asrck_3", "asrck_4", 359*4882a593Smuzhiyun "asrck_5", "asrck_6", "asrck_7", "asrck_8", 360*4882a593Smuzhiyun "asrck_9", "asrck_a", "asrck_b", "asrck_c", 361*4882a593Smuzhiyun "asrck_d", "asrck_e", "asrck_f", "spba"; 362*4882a593Smuzhiyun dmas = <&sdma 17 23 1>, <&sdma 18 23 1>, <&sdma 19 23 1>, 363*4882a593Smuzhiyun <&sdma 20 23 1>, <&sdma 21 23 1>, <&sdma 22 23 1>; 364*4882a593Smuzhiyun dma-names = "rxa", "rxb", "rxc", 365*4882a593Smuzhiyun "txa", "txb", "txc"; 366*4882a593Smuzhiyun fsl,asrc-rate = <48000>; 367*4882a593Smuzhiyun fsl,asrc-width = <16>; 368*4882a593Smuzhiyun status = "okay"; 369*4882a593Smuzhiyun }; 370*4882a593Smuzhiyun }; 371*4882a593Smuzhiyun 372*4882a593Smuzhiyun tsc: tsc@2040000 { 373*4882a593Smuzhiyun compatible = "fsl,imx6ul-tsc"; 374*4882a593Smuzhiyun reg = <0x02040000 0x4000>, <0x0219c000 0x4000>; 375*4882a593Smuzhiyun interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 376*4882a593Smuzhiyun <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 377*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_IPG>, 378*4882a593Smuzhiyun <&clks IMX6UL_CLK_ADC2>; 379*4882a593Smuzhiyun clock-names = "tsc", "adc"; 380*4882a593Smuzhiyun status = "disabled"; 381*4882a593Smuzhiyun }; 382*4882a593Smuzhiyun 383*4882a593Smuzhiyun pwm1: pwm@2080000 { 384*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 385*4882a593Smuzhiyun reg = <0x02080000 0x4000>; 386*4882a593Smuzhiyun interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 387*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM1>, 388*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM1>; 389*4882a593Smuzhiyun clock-names = "ipg", "per"; 390*4882a593Smuzhiyun #pwm-cells = <3>; 391*4882a593Smuzhiyun status = "disabled"; 392*4882a593Smuzhiyun }; 393*4882a593Smuzhiyun 394*4882a593Smuzhiyun pwm2: pwm@2084000 { 395*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 396*4882a593Smuzhiyun reg = <0x02084000 0x4000>; 397*4882a593Smuzhiyun interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 398*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM2>, 399*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM2>; 400*4882a593Smuzhiyun clock-names = "ipg", "per"; 401*4882a593Smuzhiyun #pwm-cells = <3>; 402*4882a593Smuzhiyun status = "disabled"; 403*4882a593Smuzhiyun }; 404*4882a593Smuzhiyun 405*4882a593Smuzhiyun pwm3: pwm@2088000 { 406*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 407*4882a593Smuzhiyun reg = <0x02088000 0x4000>; 408*4882a593Smuzhiyun interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 409*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM3>, 410*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM3>; 411*4882a593Smuzhiyun clock-names = "ipg", "per"; 412*4882a593Smuzhiyun #pwm-cells = <3>; 413*4882a593Smuzhiyun status = "disabled"; 414*4882a593Smuzhiyun }; 415*4882a593Smuzhiyun 416*4882a593Smuzhiyun pwm4: pwm@208c000 { 417*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 418*4882a593Smuzhiyun reg = <0x0208c000 0x4000>; 419*4882a593Smuzhiyun interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 420*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM4>, 421*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM4>; 422*4882a593Smuzhiyun clock-names = "ipg", "per"; 423*4882a593Smuzhiyun #pwm-cells = <3>; 424*4882a593Smuzhiyun status = "disabled"; 425*4882a593Smuzhiyun }; 426*4882a593Smuzhiyun 427*4882a593Smuzhiyun can1: flexcan@2090000 { 428*4882a593Smuzhiyun compatible = "fsl,imx6ul-flexcan", "fsl,imx6q-flexcan"; 429*4882a593Smuzhiyun reg = <0x02090000 0x4000>; 430*4882a593Smuzhiyun interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 431*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_CAN1_IPG>, 432*4882a593Smuzhiyun <&clks IMX6UL_CLK_CAN1_SERIAL>; 433*4882a593Smuzhiyun clock-names = "ipg", "per"; 434*4882a593Smuzhiyun fsl,stop-mode = <&gpr 0x10 1 0x10 17>; 435*4882a593Smuzhiyun status = "disabled"; 436*4882a593Smuzhiyun }; 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun can2: flexcan@2094000 { 439*4882a593Smuzhiyun compatible = "fsl,imx6ul-flexcan", "fsl,imx6q-flexcan"; 440*4882a593Smuzhiyun reg = <0x02094000 0x4000>; 441*4882a593Smuzhiyun interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 442*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_CAN2_IPG>, 443*4882a593Smuzhiyun <&clks IMX6UL_CLK_CAN2_SERIAL>; 444*4882a593Smuzhiyun clock-names = "ipg", "per"; 445*4882a593Smuzhiyun fsl,stop-mode = <&gpr 0x10 2 0x10 18>; 446*4882a593Smuzhiyun status = "disabled"; 447*4882a593Smuzhiyun }; 448*4882a593Smuzhiyun 449*4882a593Smuzhiyun gpt1: timer@2098000 { 450*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpt", "fsl,imx6sx-gpt"; 451*4882a593Smuzhiyun reg = <0x02098000 0x4000>; 452*4882a593Smuzhiyun interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 453*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPT1_BUS>, 454*4882a593Smuzhiyun <&clks IMX6UL_CLK_GPT1_SERIAL>; 455*4882a593Smuzhiyun clock-names = "ipg", "per"; 456*4882a593Smuzhiyun }; 457*4882a593Smuzhiyun 458*4882a593Smuzhiyun gpio1: gpio@209c000 { 459*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpio", "fsl,imx35-gpio"; 460*4882a593Smuzhiyun reg = <0x0209c000 0x4000>; 461*4882a593Smuzhiyun interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 462*4882a593Smuzhiyun <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 463*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPIO1>; 464*4882a593Smuzhiyun gpio-controller; 465*4882a593Smuzhiyun #gpio-cells = <2>; 466*4882a593Smuzhiyun interrupt-controller; 467*4882a593Smuzhiyun #interrupt-cells = <2>; 468*4882a593Smuzhiyun gpio-ranges = <&iomuxc 0 23 10>, <&iomuxc 10 17 6>, 469*4882a593Smuzhiyun <&iomuxc 16 33 16>; 470*4882a593Smuzhiyun }; 471*4882a593Smuzhiyun 472*4882a593Smuzhiyun gpio2: gpio@20a0000 { 473*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpio", "fsl,imx35-gpio"; 474*4882a593Smuzhiyun reg = <0x020a0000 0x4000>; 475*4882a593Smuzhiyun interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 476*4882a593Smuzhiyun <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 477*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPIO2>; 478*4882a593Smuzhiyun gpio-controller; 479*4882a593Smuzhiyun #gpio-cells = <2>; 480*4882a593Smuzhiyun interrupt-controller; 481*4882a593Smuzhiyun #interrupt-cells = <2>; 482*4882a593Smuzhiyun gpio-ranges = <&iomuxc 0 49 16>, <&iomuxc 16 111 6>; 483*4882a593Smuzhiyun }; 484*4882a593Smuzhiyun 485*4882a593Smuzhiyun gpio3: gpio@20a4000 { 486*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpio", "fsl,imx35-gpio"; 487*4882a593Smuzhiyun reg = <0x020a4000 0x4000>; 488*4882a593Smuzhiyun interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 489*4882a593Smuzhiyun <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 490*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPIO3>; 491*4882a593Smuzhiyun gpio-controller; 492*4882a593Smuzhiyun #gpio-cells = <2>; 493*4882a593Smuzhiyun interrupt-controller; 494*4882a593Smuzhiyun #interrupt-cells = <2>; 495*4882a593Smuzhiyun gpio-ranges = <&iomuxc 0 65 29>; 496*4882a593Smuzhiyun }; 497*4882a593Smuzhiyun 498*4882a593Smuzhiyun gpio4: gpio@20a8000 { 499*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpio", "fsl,imx35-gpio"; 500*4882a593Smuzhiyun reg = <0x020a8000 0x4000>; 501*4882a593Smuzhiyun interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 502*4882a593Smuzhiyun <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 503*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPIO4>; 504*4882a593Smuzhiyun gpio-controller; 505*4882a593Smuzhiyun #gpio-cells = <2>; 506*4882a593Smuzhiyun interrupt-controller; 507*4882a593Smuzhiyun #interrupt-cells = <2>; 508*4882a593Smuzhiyun gpio-ranges = <&iomuxc 0 94 17>, <&iomuxc 17 117 12>; 509*4882a593Smuzhiyun }; 510*4882a593Smuzhiyun 511*4882a593Smuzhiyun gpio5: gpio@20ac000 { 512*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpio", "fsl,imx35-gpio"; 513*4882a593Smuzhiyun reg = <0x020ac000 0x4000>; 514*4882a593Smuzhiyun interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 515*4882a593Smuzhiyun <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 516*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPIO5>; 517*4882a593Smuzhiyun gpio-controller; 518*4882a593Smuzhiyun #gpio-cells = <2>; 519*4882a593Smuzhiyun interrupt-controller; 520*4882a593Smuzhiyun #interrupt-cells = <2>; 521*4882a593Smuzhiyun gpio-ranges = <&iomuxc 0 7 10>, <&iomuxc 10 5 2>; 522*4882a593Smuzhiyun }; 523*4882a593Smuzhiyun 524*4882a593Smuzhiyun fec2: ethernet@20b4000 { 525*4882a593Smuzhiyun compatible = "fsl,imx6ul-fec", "fsl,imx6q-fec"; 526*4882a593Smuzhiyun reg = <0x020b4000 0x4000>; 527*4882a593Smuzhiyun interrupt-names = "int0", "pps"; 528*4882a593Smuzhiyun interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 529*4882a593Smuzhiyun <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 530*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ENET>, 531*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_AHB>, 532*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_PTP>, 533*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET2_REF_125M>, 534*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET2_REF_125M>; 535*4882a593Smuzhiyun clock-names = "ipg", "ahb", "ptp", 536*4882a593Smuzhiyun "enet_clk_ref", "enet_out"; 537*4882a593Smuzhiyun fsl,num-tx-queues = <1>; 538*4882a593Smuzhiyun fsl,num-rx-queues = <1>; 539*4882a593Smuzhiyun fsl,stop-mode = <&gpr 0x10 4>; 540*4882a593Smuzhiyun status = "disabled"; 541*4882a593Smuzhiyun }; 542*4882a593Smuzhiyun 543*4882a593Smuzhiyun kpp: keypad@20b8000 { 544*4882a593Smuzhiyun compatible = "fsl,imx6ul-kpp", "fsl,imx21-kpp"; 545*4882a593Smuzhiyun reg = <0x020b8000 0x4000>; 546*4882a593Smuzhiyun interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 547*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_KPP>; 548*4882a593Smuzhiyun status = "disabled"; 549*4882a593Smuzhiyun }; 550*4882a593Smuzhiyun 551*4882a593Smuzhiyun wdog1: watchdog@20bc000 { 552*4882a593Smuzhiyun compatible = "fsl,imx6ul-wdt", "fsl,imx21-wdt"; 553*4882a593Smuzhiyun reg = <0x020bc000 0x4000>; 554*4882a593Smuzhiyun interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 555*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_WDOG1>; 556*4882a593Smuzhiyun }; 557*4882a593Smuzhiyun 558*4882a593Smuzhiyun wdog2: watchdog@20c0000 { 559*4882a593Smuzhiyun compatible = "fsl,imx6ul-wdt", "fsl,imx21-wdt"; 560*4882a593Smuzhiyun reg = <0x020c0000 0x4000>; 561*4882a593Smuzhiyun interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 562*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_WDOG2>; 563*4882a593Smuzhiyun status = "disabled"; 564*4882a593Smuzhiyun }; 565*4882a593Smuzhiyun 566*4882a593Smuzhiyun clks: clock-controller@20c4000 { 567*4882a593Smuzhiyun compatible = "fsl,imx6ul-ccm"; 568*4882a593Smuzhiyun reg = <0x020c4000 0x4000>; 569*4882a593Smuzhiyun interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, 570*4882a593Smuzhiyun <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 571*4882a593Smuzhiyun #clock-cells = <1>; 572*4882a593Smuzhiyun clocks = <&ckil>, <&osc>, <&ipp_di0>, <&ipp_di1>; 573*4882a593Smuzhiyun clock-names = "ckil", "osc", "ipp_di0", "ipp_di1"; 574*4882a593Smuzhiyun }; 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun anatop: anatop@20c8000 { 577*4882a593Smuzhiyun compatible = "fsl,imx6ul-anatop", "fsl,imx6q-anatop", 578*4882a593Smuzhiyun "syscon", "simple-mfd"; 579*4882a593Smuzhiyun reg = <0x020c8000 0x1000>; 580*4882a593Smuzhiyun interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, 581*4882a593Smuzhiyun <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, 582*4882a593Smuzhiyun <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 583*4882a593Smuzhiyun 584*4882a593Smuzhiyun reg_3p0: regulator-3p0 { 585*4882a593Smuzhiyun compatible = "fsl,anatop-regulator"; 586*4882a593Smuzhiyun regulator-name = "vdd3p0"; 587*4882a593Smuzhiyun regulator-min-microvolt = <2625000>; 588*4882a593Smuzhiyun regulator-max-microvolt = <3400000>; 589*4882a593Smuzhiyun anatop-reg-offset = <0x120>; 590*4882a593Smuzhiyun anatop-vol-bit-shift = <8>; 591*4882a593Smuzhiyun anatop-vol-bit-width = <5>; 592*4882a593Smuzhiyun anatop-min-bit-val = <0>; 593*4882a593Smuzhiyun anatop-min-voltage = <2625000>; 594*4882a593Smuzhiyun anatop-max-voltage = <3400000>; 595*4882a593Smuzhiyun anatop-enable-bit = <0>; 596*4882a593Smuzhiyun }; 597*4882a593Smuzhiyun 598*4882a593Smuzhiyun reg_arm: regulator-vddcore { 599*4882a593Smuzhiyun compatible = "fsl,anatop-regulator"; 600*4882a593Smuzhiyun regulator-name = "cpu"; 601*4882a593Smuzhiyun regulator-min-microvolt = <725000>; 602*4882a593Smuzhiyun regulator-max-microvolt = <1450000>; 603*4882a593Smuzhiyun regulator-always-on; 604*4882a593Smuzhiyun anatop-reg-offset = <0x140>; 605*4882a593Smuzhiyun anatop-vol-bit-shift = <0>; 606*4882a593Smuzhiyun anatop-vol-bit-width = <5>; 607*4882a593Smuzhiyun anatop-delay-reg-offset = <0x170>; 608*4882a593Smuzhiyun anatop-delay-bit-shift = <24>; 609*4882a593Smuzhiyun anatop-delay-bit-width = <2>; 610*4882a593Smuzhiyun anatop-min-bit-val = <1>; 611*4882a593Smuzhiyun anatop-min-voltage = <725000>; 612*4882a593Smuzhiyun anatop-max-voltage = <1450000>; 613*4882a593Smuzhiyun }; 614*4882a593Smuzhiyun 615*4882a593Smuzhiyun reg_soc: regulator-vddsoc { 616*4882a593Smuzhiyun compatible = "fsl,anatop-regulator"; 617*4882a593Smuzhiyun regulator-name = "vddsoc"; 618*4882a593Smuzhiyun regulator-min-microvolt = <725000>; 619*4882a593Smuzhiyun regulator-max-microvolt = <1450000>; 620*4882a593Smuzhiyun regulator-always-on; 621*4882a593Smuzhiyun anatop-reg-offset = <0x140>; 622*4882a593Smuzhiyun anatop-vol-bit-shift = <18>; 623*4882a593Smuzhiyun anatop-vol-bit-width = <5>; 624*4882a593Smuzhiyun anatop-delay-reg-offset = <0x170>; 625*4882a593Smuzhiyun anatop-delay-bit-shift = <28>; 626*4882a593Smuzhiyun anatop-delay-bit-width = <2>; 627*4882a593Smuzhiyun anatop-min-bit-val = <1>; 628*4882a593Smuzhiyun anatop-min-voltage = <725000>; 629*4882a593Smuzhiyun anatop-max-voltage = <1450000>; 630*4882a593Smuzhiyun }; 631*4882a593Smuzhiyun 632*4882a593Smuzhiyun tempmon: tempmon { 633*4882a593Smuzhiyun compatible = "fsl,imx6ul-tempmon", "fsl,imx6sx-tempmon"; 634*4882a593Smuzhiyun interrupt-parent = <&gpc>; 635*4882a593Smuzhiyun interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 636*4882a593Smuzhiyun fsl,tempmon = <&anatop>; 637*4882a593Smuzhiyun nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>; 638*4882a593Smuzhiyun nvmem-cell-names = "calib", "temp_grade"; 639*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PLL3_USB_OTG>; 640*4882a593Smuzhiyun }; 641*4882a593Smuzhiyun }; 642*4882a593Smuzhiyun 643*4882a593Smuzhiyun usbphy1: usbphy@20c9000 { 644*4882a593Smuzhiyun compatible = "fsl,imx6ul-usbphy", "fsl,imx23-usbphy"; 645*4882a593Smuzhiyun reg = <0x020c9000 0x1000>; 646*4882a593Smuzhiyun interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 647*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USBPHY1>; 648*4882a593Smuzhiyun phy-3p0-supply = <®_3p0>; 649*4882a593Smuzhiyun fsl,anatop = <&anatop>; 650*4882a593Smuzhiyun }; 651*4882a593Smuzhiyun 652*4882a593Smuzhiyun usbphy2: usbphy@20ca000 { 653*4882a593Smuzhiyun compatible = "fsl,imx6ul-usbphy", "fsl,imx23-usbphy"; 654*4882a593Smuzhiyun reg = <0x020ca000 0x1000>; 655*4882a593Smuzhiyun interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 656*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USBPHY2>; 657*4882a593Smuzhiyun phy-3p0-supply = <®_3p0>; 658*4882a593Smuzhiyun fsl,anatop = <&anatop>; 659*4882a593Smuzhiyun }; 660*4882a593Smuzhiyun 661*4882a593Smuzhiyun snvs: snvs@20cc000 { 662*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd"; 663*4882a593Smuzhiyun reg = <0x020cc000 0x4000>; 664*4882a593Smuzhiyun 665*4882a593Smuzhiyun snvs_rtc: snvs-rtc-lp { 666*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-mon-rtc-lp"; 667*4882a593Smuzhiyun regmap = <&snvs>; 668*4882a593Smuzhiyun offset = <0x34>; 669*4882a593Smuzhiyun interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 670*4882a593Smuzhiyun <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 671*4882a593Smuzhiyun }; 672*4882a593Smuzhiyun 673*4882a593Smuzhiyun snvs_poweroff: snvs-poweroff { 674*4882a593Smuzhiyun compatible = "syscon-poweroff"; 675*4882a593Smuzhiyun regmap = <&snvs>; 676*4882a593Smuzhiyun offset = <0x38>; 677*4882a593Smuzhiyun value = <0x60>; 678*4882a593Smuzhiyun mask = <0x60>; 679*4882a593Smuzhiyun status = "disabled"; 680*4882a593Smuzhiyun }; 681*4882a593Smuzhiyun 682*4882a593Smuzhiyun snvs_pwrkey: snvs-powerkey { 683*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-pwrkey"; 684*4882a593Smuzhiyun regmap = <&snvs>; 685*4882a593Smuzhiyun interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 686*4882a593Smuzhiyun linux,keycode = <KEY_POWER>; 687*4882a593Smuzhiyun wakeup-source; 688*4882a593Smuzhiyun status = "disabled"; 689*4882a593Smuzhiyun }; 690*4882a593Smuzhiyun 691*4882a593Smuzhiyun snvs_lpgpr: snvs-lpgpr { 692*4882a593Smuzhiyun compatible = "fsl,imx6ul-snvs-lpgpr"; 693*4882a593Smuzhiyun }; 694*4882a593Smuzhiyun }; 695*4882a593Smuzhiyun 696*4882a593Smuzhiyun epit1: epit@20d0000 { 697*4882a593Smuzhiyun reg = <0x020d0000 0x4000>; 698*4882a593Smuzhiyun interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; 699*4882a593Smuzhiyun }; 700*4882a593Smuzhiyun 701*4882a593Smuzhiyun epit2: epit@20d4000 { 702*4882a593Smuzhiyun reg = <0x020d4000 0x4000>; 703*4882a593Smuzhiyun interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 704*4882a593Smuzhiyun }; 705*4882a593Smuzhiyun 706*4882a593Smuzhiyun src: reset-controller@20d8000 { 707*4882a593Smuzhiyun compatible = "fsl,imx6ul-src", "fsl,imx51-src"; 708*4882a593Smuzhiyun reg = <0x020d8000 0x4000>; 709*4882a593Smuzhiyun interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, 710*4882a593Smuzhiyun <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 711*4882a593Smuzhiyun #reset-cells = <1>; 712*4882a593Smuzhiyun }; 713*4882a593Smuzhiyun 714*4882a593Smuzhiyun gpc: gpc@20dc000 { 715*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpc", "fsl,imx6q-gpc"; 716*4882a593Smuzhiyun reg = <0x020dc000 0x4000>; 717*4882a593Smuzhiyun interrupt-controller; 718*4882a593Smuzhiyun #interrupt-cells = <3>; 719*4882a593Smuzhiyun interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 720*4882a593Smuzhiyun interrupt-parent = <&intc>; 721*4882a593Smuzhiyun }; 722*4882a593Smuzhiyun 723*4882a593Smuzhiyun iomuxc: pinctrl@20e0000 { 724*4882a593Smuzhiyun compatible = "fsl,imx6ul-iomuxc"; 725*4882a593Smuzhiyun reg = <0x020e0000 0x4000>; 726*4882a593Smuzhiyun }; 727*4882a593Smuzhiyun 728*4882a593Smuzhiyun gpr: iomuxc-gpr@20e4000 { 729*4882a593Smuzhiyun compatible = "fsl,imx6ul-iomuxc-gpr", 730*4882a593Smuzhiyun "fsl,imx6q-iomuxc-gpr", "syscon"; 731*4882a593Smuzhiyun reg = <0x020e4000 0x4000>; 732*4882a593Smuzhiyun }; 733*4882a593Smuzhiyun 734*4882a593Smuzhiyun gpt2: timer@20e8000 { 735*4882a593Smuzhiyun compatible = "fsl,imx6ul-gpt", "fsl,imx6sx-gpt"; 736*4882a593Smuzhiyun reg = <0x020e8000 0x4000>; 737*4882a593Smuzhiyun interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 738*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_GPT2_BUS>, 739*4882a593Smuzhiyun <&clks IMX6UL_CLK_GPT2_SERIAL>; 740*4882a593Smuzhiyun clock-names = "ipg", "per"; 741*4882a593Smuzhiyun status = "disabled"; 742*4882a593Smuzhiyun }; 743*4882a593Smuzhiyun 744*4882a593Smuzhiyun sdma: sdma@20ec000 { 745*4882a593Smuzhiyun compatible = "fsl,imx6ul-sdma", "fsl,imx6q-sdma", 746*4882a593Smuzhiyun "fsl,imx35-sdma"; 747*4882a593Smuzhiyun reg = <0x020ec000 0x4000>; 748*4882a593Smuzhiyun interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 749*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_IPG>, 750*4882a593Smuzhiyun <&clks IMX6UL_CLK_SDMA>; 751*4882a593Smuzhiyun clock-names = "ipg", "ahb"; 752*4882a593Smuzhiyun #dma-cells = <3>; 753*4882a593Smuzhiyun fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin"; 754*4882a593Smuzhiyun }; 755*4882a593Smuzhiyun 756*4882a593Smuzhiyun pwm5: pwm@20f0000 { 757*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 758*4882a593Smuzhiyun reg = <0x020f0000 0x4000>; 759*4882a593Smuzhiyun interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 760*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM5>, 761*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM5>; 762*4882a593Smuzhiyun clock-names = "ipg", "per"; 763*4882a593Smuzhiyun #pwm-cells = <3>; 764*4882a593Smuzhiyun status = "disabled"; 765*4882a593Smuzhiyun }; 766*4882a593Smuzhiyun 767*4882a593Smuzhiyun pwm6: pwm@20f4000 { 768*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 769*4882a593Smuzhiyun reg = <0x020f4000 0x4000>; 770*4882a593Smuzhiyun interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>; 771*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM6>, 772*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM6>; 773*4882a593Smuzhiyun clock-names = "ipg", "per"; 774*4882a593Smuzhiyun #pwm-cells = <3>; 775*4882a593Smuzhiyun status = "disabled"; 776*4882a593Smuzhiyun }; 777*4882a593Smuzhiyun 778*4882a593Smuzhiyun pwm7: pwm@20f8000 { 779*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 780*4882a593Smuzhiyun reg = <0x020f8000 0x4000>; 781*4882a593Smuzhiyun interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 782*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM7>, 783*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM7>; 784*4882a593Smuzhiyun clock-names = "ipg", "per"; 785*4882a593Smuzhiyun #pwm-cells = <3>; 786*4882a593Smuzhiyun status = "disabled"; 787*4882a593Smuzhiyun }; 788*4882a593Smuzhiyun 789*4882a593Smuzhiyun pwm8: pwm@20fc000 { 790*4882a593Smuzhiyun compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; 791*4882a593Smuzhiyun reg = <0x020fc000 0x4000>; 792*4882a593Smuzhiyun interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 793*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PWM8>, 794*4882a593Smuzhiyun <&clks IMX6UL_CLK_PWM8>; 795*4882a593Smuzhiyun clock-names = "ipg", "per"; 796*4882a593Smuzhiyun #pwm-cells = <3>; 797*4882a593Smuzhiyun status = "disabled"; 798*4882a593Smuzhiyun }; 799*4882a593Smuzhiyun }; 800*4882a593Smuzhiyun 801*4882a593Smuzhiyun aips2: bus@2100000 { 802*4882a593Smuzhiyun compatible = "fsl,aips-bus", "simple-bus"; 803*4882a593Smuzhiyun #address-cells = <1>; 804*4882a593Smuzhiyun #size-cells = <1>; 805*4882a593Smuzhiyun reg = <0x02100000 0x100000>; 806*4882a593Smuzhiyun ranges; 807*4882a593Smuzhiyun 808*4882a593Smuzhiyun crypto: crypto@2140000 { 809*4882a593Smuzhiyun compatible = "fsl,imx6ul-caam", "fsl,sec-v4.0"; 810*4882a593Smuzhiyun #address-cells = <1>; 811*4882a593Smuzhiyun #size-cells = <1>; 812*4882a593Smuzhiyun reg = <0x2140000 0x3c000>; 813*4882a593Smuzhiyun ranges = <0 0x2140000 0x3c000>; 814*4882a593Smuzhiyun interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 815*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_CAAM_IPG>, <&clks IMX6UL_CLK_CAAM_ACLK>, 816*4882a593Smuzhiyun <&clks IMX6UL_CLK_CAAM_MEM>; 817*4882a593Smuzhiyun clock-names = "ipg", "aclk", "mem"; 818*4882a593Smuzhiyun 819*4882a593Smuzhiyun sec_jr0: jr@1000 { 820*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-job-ring"; 821*4882a593Smuzhiyun reg = <0x1000 0x1000>; 822*4882a593Smuzhiyun interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 823*4882a593Smuzhiyun }; 824*4882a593Smuzhiyun 825*4882a593Smuzhiyun sec_jr1: jr@2000 { 826*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-job-ring"; 827*4882a593Smuzhiyun reg = <0x2000 0x1000>; 828*4882a593Smuzhiyun interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 829*4882a593Smuzhiyun }; 830*4882a593Smuzhiyun 831*4882a593Smuzhiyun sec_jr2: jr@3000 { 832*4882a593Smuzhiyun compatible = "fsl,sec-v4.0-job-ring"; 833*4882a593Smuzhiyun reg = <0x3000 0x1000>; 834*4882a593Smuzhiyun interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 835*4882a593Smuzhiyun }; 836*4882a593Smuzhiyun }; 837*4882a593Smuzhiyun 838*4882a593Smuzhiyun usbotg1: usb@2184000 { 839*4882a593Smuzhiyun compatible = "fsl,imx6ul-usb", "fsl,imx27-usb"; 840*4882a593Smuzhiyun reg = <0x02184000 0x200>; 841*4882a593Smuzhiyun interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 842*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USBOH3>; 843*4882a593Smuzhiyun fsl,usbphy = <&usbphy1>; 844*4882a593Smuzhiyun fsl,usbmisc = <&usbmisc 0>; 845*4882a593Smuzhiyun fsl,anatop = <&anatop>; 846*4882a593Smuzhiyun ahb-burst-config = <0x0>; 847*4882a593Smuzhiyun tx-burst-size-dword = <0x10>; 848*4882a593Smuzhiyun rx-burst-size-dword = <0x10>; 849*4882a593Smuzhiyun status = "disabled"; 850*4882a593Smuzhiyun }; 851*4882a593Smuzhiyun 852*4882a593Smuzhiyun usbotg2: usb@2184200 { 853*4882a593Smuzhiyun compatible = "fsl,imx6ul-usb", "fsl,imx27-usb"; 854*4882a593Smuzhiyun reg = <0x02184200 0x200>; 855*4882a593Smuzhiyun interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 856*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USBOH3>; 857*4882a593Smuzhiyun fsl,usbphy = <&usbphy2>; 858*4882a593Smuzhiyun fsl,usbmisc = <&usbmisc 1>; 859*4882a593Smuzhiyun ahb-burst-config = <0x0>; 860*4882a593Smuzhiyun tx-burst-size-dword = <0x10>; 861*4882a593Smuzhiyun rx-burst-size-dword = <0x10>; 862*4882a593Smuzhiyun status = "disabled"; 863*4882a593Smuzhiyun }; 864*4882a593Smuzhiyun 865*4882a593Smuzhiyun usbmisc: usbmisc@2184800 { 866*4882a593Smuzhiyun #index-cells = <1>; 867*4882a593Smuzhiyun compatible = "fsl,imx6ul-usbmisc", "fsl,imx6q-usbmisc"; 868*4882a593Smuzhiyun reg = <0x02184800 0x200>; 869*4882a593Smuzhiyun }; 870*4882a593Smuzhiyun 871*4882a593Smuzhiyun fec1: ethernet@2188000 { 872*4882a593Smuzhiyun compatible = "fsl,imx6ul-fec", "fsl,imx6q-fec"; 873*4882a593Smuzhiyun reg = <0x02188000 0x4000>; 874*4882a593Smuzhiyun interrupt-names = "int0", "pps"; 875*4882a593Smuzhiyun interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 876*4882a593Smuzhiyun <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 877*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ENET>, 878*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_AHB>, 879*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_PTP>, 880*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_REF>, 881*4882a593Smuzhiyun <&clks IMX6UL_CLK_ENET_REF>; 882*4882a593Smuzhiyun clock-names = "ipg", "ahb", "ptp", 883*4882a593Smuzhiyun "enet_clk_ref", "enet_out"; 884*4882a593Smuzhiyun fsl,num-tx-queues = <1>; 885*4882a593Smuzhiyun fsl,num-rx-queues = <1>; 886*4882a593Smuzhiyun fsl,stop-mode = <&gpr 0x10 3>; 887*4882a593Smuzhiyun status = "disabled"; 888*4882a593Smuzhiyun }; 889*4882a593Smuzhiyun 890*4882a593Smuzhiyun usdhc1: mmc@2190000 { 891*4882a593Smuzhiyun compatible = "fsl,imx6ul-usdhc", "fsl,imx6sx-usdhc"; 892*4882a593Smuzhiyun reg = <0x02190000 0x4000>; 893*4882a593Smuzhiyun interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 894*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USDHC1>, 895*4882a593Smuzhiyun <&clks IMX6UL_CLK_USDHC1>, 896*4882a593Smuzhiyun <&clks IMX6UL_CLK_USDHC1>; 897*4882a593Smuzhiyun clock-names = "ipg", "ahb", "per"; 898*4882a593Smuzhiyun fsl,tuning-step = <2>; 899*4882a593Smuzhiyun fsl,tuning-start-tap = <20>; 900*4882a593Smuzhiyun bus-width = <4>; 901*4882a593Smuzhiyun status = "disabled"; 902*4882a593Smuzhiyun }; 903*4882a593Smuzhiyun 904*4882a593Smuzhiyun usdhc2: mmc@2194000 { 905*4882a593Smuzhiyun compatible = "fsl,imx6ul-usdhc", "fsl,imx6sx-usdhc"; 906*4882a593Smuzhiyun reg = <0x02194000 0x4000>; 907*4882a593Smuzhiyun interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 908*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_USDHC2>, 909*4882a593Smuzhiyun <&clks IMX6UL_CLK_USDHC2>, 910*4882a593Smuzhiyun <&clks IMX6UL_CLK_USDHC2>; 911*4882a593Smuzhiyun clock-names = "ipg", "ahb", "per"; 912*4882a593Smuzhiyun bus-width = <4>; 913*4882a593Smuzhiyun fsl,tuning-step = <2>; 914*4882a593Smuzhiyun fsl,tuning-start-tap = <20>; 915*4882a593Smuzhiyun status = "disabled"; 916*4882a593Smuzhiyun }; 917*4882a593Smuzhiyun 918*4882a593Smuzhiyun adc1: adc@2198000 { 919*4882a593Smuzhiyun compatible = "fsl,imx6ul-adc", "fsl,vf610-adc"; 920*4882a593Smuzhiyun reg = <0x02198000 0x4000>; 921*4882a593Smuzhiyun interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 922*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_ADC1>; 923*4882a593Smuzhiyun num-channels = <2>; 924*4882a593Smuzhiyun clock-names = "adc"; 925*4882a593Smuzhiyun fsl,adck-max-frequency = <30000000>, <40000000>, 926*4882a593Smuzhiyun <20000000>; 927*4882a593Smuzhiyun status = "disabled"; 928*4882a593Smuzhiyun }; 929*4882a593Smuzhiyun 930*4882a593Smuzhiyun i2c1: i2c@21a0000 { 931*4882a593Smuzhiyun #address-cells = <1>; 932*4882a593Smuzhiyun #size-cells = <0>; 933*4882a593Smuzhiyun compatible = "fsl,imx6ul-i2c", "fsl,imx21-i2c"; 934*4882a593Smuzhiyun reg = <0x021a0000 0x4000>; 935*4882a593Smuzhiyun interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 936*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_I2C1>; 937*4882a593Smuzhiyun status = "disabled"; 938*4882a593Smuzhiyun }; 939*4882a593Smuzhiyun 940*4882a593Smuzhiyun i2c2: i2c@21a4000 { 941*4882a593Smuzhiyun #address-cells = <1>; 942*4882a593Smuzhiyun #size-cells = <0>; 943*4882a593Smuzhiyun compatible = "fsl,imx6ul-i2c", "fsl,imx21-i2c"; 944*4882a593Smuzhiyun reg = <0x021a4000 0x4000>; 945*4882a593Smuzhiyun interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 946*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_I2C2>; 947*4882a593Smuzhiyun status = "disabled"; 948*4882a593Smuzhiyun }; 949*4882a593Smuzhiyun 950*4882a593Smuzhiyun i2c3: i2c@21a8000 { 951*4882a593Smuzhiyun #address-cells = <1>; 952*4882a593Smuzhiyun #size-cells = <0>; 953*4882a593Smuzhiyun compatible = "fsl,imx6ul-i2c", "fsl,imx21-i2c"; 954*4882a593Smuzhiyun reg = <0x021a8000 0x4000>; 955*4882a593Smuzhiyun interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 956*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_I2C3>; 957*4882a593Smuzhiyun status = "disabled"; 958*4882a593Smuzhiyun }; 959*4882a593Smuzhiyun 960*4882a593Smuzhiyun memory-controller@21b0000 { 961*4882a593Smuzhiyun compatible = "fsl,imx6ul-mmdc", "fsl,imx6q-mmdc"; 962*4882a593Smuzhiyun reg = <0x021b0000 0x4000>; 963*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_MMDC_P0_IPG>; 964*4882a593Smuzhiyun }; 965*4882a593Smuzhiyun 966*4882a593Smuzhiyun weim: weim@21b8000 { 967*4882a593Smuzhiyun #address-cells = <2>; 968*4882a593Smuzhiyun #size-cells = <1>; 969*4882a593Smuzhiyun compatible = "fsl,imx6ul-weim", "fsl,imx6q-weim"; 970*4882a593Smuzhiyun reg = <0x021b8000 0x4000>; 971*4882a593Smuzhiyun interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 972*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_EIM>; 973*4882a593Smuzhiyun fsl,weim-cs-gpr = <&gpr>; 974*4882a593Smuzhiyun status = "disabled"; 975*4882a593Smuzhiyun }; 976*4882a593Smuzhiyun 977*4882a593Smuzhiyun ocotp: efuse@21bc000 { 978*4882a593Smuzhiyun #address-cells = <1>; 979*4882a593Smuzhiyun #size-cells = <1>; 980*4882a593Smuzhiyun compatible = "fsl,imx6ul-ocotp", "syscon"; 981*4882a593Smuzhiyun reg = <0x021bc000 0x4000>; 982*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_OCOTP>; 983*4882a593Smuzhiyun 984*4882a593Smuzhiyun tempmon_calib: calib@38 { 985*4882a593Smuzhiyun reg = <0x38 4>; 986*4882a593Smuzhiyun }; 987*4882a593Smuzhiyun 988*4882a593Smuzhiyun tempmon_temp_grade: temp-grade@20 { 989*4882a593Smuzhiyun reg = <0x20 4>; 990*4882a593Smuzhiyun }; 991*4882a593Smuzhiyun 992*4882a593Smuzhiyun cpu_speed_grade: speed-grade@10 { 993*4882a593Smuzhiyun reg = <0x10 4>; 994*4882a593Smuzhiyun }; 995*4882a593Smuzhiyun }; 996*4882a593Smuzhiyun 997*4882a593Smuzhiyun csi: csi@21c4000 { 998*4882a593Smuzhiyun compatible = "fsl,imx6ul-csi"; 999*4882a593Smuzhiyun reg = <0x021c4000 0x4000>; 1000*4882a593Smuzhiyun interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 1001*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_CSI>; 1002*4882a593Smuzhiyun clock-names = "mclk"; 1003*4882a593Smuzhiyun status = "disabled"; 1004*4882a593Smuzhiyun }; 1005*4882a593Smuzhiyun 1006*4882a593Smuzhiyun lcdif: lcdif@21c8000 { 1007*4882a593Smuzhiyun compatible = "fsl,imx6ul-lcdif", "fsl,imx6sx-lcdif"; 1008*4882a593Smuzhiyun reg = <0x021c8000 0x4000>; 1009*4882a593Smuzhiyun interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 1010*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_LCDIF_PIX>, 1011*4882a593Smuzhiyun <&clks IMX6UL_CLK_LCDIF_APB>, 1012*4882a593Smuzhiyun <&clks IMX6UL_CLK_DUMMY>; 1013*4882a593Smuzhiyun clock-names = "pix", "axi", "disp_axi"; 1014*4882a593Smuzhiyun status = "disabled"; 1015*4882a593Smuzhiyun }; 1016*4882a593Smuzhiyun 1017*4882a593Smuzhiyun pxp: pxp@21cc000 { 1018*4882a593Smuzhiyun compatible = "fsl,imx6ul-pxp"; 1019*4882a593Smuzhiyun reg = <0x021cc000 0x4000>; 1020*4882a593Smuzhiyun interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 1021*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_PXP>; 1022*4882a593Smuzhiyun clock-names = "axi"; 1023*4882a593Smuzhiyun }; 1024*4882a593Smuzhiyun 1025*4882a593Smuzhiyun qspi: spi@21e0000 { 1026*4882a593Smuzhiyun #address-cells = <1>; 1027*4882a593Smuzhiyun #size-cells = <0>; 1028*4882a593Smuzhiyun compatible = "fsl,imx6ul-qspi"; 1029*4882a593Smuzhiyun reg = <0x021e0000 0x4000>, <0x60000000 0x10000000>; 1030*4882a593Smuzhiyun reg-names = "QuadSPI", "QuadSPI-memory"; 1031*4882a593Smuzhiyun interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 1032*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_QSPI>, 1033*4882a593Smuzhiyun <&clks IMX6UL_CLK_QSPI>; 1034*4882a593Smuzhiyun clock-names = "qspi_en", "qspi"; 1035*4882a593Smuzhiyun status = "disabled"; 1036*4882a593Smuzhiyun }; 1037*4882a593Smuzhiyun 1038*4882a593Smuzhiyun wdog3: watchdog@21e4000 { 1039*4882a593Smuzhiyun compatible = "fsl,imx6ul-wdt", "fsl,imx21-wdt"; 1040*4882a593Smuzhiyun reg = <0x021e4000 0x4000>; 1041*4882a593Smuzhiyun interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 1042*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_WDOG3>; 1043*4882a593Smuzhiyun status = "disabled"; 1044*4882a593Smuzhiyun }; 1045*4882a593Smuzhiyun 1046*4882a593Smuzhiyun uart2: serial@21e8000 { 1047*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 1048*4882a593Smuzhiyun "fsl,imx6q-uart"; 1049*4882a593Smuzhiyun reg = <0x021e8000 0x4000>; 1050*4882a593Smuzhiyun interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 1051*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART2_IPG>, 1052*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART2_SERIAL>; 1053*4882a593Smuzhiyun clock-names = "ipg", "per"; 1054*4882a593Smuzhiyun status = "disabled"; 1055*4882a593Smuzhiyun }; 1056*4882a593Smuzhiyun 1057*4882a593Smuzhiyun uart3: serial@21ec000 { 1058*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 1059*4882a593Smuzhiyun "fsl,imx6q-uart"; 1060*4882a593Smuzhiyun reg = <0x021ec000 0x4000>; 1061*4882a593Smuzhiyun interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 1062*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART3_IPG>, 1063*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART3_SERIAL>; 1064*4882a593Smuzhiyun clock-names = "ipg", "per"; 1065*4882a593Smuzhiyun status = "disabled"; 1066*4882a593Smuzhiyun }; 1067*4882a593Smuzhiyun 1068*4882a593Smuzhiyun uart4: serial@21f0000 { 1069*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 1070*4882a593Smuzhiyun "fsl,imx6q-uart"; 1071*4882a593Smuzhiyun reg = <0x021f0000 0x4000>; 1072*4882a593Smuzhiyun interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 1073*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART4_IPG>, 1074*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART4_SERIAL>; 1075*4882a593Smuzhiyun clock-names = "ipg", "per"; 1076*4882a593Smuzhiyun status = "disabled"; 1077*4882a593Smuzhiyun }; 1078*4882a593Smuzhiyun 1079*4882a593Smuzhiyun uart5: serial@21f4000 { 1080*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 1081*4882a593Smuzhiyun "fsl,imx6q-uart"; 1082*4882a593Smuzhiyun reg = <0x021f4000 0x4000>; 1083*4882a593Smuzhiyun interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 1084*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART5_IPG>, 1085*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART5_SERIAL>; 1086*4882a593Smuzhiyun clock-names = "ipg", "per"; 1087*4882a593Smuzhiyun status = "disabled"; 1088*4882a593Smuzhiyun }; 1089*4882a593Smuzhiyun 1090*4882a593Smuzhiyun i2c4: i2c@21f8000 { 1091*4882a593Smuzhiyun #address-cells = <1>; 1092*4882a593Smuzhiyun #size-cells = <0>; 1093*4882a593Smuzhiyun compatible = "fsl,imx6ul-i2c", "fsl,imx21-i2c"; 1094*4882a593Smuzhiyun reg = <0x021f8000 0x4000>; 1095*4882a593Smuzhiyun interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 1096*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_I2C4>; 1097*4882a593Smuzhiyun status = "disabled"; 1098*4882a593Smuzhiyun }; 1099*4882a593Smuzhiyun 1100*4882a593Smuzhiyun uart6: serial@21fc000 { 1101*4882a593Smuzhiyun compatible = "fsl,imx6ul-uart", 1102*4882a593Smuzhiyun "fsl,imx6q-uart"; 1103*4882a593Smuzhiyun reg = <0x021fc000 0x4000>; 1104*4882a593Smuzhiyun interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 1105*4882a593Smuzhiyun clocks = <&clks IMX6UL_CLK_UART6_IPG>, 1106*4882a593Smuzhiyun <&clks IMX6UL_CLK_UART6_SERIAL>; 1107*4882a593Smuzhiyun clock-names = "ipg", "per"; 1108*4882a593Smuzhiyun status = "disabled"; 1109*4882a593Smuzhiyun }; 1110*4882a593Smuzhiyun }; 1111*4882a593Smuzhiyun }; 1112*4882a593Smuzhiyun}; 1113