1*67f165ddSAbel Vesa// SPDX-License-Identifier: GPL-2.0 2*67f165ddSAbel Vesa// 3*67f165ddSAbel Vesa// Copyright 2013 Freescale Semiconductor, Inc. 44f79d0d3SJagan Teki 54f79d0d3SJagan Teki#include <dt-bindings/interrupt-controller/irq.h> 64f79d0d3SJagan Teki#include "imx6q-pinfunc.h" 74f79d0d3SJagan Teki#include "imx6qdl.dtsi" 84f79d0d3SJagan Teki 94f79d0d3SJagan Teki/ { 104f79d0d3SJagan Teki aliases { 114f79d0d3SJagan Teki ipu1 = &ipu2; 124f79d0d3SJagan Teki spi4 = &ecspi5; 134f79d0d3SJagan Teki }; 144f79d0d3SJagan Teki 154f79d0d3SJagan Teki cpus { 164f79d0d3SJagan Teki #address-cells = <1>; 174f79d0d3SJagan Teki #size-cells = <0>; 184f79d0d3SJagan Teki 194f79d0d3SJagan Teki cpu0: cpu@0 { 204f79d0d3SJagan Teki compatible = "arm,cortex-a9"; 214f79d0d3SJagan Teki device_type = "cpu"; 224f79d0d3SJagan Teki reg = <0>; 234f79d0d3SJagan Teki next-level-cache = <&L2>; 244f79d0d3SJagan Teki operating-points = < 254f79d0d3SJagan Teki /* kHz uV */ 264f79d0d3SJagan Teki 1200000 1275000 274f79d0d3SJagan Teki 996000 1250000 284f79d0d3SJagan Teki 852000 1250000 294f79d0d3SJagan Teki 792000 1175000 304f79d0d3SJagan Teki 396000 975000 314f79d0d3SJagan Teki >; 324f79d0d3SJagan Teki fsl,soc-operating-points = < 334f79d0d3SJagan Teki /* ARM kHz SOC-PU uV */ 344f79d0d3SJagan Teki 1200000 1275000 354f79d0d3SJagan Teki 996000 1250000 364f79d0d3SJagan Teki 852000 1250000 374f79d0d3SJagan Teki 792000 1175000 384f79d0d3SJagan Teki 396000 1175000 394f79d0d3SJagan Teki >; 404f79d0d3SJagan Teki clock-latency = <61036>; /* two CLK32 periods */ 41*67f165ddSAbel Vesa #cooling-cells = <2>; 424f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_ARM>, 434f79d0d3SJagan Teki <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, 444f79d0d3SJagan Teki <&clks IMX6QDL_CLK_STEP>, 454f79d0d3SJagan Teki <&clks IMX6QDL_CLK_PLL1_SW>, 464f79d0d3SJagan Teki <&clks IMX6QDL_CLK_PLL1_SYS>; 474f79d0d3SJagan Teki clock-names = "arm", "pll2_pfd2_396m", "step", 484f79d0d3SJagan Teki "pll1_sw", "pll1_sys"; 494f79d0d3SJagan Teki arm-supply = <®_arm>; 504f79d0d3SJagan Teki pu-supply = <®_pu>; 514f79d0d3SJagan Teki soc-supply = <®_soc>; 524f79d0d3SJagan Teki }; 534f79d0d3SJagan Teki 54*67f165ddSAbel Vesa cpu1: cpu@1 { 554f79d0d3SJagan Teki compatible = "arm,cortex-a9"; 564f79d0d3SJagan Teki device_type = "cpu"; 574f79d0d3SJagan Teki reg = <1>; 584f79d0d3SJagan Teki next-level-cache = <&L2>; 59*67f165ddSAbel Vesa operating-points = < 60*67f165ddSAbel Vesa /* kHz uV */ 61*67f165ddSAbel Vesa 1200000 1275000 62*67f165ddSAbel Vesa 996000 1250000 63*67f165ddSAbel Vesa 852000 1250000 64*67f165ddSAbel Vesa 792000 1175000 65*67f165ddSAbel Vesa 396000 975000 66*67f165ddSAbel Vesa >; 67*67f165ddSAbel Vesa fsl,soc-operating-points = < 68*67f165ddSAbel Vesa /* ARM kHz SOC-PU uV */ 69*67f165ddSAbel Vesa 1200000 1275000 70*67f165ddSAbel Vesa 996000 1250000 71*67f165ddSAbel Vesa 852000 1250000 72*67f165ddSAbel Vesa 792000 1175000 73*67f165ddSAbel Vesa 396000 1175000 74*67f165ddSAbel Vesa >; 75*67f165ddSAbel Vesa clock-latency = <61036>; /* two CLK32 periods */ 76*67f165ddSAbel Vesa clocks = <&clks IMX6QDL_CLK_ARM>, 77*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, 78*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_STEP>, 79*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SW>, 80*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SYS>; 81*67f165ddSAbel Vesa clock-names = "arm", "pll2_pfd2_396m", "step", 82*67f165ddSAbel Vesa "pll1_sw", "pll1_sys"; 83*67f165ddSAbel Vesa arm-supply = <®_arm>; 84*67f165ddSAbel Vesa pu-supply = <®_pu>; 85*67f165ddSAbel Vesa soc-supply = <®_soc>; 864f79d0d3SJagan Teki }; 874f79d0d3SJagan Teki 88*67f165ddSAbel Vesa cpu2: cpu@2 { 894f79d0d3SJagan Teki compatible = "arm,cortex-a9"; 904f79d0d3SJagan Teki device_type = "cpu"; 914f79d0d3SJagan Teki reg = <2>; 924f79d0d3SJagan Teki next-level-cache = <&L2>; 93*67f165ddSAbel Vesa operating-points = < 94*67f165ddSAbel Vesa /* kHz uV */ 95*67f165ddSAbel Vesa 1200000 1275000 96*67f165ddSAbel Vesa 996000 1250000 97*67f165ddSAbel Vesa 852000 1250000 98*67f165ddSAbel Vesa 792000 1175000 99*67f165ddSAbel Vesa 396000 975000 100*67f165ddSAbel Vesa >; 101*67f165ddSAbel Vesa fsl,soc-operating-points = < 102*67f165ddSAbel Vesa /* ARM kHz SOC-PU uV */ 103*67f165ddSAbel Vesa 1200000 1275000 104*67f165ddSAbel Vesa 996000 1250000 105*67f165ddSAbel Vesa 852000 1250000 106*67f165ddSAbel Vesa 792000 1175000 107*67f165ddSAbel Vesa 396000 1175000 108*67f165ddSAbel Vesa >; 109*67f165ddSAbel Vesa clock-latency = <61036>; /* two CLK32 periods */ 110*67f165ddSAbel Vesa clocks = <&clks IMX6QDL_CLK_ARM>, 111*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, 112*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_STEP>, 113*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SW>, 114*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SYS>; 115*67f165ddSAbel Vesa clock-names = "arm", "pll2_pfd2_396m", "step", 116*67f165ddSAbel Vesa "pll1_sw", "pll1_sys"; 117*67f165ddSAbel Vesa arm-supply = <®_arm>; 118*67f165ddSAbel Vesa pu-supply = <®_pu>; 119*67f165ddSAbel Vesa soc-supply = <®_soc>; 1204f79d0d3SJagan Teki }; 1214f79d0d3SJagan Teki 122*67f165ddSAbel Vesa cpu3: cpu@3 { 1234f79d0d3SJagan Teki compatible = "arm,cortex-a9"; 1244f79d0d3SJagan Teki device_type = "cpu"; 1254f79d0d3SJagan Teki reg = <3>; 1264f79d0d3SJagan Teki next-level-cache = <&L2>; 127*67f165ddSAbel Vesa operating-points = < 128*67f165ddSAbel Vesa /* kHz uV */ 129*67f165ddSAbel Vesa 1200000 1275000 130*67f165ddSAbel Vesa 996000 1250000 131*67f165ddSAbel Vesa 852000 1250000 132*67f165ddSAbel Vesa 792000 1175000 133*67f165ddSAbel Vesa 396000 975000 134*67f165ddSAbel Vesa >; 135*67f165ddSAbel Vesa fsl,soc-operating-points = < 136*67f165ddSAbel Vesa /* ARM kHz SOC-PU uV */ 137*67f165ddSAbel Vesa 1200000 1275000 138*67f165ddSAbel Vesa 996000 1250000 139*67f165ddSAbel Vesa 852000 1250000 140*67f165ddSAbel Vesa 792000 1175000 141*67f165ddSAbel Vesa 396000 1175000 142*67f165ddSAbel Vesa >; 143*67f165ddSAbel Vesa clock-latency = <61036>; /* two CLK32 periods */ 144*67f165ddSAbel Vesa clocks = <&clks IMX6QDL_CLK_ARM>, 145*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, 146*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_STEP>, 147*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SW>, 148*67f165ddSAbel Vesa <&clks IMX6QDL_CLK_PLL1_SYS>; 149*67f165ddSAbel Vesa clock-names = "arm", "pll2_pfd2_396m", "step", 150*67f165ddSAbel Vesa "pll1_sw", "pll1_sys"; 151*67f165ddSAbel Vesa arm-supply = <®_arm>; 152*67f165ddSAbel Vesa pu-supply = <®_pu>; 153*67f165ddSAbel Vesa soc-supply = <®_soc>; 1544f79d0d3SJagan Teki }; 1554f79d0d3SJagan Teki }; 1564f79d0d3SJagan Teki 1574f79d0d3SJagan Teki soc { 158*67f165ddSAbel Vesa ocram: sram@900000 { 1594f79d0d3SJagan Teki compatible = "mmio-sram"; 1604f79d0d3SJagan Teki reg = <0x00900000 0x40000>; 1614f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_OCRAM>; 1624f79d0d3SJagan Teki }; 1634f79d0d3SJagan Teki 164*67f165ddSAbel Vesa aips-bus@2000000 { /* AIPS1 */ 165*67f165ddSAbel Vesa spba-bus@2000000 { 166*67f165ddSAbel Vesa ecspi5: spi@2018000 { 1674f79d0d3SJagan Teki #address-cells = <1>; 1684f79d0d3SJagan Teki #size-cells = <0>; 1694f79d0d3SJagan Teki compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; 1704f79d0d3SJagan Teki reg = <0x02018000 0x4000>; 1714f79d0d3SJagan Teki interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>; 1724f79d0d3SJagan Teki clocks = <&clks IMX6Q_CLK_ECSPI5>, 1734f79d0d3SJagan Teki <&clks IMX6Q_CLK_ECSPI5>; 1744f79d0d3SJagan Teki clock-names = "ipg", "per"; 175*67f165ddSAbel Vesa dmas = <&sdma 11 8 1>, <&sdma 12 8 2>; 1764f79d0d3SJagan Teki dma-names = "rx", "tx"; 1774f79d0d3SJagan Teki status = "disabled"; 1784f79d0d3SJagan Teki }; 1794f79d0d3SJagan Teki }; 1804f79d0d3SJagan Teki 181*67f165ddSAbel Vesa iomuxc: iomuxc@20e0000 { 1824f79d0d3SJagan Teki compatible = "fsl,imx6q-iomuxc"; 1834f79d0d3SJagan Teki }; 1844f79d0d3SJagan Teki }; 1854f79d0d3SJagan Teki 186*67f165ddSAbel Vesa sata: sata@2200000 { 1874f79d0d3SJagan Teki compatible = "fsl,imx6q-ahci"; 1884f79d0d3SJagan Teki reg = <0x02200000 0x4000>; 1894f79d0d3SJagan Teki interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>; 1904f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_SATA>, 1914f79d0d3SJagan Teki <&clks IMX6QDL_CLK_SATA_REF_100M>, 1924f79d0d3SJagan Teki <&clks IMX6QDL_CLK_AHB>; 1934f79d0d3SJagan Teki clock-names = "sata", "sata_ref", "ahb"; 1944f79d0d3SJagan Teki status = "disabled"; 1954f79d0d3SJagan Teki }; 1964f79d0d3SJagan Teki 197*67f165ddSAbel Vesa gpu_vg: gpu@2204000 { 1984f79d0d3SJagan Teki compatible = "vivante,gc"; 1994f79d0d3SJagan Teki reg = <0x02204000 0x4000>; 2004f79d0d3SJagan Teki interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>; 2014f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_OPENVG_AXI>, 2024f79d0d3SJagan Teki <&clks IMX6QDL_CLK_GPU2D_CORE>; 2034f79d0d3SJagan Teki clock-names = "bus", "core"; 204*67f165ddSAbel Vesa power-domains = <&pd_pu>; 2054f79d0d3SJagan Teki }; 2064f79d0d3SJagan Teki 207*67f165ddSAbel Vesa ipu2: ipu@2800000 { 2084f79d0d3SJagan Teki #address-cells = <1>; 2094f79d0d3SJagan Teki #size-cells = <0>; 2104f79d0d3SJagan Teki compatible = "fsl,imx6q-ipu"; 2114f79d0d3SJagan Teki reg = <0x02800000 0x400000>; 2124f79d0d3SJagan Teki interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>, 2134f79d0d3SJagan Teki <0 7 IRQ_TYPE_LEVEL_HIGH>; 2144f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_IPU2>, 2154f79d0d3SJagan Teki <&clks IMX6QDL_CLK_IPU2_DI0>, 2164f79d0d3SJagan Teki <&clks IMX6QDL_CLK_IPU2_DI1>; 2174f79d0d3SJagan Teki clock-names = "bus", "di0", "di1"; 2184f79d0d3SJagan Teki resets = <&src 4>; 2194f79d0d3SJagan Teki 2204f79d0d3SJagan Teki ipu2_csi0: port@0 { 2214f79d0d3SJagan Teki reg = <0>; 222*67f165ddSAbel Vesa 223*67f165ddSAbel Vesa ipu2_csi0_from_mipi_vc2: endpoint { 224*67f165ddSAbel Vesa remote-endpoint = <&mipi_vc2_to_ipu2_csi0>; 225*67f165ddSAbel Vesa }; 2264f79d0d3SJagan Teki }; 2274f79d0d3SJagan Teki 2284f79d0d3SJagan Teki ipu2_csi1: port@1 { 2294f79d0d3SJagan Teki reg = <1>; 230*67f165ddSAbel Vesa 231*67f165ddSAbel Vesa ipu2_csi1_from_ipu2_csi1_mux: endpoint { 232*67f165ddSAbel Vesa remote-endpoint = <&ipu2_csi1_mux_to_ipu2_csi1>; 233*67f165ddSAbel Vesa }; 2344f79d0d3SJagan Teki }; 2354f79d0d3SJagan Teki 2364f79d0d3SJagan Teki ipu2_di0: port@2 { 2374f79d0d3SJagan Teki reg = <2>; 2384f79d0d3SJagan Teki 239*67f165ddSAbel Vesa ipu2_di0_disp0: endpoint@0 { 240*67f165ddSAbel Vesa reg = <0>; 2414f79d0d3SJagan Teki }; 2424f79d0d3SJagan Teki 243*67f165ddSAbel Vesa ipu2_di0_hdmi: endpoint@1 { 244*67f165ddSAbel Vesa reg = <1>; 2454f79d0d3SJagan Teki remote-endpoint = <&hdmi_mux_2>; 2464f79d0d3SJagan Teki }; 2474f79d0d3SJagan Teki 248*67f165ddSAbel Vesa ipu2_di0_mipi: endpoint@2 { 249*67f165ddSAbel Vesa reg = <2>; 2504f79d0d3SJagan Teki remote-endpoint = <&mipi_mux_2>; 2514f79d0d3SJagan Teki }; 2524f79d0d3SJagan Teki 253*67f165ddSAbel Vesa ipu2_di0_lvds0: endpoint@3 { 254*67f165ddSAbel Vesa reg = <3>; 2554f79d0d3SJagan Teki remote-endpoint = <&lvds0_mux_2>; 2564f79d0d3SJagan Teki }; 2574f79d0d3SJagan Teki 258*67f165ddSAbel Vesa ipu2_di0_lvds1: endpoint@4 { 259*67f165ddSAbel Vesa reg = <4>; 2604f79d0d3SJagan Teki remote-endpoint = <&lvds1_mux_2>; 2614f79d0d3SJagan Teki }; 2624f79d0d3SJagan Teki }; 2634f79d0d3SJagan Teki 2644f79d0d3SJagan Teki ipu2_di1: port@3 { 2654f79d0d3SJagan Teki reg = <3>; 2664f79d0d3SJagan Teki 267*67f165ddSAbel Vesa ipu2_di1_hdmi: endpoint@1 { 268*67f165ddSAbel Vesa reg = <1>; 2694f79d0d3SJagan Teki remote-endpoint = <&hdmi_mux_3>; 2704f79d0d3SJagan Teki }; 2714f79d0d3SJagan Teki 272*67f165ddSAbel Vesa ipu2_di1_mipi: endpoint@2 { 273*67f165ddSAbel Vesa reg = <2>; 2744f79d0d3SJagan Teki remote-endpoint = <&mipi_mux_3>; 2754f79d0d3SJagan Teki }; 2764f79d0d3SJagan Teki 277*67f165ddSAbel Vesa ipu2_di1_lvds0: endpoint@3 { 278*67f165ddSAbel Vesa reg = <3>; 2794f79d0d3SJagan Teki remote-endpoint = <&lvds0_mux_3>; 2804f79d0d3SJagan Teki }; 2814f79d0d3SJagan Teki 282*67f165ddSAbel Vesa ipu2_di1_lvds1: endpoint@4 { 283*67f165ddSAbel Vesa reg = <4>; 2844f79d0d3SJagan Teki remote-endpoint = <&lvds1_mux_3>; 2854f79d0d3SJagan Teki }; 2864f79d0d3SJagan Teki }; 2874f79d0d3SJagan Teki }; 2884f79d0d3SJagan Teki }; 2894f79d0d3SJagan Teki 290*67f165ddSAbel Vesa capture-subsystem { 291*67f165ddSAbel Vesa compatible = "fsl,imx-capture-subsystem"; 292*67f165ddSAbel Vesa ports = <&ipu1_csi0>, <&ipu1_csi1>, <&ipu2_csi0>, <&ipu2_csi1>; 293*67f165ddSAbel Vesa }; 294*67f165ddSAbel Vesa 2954f79d0d3SJagan Teki display-subsystem { 2964f79d0d3SJagan Teki compatible = "fsl,imx-display-subsystem"; 2974f79d0d3SJagan Teki ports = <&ipu1_di0>, <&ipu1_di1>, <&ipu2_di0>, <&ipu2_di1>; 2984f79d0d3SJagan Teki }; 299*67f165ddSAbel Vesa}; 3004f79d0d3SJagan Teki 301*67f165ddSAbel Vesa&gpio1 { 302*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 136 2>, <&iomuxc 2 141 1>, <&iomuxc 3 139 1>, 303*67f165ddSAbel Vesa <&iomuxc 4 142 2>, <&iomuxc 6 140 1>, <&iomuxc 7 144 2>, 304*67f165ddSAbel Vesa <&iomuxc 9 138 1>, <&iomuxc 10 213 3>, <&iomuxc 13 20 1>, 305*67f165ddSAbel Vesa <&iomuxc 14 19 1>, <&iomuxc 15 21 1>, <&iomuxc 16 208 1>, 306*67f165ddSAbel Vesa <&iomuxc 17 207 1>, <&iomuxc 18 210 3>, <&iomuxc 21 209 1>, 307*67f165ddSAbel Vesa <&iomuxc 22 116 10>; 308*67f165ddSAbel Vesa}; 309*67f165ddSAbel Vesa 310*67f165ddSAbel Vesa&gpio2 { 311*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 191 16>, <&iomuxc 16 55 14>, <&iomuxc 30 35 1>, 312*67f165ddSAbel Vesa <&iomuxc 31 44 1>; 313*67f165ddSAbel Vesa}; 314*67f165ddSAbel Vesa 315*67f165ddSAbel Vesa&gpio3 { 316*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 69 16>, <&iomuxc 16 36 8>, <&iomuxc 24 45 8>; 317*67f165ddSAbel Vesa}; 318*67f165ddSAbel Vesa 319*67f165ddSAbel Vesa&gpio4 { 320*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 5 149 1>, <&iomuxc 6 126 10>, <&iomuxc 16 87 16>; 321*67f165ddSAbel Vesa}; 322*67f165ddSAbel Vesa 323*67f165ddSAbel Vesa&gpio5 { 324*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 85 1>, <&iomuxc 2 34 1>, <&iomuxc 4 53 1>, 325*67f165ddSAbel Vesa <&iomuxc 5 103 13>, <&iomuxc 18 150 14>; 326*67f165ddSAbel Vesa}; 327*67f165ddSAbel Vesa 328*67f165ddSAbel Vesa&gpio6 { 329*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 164 6>, <&iomuxc 6 54 1>, <&iomuxc 7 181 5>, 330*67f165ddSAbel Vesa <&iomuxc 14 186 3>, <&iomuxc 17 170 2>, <&iomuxc 19 22 12>, 331*67f165ddSAbel Vesa <&iomuxc 31 86 1>; 332*67f165ddSAbel Vesa}; 333*67f165ddSAbel Vesa 334*67f165ddSAbel Vesa&gpio7 { 335*67f165ddSAbel Vesa gpio-ranges = <&iomuxc 0 172 9>, <&iomuxc 9 189 2>, <&iomuxc 11 146 3>; 336*67f165ddSAbel Vesa}; 337*67f165ddSAbel Vesa 338*67f165ddSAbel Vesa&gpr { 339*67f165ddSAbel Vesa ipu1_csi0_mux { 340*67f165ddSAbel Vesa compatible = "video-mux"; 341*67f165ddSAbel Vesa mux-controls = <&mux 0>; 342*67f165ddSAbel Vesa #address-cells = <1>; 343*67f165ddSAbel Vesa #size-cells = <0>; 344*67f165ddSAbel Vesa 345*67f165ddSAbel Vesa port@0 { 346*67f165ddSAbel Vesa reg = <0>; 347*67f165ddSAbel Vesa 348*67f165ddSAbel Vesa ipu1_csi0_mux_from_mipi_vc0: endpoint { 349*67f165ddSAbel Vesa remote-endpoint = <&mipi_vc0_to_ipu1_csi0_mux>; 350*67f165ddSAbel Vesa }; 351*67f165ddSAbel Vesa }; 352*67f165ddSAbel Vesa 353*67f165ddSAbel Vesa port@1 { 354*67f165ddSAbel Vesa reg = <1>; 355*67f165ddSAbel Vesa 356*67f165ddSAbel Vesa ipu1_csi0_mux_from_parallel_sensor: endpoint { 357*67f165ddSAbel Vesa }; 358*67f165ddSAbel Vesa }; 359*67f165ddSAbel Vesa 360*67f165ddSAbel Vesa port@2 { 361*67f165ddSAbel Vesa reg = <2>; 362*67f165ddSAbel Vesa 363*67f165ddSAbel Vesa ipu1_csi0_mux_to_ipu1_csi0: endpoint { 364*67f165ddSAbel Vesa remote-endpoint = <&ipu1_csi0_from_ipu1_csi0_mux>; 365*67f165ddSAbel Vesa }; 366*67f165ddSAbel Vesa }; 367*67f165ddSAbel Vesa }; 368*67f165ddSAbel Vesa 369*67f165ddSAbel Vesa ipu2_csi1_mux { 370*67f165ddSAbel Vesa compatible = "video-mux"; 371*67f165ddSAbel Vesa mux-controls = <&mux 1>; 372*67f165ddSAbel Vesa #address-cells = <1>; 373*67f165ddSAbel Vesa #size-cells = <0>; 374*67f165ddSAbel Vesa 375*67f165ddSAbel Vesa port@0 { 376*67f165ddSAbel Vesa reg = <0>; 377*67f165ddSAbel Vesa 378*67f165ddSAbel Vesa ipu2_csi1_mux_from_mipi_vc3: endpoint { 379*67f165ddSAbel Vesa remote-endpoint = <&mipi_vc3_to_ipu2_csi1_mux>; 380*67f165ddSAbel Vesa }; 381*67f165ddSAbel Vesa }; 382*67f165ddSAbel Vesa 383*67f165ddSAbel Vesa port@1 { 384*67f165ddSAbel Vesa reg = <1>; 385*67f165ddSAbel Vesa 386*67f165ddSAbel Vesa ipu2_csi1_mux_from_parallel_sensor: endpoint { 387*67f165ddSAbel Vesa }; 388*67f165ddSAbel Vesa }; 389*67f165ddSAbel Vesa 390*67f165ddSAbel Vesa port@2 { 391*67f165ddSAbel Vesa reg = <2>; 392*67f165ddSAbel Vesa 393*67f165ddSAbel Vesa ipu2_csi1_mux_to_ipu2_csi1: endpoint { 394*67f165ddSAbel Vesa remote-endpoint = <&ipu2_csi1_from_ipu2_csi1_mux>; 395*67f165ddSAbel Vesa }; 396*67f165ddSAbel Vesa }; 3974f79d0d3SJagan Teki }; 3984f79d0d3SJagan Teki}; 3994f79d0d3SJagan Teki 4004f79d0d3SJagan Teki&hdmi { 4014f79d0d3SJagan Teki compatible = "fsl,imx6q-hdmi"; 4024f79d0d3SJagan Teki 4034f79d0d3SJagan Teki port@2 { 4044f79d0d3SJagan Teki reg = <2>; 4054f79d0d3SJagan Teki 4064f79d0d3SJagan Teki hdmi_mux_2: endpoint { 4074f79d0d3SJagan Teki remote-endpoint = <&ipu2_di0_hdmi>; 4084f79d0d3SJagan Teki }; 4094f79d0d3SJagan Teki }; 4104f79d0d3SJagan Teki 4114f79d0d3SJagan Teki port@3 { 4124f79d0d3SJagan Teki reg = <3>; 4134f79d0d3SJagan Teki 4144f79d0d3SJagan Teki hdmi_mux_3: endpoint { 4154f79d0d3SJagan Teki remote-endpoint = <&ipu2_di1_hdmi>; 4164f79d0d3SJagan Teki }; 4174f79d0d3SJagan Teki }; 4184f79d0d3SJagan Teki}; 4194f79d0d3SJagan Teki 420*67f165ddSAbel Vesa&ipu1_csi1 { 421*67f165ddSAbel Vesa ipu1_csi1_from_mipi_vc1: endpoint { 422*67f165ddSAbel Vesa remote-endpoint = <&mipi_vc1_to_ipu1_csi1>; 423*67f165ddSAbel Vesa }; 424*67f165ddSAbel Vesa}; 425*67f165ddSAbel Vesa 4264f79d0d3SJagan Teki&ldb { 4274f79d0d3SJagan Teki clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_SEL>, 4284f79d0d3SJagan Teki <&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>, 4294f79d0d3SJagan Teki <&clks IMX6QDL_CLK_IPU2_DI0_SEL>, <&clks IMX6QDL_CLK_IPU2_DI1_SEL>, 4304f79d0d3SJagan Teki <&clks IMX6QDL_CLK_LDB_DI0>, <&clks IMX6QDL_CLK_LDB_DI1>; 4314f79d0d3SJagan Teki clock-names = "di0_pll", "di1_pll", 4324f79d0d3SJagan Teki "di0_sel", "di1_sel", "di2_sel", "di3_sel", 4334f79d0d3SJagan Teki "di0", "di1"; 4344f79d0d3SJagan Teki 4354f79d0d3SJagan Teki lvds-channel@0 { 4364f79d0d3SJagan Teki port@2 { 4374f79d0d3SJagan Teki reg = <2>; 4384f79d0d3SJagan Teki 4394f79d0d3SJagan Teki lvds0_mux_2: endpoint { 4404f79d0d3SJagan Teki remote-endpoint = <&ipu2_di0_lvds0>; 4414f79d0d3SJagan Teki }; 4424f79d0d3SJagan Teki }; 4434f79d0d3SJagan Teki 4444f79d0d3SJagan Teki port@3 { 4454f79d0d3SJagan Teki reg = <3>; 4464f79d0d3SJagan Teki 4474f79d0d3SJagan Teki lvds0_mux_3: endpoint { 4484f79d0d3SJagan Teki remote-endpoint = <&ipu2_di1_lvds0>; 4494f79d0d3SJagan Teki }; 4504f79d0d3SJagan Teki }; 4514f79d0d3SJagan Teki }; 4524f79d0d3SJagan Teki 4534f79d0d3SJagan Teki lvds-channel@1 { 4544f79d0d3SJagan Teki port@2 { 4554f79d0d3SJagan Teki reg = <2>; 4564f79d0d3SJagan Teki 4574f79d0d3SJagan Teki lvds1_mux_2: endpoint { 4584f79d0d3SJagan Teki remote-endpoint = <&ipu2_di0_lvds1>; 4594f79d0d3SJagan Teki }; 4604f79d0d3SJagan Teki }; 4614f79d0d3SJagan Teki 4624f79d0d3SJagan Teki port@3 { 4634f79d0d3SJagan Teki reg = <3>; 4644f79d0d3SJagan Teki 4654f79d0d3SJagan Teki lvds1_mux_3: endpoint { 4664f79d0d3SJagan Teki remote-endpoint = <&ipu2_di1_lvds1>; 4674f79d0d3SJagan Teki }; 4684f79d0d3SJagan Teki }; 4694f79d0d3SJagan Teki }; 4704f79d0d3SJagan Teki}; 4714f79d0d3SJagan Teki 472*67f165ddSAbel Vesa&mipi_csi { 473*67f165ddSAbel Vesa port@1 { 474*67f165ddSAbel Vesa reg = <1>; 475*67f165ddSAbel Vesa 476*67f165ddSAbel Vesa mipi_vc0_to_ipu1_csi0_mux: endpoint { 477*67f165ddSAbel Vesa remote-endpoint = <&ipu1_csi0_mux_from_mipi_vc0>; 478*67f165ddSAbel Vesa }; 479*67f165ddSAbel Vesa }; 480*67f165ddSAbel Vesa 481*67f165ddSAbel Vesa port@2 { 482*67f165ddSAbel Vesa reg = <2>; 483*67f165ddSAbel Vesa 484*67f165ddSAbel Vesa mipi_vc1_to_ipu1_csi1: endpoint { 485*67f165ddSAbel Vesa remote-endpoint = <&ipu1_csi1_from_mipi_vc1>; 486*67f165ddSAbel Vesa }; 487*67f165ddSAbel Vesa }; 488*67f165ddSAbel Vesa 489*67f165ddSAbel Vesa port@3 { 490*67f165ddSAbel Vesa reg = <3>; 491*67f165ddSAbel Vesa 492*67f165ddSAbel Vesa mipi_vc2_to_ipu2_csi0: endpoint { 493*67f165ddSAbel Vesa remote-endpoint = <&ipu2_csi0_from_mipi_vc2>; 494*67f165ddSAbel Vesa }; 495*67f165ddSAbel Vesa }; 496*67f165ddSAbel Vesa 497*67f165ddSAbel Vesa port@4 { 498*67f165ddSAbel Vesa reg = <4>; 499*67f165ddSAbel Vesa 500*67f165ddSAbel Vesa mipi_vc3_to_ipu2_csi1_mux: endpoint { 501*67f165ddSAbel Vesa remote-endpoint = <&ipu2_csi1_mux_from_mipi_vc3>; 502*67f165ddSAbel Vesa }; 503*67f165ddSAbel Vesa }; 504*67f165ddSAbel Vesa}; 505*67f165ddSAbel Vesa 5064f79d0d3SJagan Teki&mipi_dsi { 5074f79d0d3SJagan Teki ports { 5084f79d0d3SJagan Teki port@2 { 5094f79d0d3SJagan Teki reg = <2>; 5104f79d0d3SJagan Teki 5114f79d0d3SJagan Teki mipi_mux_2: endpoint { 5124f79d0d3SJagan Teki remote-endpoint = <&ipu2_di0_mipi>; 5134f79d0d3SJagan Teki }; 5144f79d0d3SJagan Teki }; 5154f79d0d3SJagan Teki 5164f79d0d3SJagan Teki port@3 { 5174f79d0d3SJagan Teki reg = <3>; 5184f79d0d3SJagan Teki 5194f79d0d3SJagan Teki mipi_mux_3: endpoint { 5204f79d0d3SJagan Teki remote-endpoint = <&ipu2_di1_mipi>; 5214f79d0d3SJagan Teki }; 5224f79d0d3SJagan Teki }; 5234f79d0d3SJagan Teki }; 5244f79d0d3SJagan Teki}; 5254f79d0d3SJagan Teki 526*67f165ddSAbel Vesa&mux { 527*67f165ddSAbel Vesa mux-reg-masks = <0x04 0x00080000>, /* MIPI_IPU1_MUX */ 528*67f165ddSAbel Vesa <0x04 0x00100000>, /* MIPI_IPU2_MUX */ 529*67f165ddSAbel Vesa <0x0c 0x0000000c>, /* HDMI_MUX_CTL */ 530*67f165ddSAbel Vesa <0x0c 0x000000c0>, /* LVDS0_MUX_CTL */ 531*67f165ddSAbel Vesa <0x0c 0x00000300>, /* LVDS1_MUX_CTL */ 532*67f165ddSAbel Vesa <0x28 0x00000003>, /* DCIC1_MUX_CTL */ 533*67f165ddSAbel Vesa <0x28 0x0000000c>; /* DCIC2_MUX_CTL */ 534*67f165ddSAbel Vesa}; 535*67f165ddSAbel Vesa 5364f79d0d3SJagan Teki&vpu { 5374f79d0d3SJagan Teki compatible = "fsl,imx6q-vpu", "cnm,coda960"; 5384f79d0d3SJagan Teki}; 539