1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/soc/imx/fsl,imx8mp-media-blk-ctrl.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: NXP i.MX8MP Media Block Control 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Paul Elder <paul.elder@ideasonboard.com> 11d5b0e70fSEmmanuel Vadot 12d5b0e70fSEmmanuel Vadotdescription: 13d5b0e70fSEmmanuel Vadot The i.MX8MP Media Block Control (MEDIA BLK_CTRL) is a top-level peripheral 14d5b0e70fSEmmanuel Vadot providing access to the NoC and ensuring proper power sequencing of the 15d5b0e70fSEmmanuel Vadot peripherals within the MEDIAMIX domain. 16d5b0e70fSEmmanuel Vadot 17d5b0e70fSEmmanuel Vadotproperties: 18d5b0e70fSEmmanuel Vadot compatible: 19d5b0e70fSEmmanuel Vadot items: 20d5b0e70fSEmmanuel Vadot - const: fsl,imx8mp-media-blk-ctrl 21d5b0e70fSEmmanuel Vadot - const: syscon 22d5b0e70fSEmmanuel Vadot 23d5b0e70fSEmmanuel Vadot reg: 24d5b0e70fSEmmanuel Vadot maxItems: 1 25d5b0e70fSEmmanuel Vadot 26*fac71e4eSEmmanuel Vadot '#address-cells': 27*fac71e4eSEmmanuel Vadot const: 1 28*fac71e4eSEmmanuel Vadot 29*fac71e4eSEmmanuel Vadot '#size-cells': 30*fac71e4eSEmmanuel Vadot const: 1 31*fac71e4eSEmmanuel Vadot 32d5b0e70fSEmmanuel Vadot '#power-domain-cells': 33d5b0e70fSEmmanuel Vadot const: 1 34d5b0e70fSEmmanuel Vadot 35d5b0e70fSEmmanuel Vadot power-domains: 36d5b0e70fSEmmanuel Vadot maxItems: 10 37d5b0e70fSEmmanuel Vadot 38d5b0e70fSEmmanuel Vadot power-domain-names: 39d5b0e70fSEmmanuel Vadot items: 40d5b0e70fSEmmanuel Vadot - const: bus 41d5b0e70fSEmmanuel Vadot - const: mipi-dsi1 42d5b0e70fSEmmanuel Vadot - const: mipi-csi1 43d5b0e70fSEmmanuel Vadot - const: lcdif1 44d5b0e70fSEmmanuel Vadot - const: isi 45d5b0e70fSEmmanuel Vadot - const: mipi-csi2 46d5b0e70fSEmmanuel Vadot - const: lcdif2 47d5b0e70fSEmmanuel Vadot - const: isp 48d5b0e70fSEmmanuel Vadot - const: dwe 49d5b0e70fSEmmanuel Vadot - const: mipi-dsi2 50d5b0e70fSEmmanuel Vadot 51d5b0e70fSEmmanuel Vadot clocks: 52d5b0e70fSEmmanuel Vadot items: 53d5b0e70fSEmmanuel Vadot - description: The APB clock 54d5b0e70fSEmmanuel Vadot - description: The AXI clock 55d5b0e70fSEmmanuel Vadot - description: The pixel clock for the first CSI2 receiver (aclk) 56d5b0e70fSEmmanuel Vadot - description: The pixel clock for the second CSI2 receiver (aclk) 57d5b0e70fSEmmanuel Vadot - description: The pixel clock for the first LCDIF (pix_clk) 58d5b0e70fSEmmanuel Vadot - description: The pixel clock for the second LCDIF (pix_clk) 59d5b0e70fSEmmanuel Vadot - description: The core clock for the ISP (clk) 60d5b0e70fSEmmanuel Vadot - description: The MIPI-PHY reference clock used by DSI 61d5b0e70fSEmmanuel Vadot 62d5b0e70fSEmmanuel Vadot clock-names: 63d5b0e70fSEmmanuel Vadot items: 64d5b0e70fSEmmanuel Vadot - const: apb 65d5b0e70fSEmmanuel Vadot - const: axi 66d5b0e70fSEmmanuel Vadot - const: cam1 67d5b0e70fSEmmanuel Vadot - const: cam2 68d5b0e70fSEmmanuel Vadot - const: disp1 69d5b0e70fSEmmanuel Vadot - const: disp2 70d5b0e70fSEmmanuel Vadot - const: isp 71d5b0e70fSEmmanuel Vadot - const: phy 72d5b0e70fSEmmanuel Vadot 737ef62cebSEmmanuel Vadot interconnects: 747ef62cebSEmmanuel Vadot maxItems: 8 757ef62cebSEmmanuel Vadot 767ef62cebSEmmanuel Vadot interconnect-names: 777ef62cebSEmmanuel Vadot items: 787ef62cebSEmmanuel Vadot - const: lcdif-rd 797ef62cebSEmmanuel Vadot - const: lcdif-wr 807ef62cebSEmmanuel Vadot - const: isi0 817ef62cebSEmmanuel Vadot - const: isi1 827ef62cebSEmmanuel Vadot - const: isi2 837ef62cebSEmmanuel Vadot - const: isp0 847ef62cebSEmmanuel Vadot - const: isp1 857ef62cebSEmmanuel Vadot - const: dwe 867ef62cebSEmmanuel Vadot 87*fac71e4eSEmmanuel Vadot bridge@5c: 88*fac71e4eSEmmanuel Vadot type: object 89*fac71e4eSEmmanuel Vadot $ref: /schemas/display/bridge/fsl,ldb.yaml# 90*fac71e4eSEmmanuel Vadot unevaluatedProperties: false 91*fac71e4eSEmmanuel Vadot 92d5b0e70fSEmmanuel Vadotrequired: 93d5b0e70fSEmmanuel Vadot - compatible 94d5b0e70fSEmmanuel Vadot - reg 95*fac71e4eSEmmanuel Vadot - '#address-cells' 96*fac71e4eSEmmanuel Vadot - '#size-cells' 97d5b0e70fSEmmanuel Vadot - '#power-domain-cells' 98d5b0e70fSEmmanuel Vadot - power-domains 99d5b0e70fSEmmanuel Vadot - power-domain-names 100d5b0e70fSEmmanuel Vadot - clocks 101d5b0e70fSEmmanuel Vadot - clock-names 102d5b0e70fSEmmanuel Vadot 103d5b0e70fSEmmanuel VadotadditionalProperties: false 104d5b0e70fSEmmanuel Vadot 105d5b0e70fSEmmanuel Vadotexamples: 106d5b0e70fSEmmanuel Vadot - | 107d5b0e70fSEmmanuel Vadot #include <dt-bindings/clock/imx8mp-clock.h> 108d5b0e70fSEmmanuel Vadot #include <dt-bindings/power/imx8mp-power.h> 109d5b0e70fSEmmanuel Vadot 110*fac71e4eSEmmanuel Vadot blk-ctrl@32ec0000 { 111d5b0e70fSEmmanuel Vadot compatible = "fsl,imx8mp-media-blk-ctrl", "syscon"; 112d5b0e70fSEmmanuel Vadot reg = <0x32ec0000 0x138>; 113d5b0e70fSEmmanuel Vadot power-domains = <&mediamix_pd>, <&mipi_phy1_pd>, <&mipi_phy1_pd>, 114d5b0e70fSEmmanuel Vadot <&mediamix_pd>, <&mediamix_pd>, <&mipi_phy2_pd>, 115d5b0e70fSEmmanuel Vadot <&mediamix_pd>, <&ispdwp_pd>, <&ispdwp_pd>, 116d5b0e70fSEmmanuel Vadot <&mipi_phy2_pd>; 117d5b0e70fSEmmanuel Vadot power-domain-names = "bus", "mipi-dsi1", "mipi-csi1", "lcdif1", "isi", 118d5b0e70fSEmmanuel Vadot "mipi-csi2", "lcdif2", "isp", "dwe", "mipi-dsi2"; 119d5b0e70fSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 120d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 121d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>, 122d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_CAM2_PIX_ROOT>, 123d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP1_PIX_ROOT>, 124d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_DISP2_PIX_ROOT>, 125d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 126d5b0e70fSEmmanuel Vadot <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF_ROOT>; 127d5b0e70fSEmmanuel Vadot clock-names = "apb", "axi", "cam1", "cam2", "disp1", "disp2", 128d5b0e70fSEmmanuel Vadot "isp", "phy"; 129d5b0e70fSEmmanuel Vadot #power-domain-cells = <1>; 130*fac71e4eSEmmanuel Vadot #address-cells = <1>; 131*fac71e4eSEmmanuel Vadot #size-cells = <1>; 132*fac71e4eSEmmanuel Vadot 133*fac71e4eSEmmanuel Vadot bridge@5c { 134*fac71e4eSEmmanuel Vadot compatible = "fsl,imx8mp-ldb"; 135*fac71e4eSEmmanuel Vadot reg = <0x5c 0x4>, <0x128 0x4>; 136*fac71e4eSEmmanuel Vadot reg-names = "ldb", "lvds"; 137*fac71e4eSEmmanuel Vadot clocks = <&clk IMX8MP_CLK_MEDIA_LDB>; 138*fac71e4eSEmmanuel Vadot clock-names = "ldb"; 139*fac71e4eSEmmanuel Vadot 140*fac71e4eSEmmanuel Vadot ports { 141*fac71e4eSEmmanuel Vadot #address-cells = <1>; 142*fac71e4eSEmmanuel Vadot #size-cells = <0>; 143*fac71e4eSEmmanuel Vadot 144*fac71e4eSEmmanuel Vadot port@0 { 145*fac71e4eSEmmanuel Vadot reg = <0>; 146*fac71e4eSEmmanuel Vadot 147*fac71e4eSEmmanuel Vadot ldb_from_lcdif2: endpoint { 148*fac71e4eSEmmanuel Vadot remote-endpoint = <&lcdif2_to_ldb>; 149*fac71e4eSEmmanuel Vadot }; 150*fac71e4eSEmmanuel Vadot }; 151*fac71e4eSEmmanuel Vadot 152*fac71e4eSEmmanuel Vadot port@1 { 153*fac71e4eSEmmanuel Vadot reg = <1>; 154*fac71e4eSEmmanuel Vadot 155*fac71e4eSEmmanuel Vadot ldb_lvds_ch0: endpoint { 156*fac71e4eSEmmanuel Vadot remote-endpoint = <&ldb_to_lvdsx4panel>; 157*fac71e4eSEmmanuel Vadot }; 158*fac71e4eSEmmanuel Vadot }; 159*fac71e4eSEmmanuel Vadot 160*fac71e4eSEmmanuel Vadot port@2 { 161*fac71e4eSEmmanuel Vadot reg = <2>; 162*fac71e4eSEmmanuel Vadot 163*fac71e4eSEmmanuel Vadot ldb_lvds_ch1: endpoint { 164*fac71e4eSEmmanuel Vadot }; 165*fac71e4eSEmmanuel Vadot }; 166*fac71e4eSEmmanuel Vadot }; 167*fac71e4eSEmmanuel Vadot }; 168d5b0e70fSEmmanuel Vadot }; 169d5b0e70fSEmmanuel Vadot... 170