14ed545e7Sjason-jh.lin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 24ed545e7Sjason-jh.lin%YAML 1.2 34ed545e7Sjason-jh.lin--- 44ed545e7Sjason-jh.lin$id: http://devicetree.org/schemas/display/mediatek/mediatek,rdma.yaml# 54ed545e7Sjason-jh.lin$schema: http://devicetree.org/meta-schemas/core.yaml# 64ed545e7Sjason-jh.lin 74ed545e7Sjason-jh.lintitle: Mediatek Read Direct Memory Access 84ed545e7Sjason-jh.lin 94ed545e7Sjason-jh.linmaintainers: 104ed545e7Sjason-jh.lin - Chun-Kuang Hu <chunkuang.hu@kernel.org> 114ed545e7Sjason-jh.lin - Philipp Zabel <p.zabel@pengutronix.de> 124ed545e7Sjason-jh.lin 134ed545e7Sjason-jh.lindescription: | 144ed545e7Sjason-jh.lin Mediatek Read Direct Memory Access(RDMA) component used to read the 154ed545e7Sjason-jh.lin data into DMA. It provides real time data to the back-end panel 164ed545e7Sjason-jh.lin driver, such as DSI, DPI and DP_INTF. 174ed545e7Sjason-jh.lin It contains one line buffer to store the sufficient pixel data. 184ed545e7Sjason-jh.lin RDMA device node must be siblings to the central MMSYS_CONFIG node. 194ed545e7Sjason-jh.lin For a description of the MMSYS_CONFIG binding, see 204ed545e7Sjason-jh.lin Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml 214ed545e7Sjason-jh.lin for details. 224ed545e7Sjason-jh.lin 234ed545e7Sjason-jh.linproperties: 244ed545e7Sjason-jh.lin compatible: 254ed545e7Sjason-jh.lin oneOf: 26*112d5560SKrzysztof Kozlowski - enum: 27*112d5560SKrzysztof Kozlowski - mediatek,mt2701-disp-rdma 28*112d5560SKrzysztof Kozlowski - mediatek,mt8173-disp-rdma 29*112d5560SKrzysztof Kozlowski - mediatek,mt8183-disp-rdma 30*112d5560SKrzysztof Kozlowski - mediatek,mt8195-disp-rdma 31a79257baSjason-jh.lin - items: 324ed545e7Sjason-jh.lin - enum: 33b5386f29SNathan Lu - mediatek,mt8188-disp-rdma 34b5386f29SNathan Lu - const: mediatek,mt8195-disp-rdma 35b5386f29SNathan Lu - items: 36b5386f29SNathan Lu - enum: 374ed545e7Sjason-jh.lin - mediatek,mt7623-disp-rdma 384ed545e7Sjason-jh.lin - mediatek,mt2712-disp-rdma 3946bc0d98SRex-BC Chen - const: mediatek,mt2701-disp-rdma 404ed545e7Sjason-jh.lin - items: 414ed545e7Sjason-jh.lin - enum: 428a26ea19SRex-BC Chen - mediatek,mt6795-disp-rdma 434ed545e7Sjason-jh.lin - const: mediatek,mt8173-disp-rdma 4446bc0d98SRex-BC Chen - items: 454ed545e7Sjason-jh.lin - enum: 464ed545e7Sjason-jh.lin - mediatek,mt8186-disp-rdma 474ed545e7Sjason-jh.lin - mediatek,mt8192-disp-rdma 484ed545e7Sjason-jh.lin - const: mediatek,mt8183-disp-rdma 494ed545e7Sjason-jh.lin 504ed545e7Sjason-jh.lin reg: 514ed545e7Sjason-jh.lin maxItems: 1 524ed545e7Sjason-jh.lin 534ed545e7Sjason-jh.lin interrupts: 544ed545e7Sjason-jh.lin maxItems: 1 554ed545e7Sjason-jh.lin 564ed545e7Sjason-jh.lin power-domains: 574ed545e7Sjason-jh.lin description: A phandle and PM domain specifier as defined by bindings of 584ed545e7Sjason-jh.lin the power controller specified by phandle. See 594ed545e7Sjason-jh.lin Documentation/devicetree/bindings/power/power-domain.yaml for details. 604ed545e7Sjason-jh.lin 614ed545e7Sjason-jh.lin clocks: 624ed545e7Sjason-jh.lin items: 634ed545e7Sjason-jh.lin - description: RDMA Clock 644ed545e7Sjason-jh.lin 654ed545e7Sjason-jh.lin iommus: 664ed545e7Sjason-jh.lin description: 674ed545e7Sjason-jh.lin This property should point to the respective IOMMU block with master port as argument, 684ed545e7Sjason-jh.lin see Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml for details. 694ed545e7Sjason-jh.lin 704ed545e7Sjason-jh.lin mediatek,rdma-fifo-size: 714ed545e7Sjason-jh.lin description: 724ed545e7Sjason-jh.lin rdma fifo size may be different even in same SOC, add this property to the 734ed545e7Sjason-jh.lin corresponding rdma. 744ed545e7Sjason-jh.lin The value below is the Max value which defined in hardware data sheet 754ed545e7Sjason-jh.lin mediatek,rdma-fifo-size of mt8173-rdma0 is 8K 764ed545e7Sjason-jh.lin mediatek,rdma-fifo-size of mt8183-rdma0 is 5K 774ed545e7Sjason-jh.lin mediatek,rdma-fifo-size of mt8183-rdma1 is 2K 784ed545e7Sjason-jh.lin $ref: /schemas/types.yaml#/definitions/uint32 794ed545e7Sjason-jh.lin enum: [8192, 5120, 2048] 804ed545e7Sjason-jh.lin 814ed545e7Sjason-jh.lin mediatek,gce-client-reg: 824ed545e7Sjason-jh.lin description: The register of client driver can be configured by gce with 834ed545e7Sjason-jh.lin 4 arguments defined in this property, such as phandle of gce, subsys id, 844ed545e7Sjason-jh.lin register offset and size. Each GCE subsys id is mapping to a client 854ed545e7Sjason-jh.lin defined in the header include/dt-bindings/gce/<chip>-gce.h. 864ed545e7Sjason-jh.lin $ref: /schemas/types.yaml#/definitions/phandle-array 874ed545e7Sjason-jh.lin maxItems: 1 884ed545e7Sjason-jh.lin 894ed545e7Sjason-jh.linrequired: 904ed545e7Sjason-jh.lin - compatible 914ed545e7Sjason-jh.lin - reg 924ed545e7Sjason-jh.lin - interrupts 934ed545e7Sjason-jh.lin - power-domains 944ed545e7Sjason-jh.lin - clocks 954ed545e7Sjason-jh.lin - iommus 964ed545e7Sjason-jh.lin 97bff4e302SAngeloGioacchino Del RegnoadditionalProperties: false 98bff4e302SAngeloGioacchino Del Regno 99bff4e302SAngeloGioacchino Del Regnoexamples: 100bff4e302SAngeloGioacchino Del Regno - | 101bff4e302SAngeloGioacchino Del Regno #include <dt-bindings/interrupt-controller/arm-gic.h> 102bff4e302SAngeloGioacchino Del Regno #include <dt-bindings/clock/mt8173-clk.h> 103bff4e302SAngeloGioacchino Del Regno #include <dt-bindings/power/mt8173-power.h> 104bff4e302SAngeloGioacchino Del Regno #include <dt-bindings/gce/mt8173-gce.h> 105bff4e302SAngeloGioacchino Del Regno #include <dt-bindings/memory/mt8173-larb-port.h> 1064ed545e7Sjason-jh.lin 1074ed545e7Sjason-jh.lin soc { 1084ed545e7Sjason-jh.lin #address-cells = <2>; 1094ed545e7Sjason-jh.lin #size-cells = <2>; 1104ed545e7Sjason-jh.lin 1114ed545e7Sjason-jh.lin rdma0: rdma@1400e000 { 1124ed545e7Sjason-jh.lin compatible = "mediatek,mt8173-disp-rdma"; 1134ed545e7Sjason-jh.lin reg = <0 0x1400e000 0 0x1000>; 114bff4e302SAngeloGioacchino Del Regno interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_LOW>; 1154ed545e7Sjason-jh.lin power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; 1164ed545e7Sjason-jh.lin clocks = <&mmsys CLK_MM_DISP_RDMA0>; 117bff4e302SAngeloGioacchino Del Regno iommus = <&iommu M4U_PORT_DISP_RDMA0>; 118 mediatek,rdma-fifo-size = <8192>; 119 mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>; 120 }; 121 }; 122