xref: /linux/Documentation/devicetree/bindings/display/mediatek/mediatek,dsc.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1b9c15721Sjason-jh.lin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b9c15721Sjason-jh.lin%YAML 1.2
3b9c15721Sjason-jh.lin---
4b9c15721Sjason-jh.lin$id: http://devicetree.org/schemas/display/mediatek/mediatek,dsc.yaml#
5b9c15721Sjason-jh.lin$schema: http://devicetree.org/meta-schemas/core.yaml#
6b9c15721Sjason-jh.lin
7b9c15721Sjason-jh.lintitle: mediatek display DSC controller
8b9c15721Sjason-jh.lin
9b9c15721Sjason-jh.linmaintainers:
10b9c15721Sjason-jh.lin  - Chun-Kuang Hu <chunkuang.hu@kernel.org>
11b9c15721Sjason-jh.lin  - Philipp Zabel <p.zabel@pengutronix.de>
12b9c15721Sjason-jh.lin
13b9c15721Sjason-jh.lindescription: |
14b9c15721Sjason-jh.lin  The DSC standard is a specification of the algorithms used for
15b9c15721Sjason-jh.lin  compressing and decompressing image display streams, including
16b9c15721Sjason-jh.lin  the specification of the syntax and semantics of the compressed
17b9c15721Sjason-jh.lin  video bit stream. DSC is designed for real-time systems with
18b9c15721Sjason-jh.lin  real-time compression, transmission, decompression and Display.
19b9c15721Sjason-jh.lin
20b9c15721Sjason-jh.linproperties:
21b9c15721Sjason-jh.lin  compatible:
22b9c15721Sjason-jh.lin    oneOf:
23*112d5560SKrzysztof Kozlowski      - enum:
24*112d5560SKrzysztof Kozlowski          - mediatek,mt8195-disp-dsc
25b9c15721Sjason-jh.lin
26b9c15721Sjason-jh.lin  reg:
27b9c15721Sjason-jh.lin    maxItems: 1
28b9c15721Sjason-jh.lin
29b9c15721Sjason-jh.lin  interrupts:
30b9c15721Sjason-jh.lin    maxItems: 1
31b9c15721Sjason-jh.lin
32b9c15721Sjason-jh.lin  clocks:
33b9c15721Sjason-jh.lin    items:
34b9c15721Sjason-jh.lin      - description: DSC Wrapper Clock
35b9c15721Sjason-jh.lin
36b9c15721Sjason-jh.lin  power-domains:
37b9c15721Sjason-jh.lin    description: A phandle and PM domain specifier as defined by bindings of
38b9c15721Sjason-jh.lin      the power controller specified by phandle. See
39b9c15721Sjason-jh.lin      Documentation/devicetree/bindings/power/power-domain.yaml for details.
40b9c15721Sjason-jh.lin
41b9c15721Sjason-jh.lin  mediatek,gce-client-reg:
42b9c15721Sjason-jh.lin    description:
43b9c15721Sjason-jh.lin      The register of client driver can be configured by gce with 4 arguments
44b9c15721Sjason-jh.lin      defined in this property, such as phandle of gce, subsys id,
45b9c15721Sjason-jh.lin      register offset and size.
46b9c15721Sjason-jh.lin      Each subsys id is mapping to a base address of display function blocks
47b9c15721Sjason-jh.lin      register which is defined in the gce header
48b9c15721Sjason-jh.lin      include/dt-bindings/gce/<chip>-gce.h.
49b9c15721Sjason-jh.lin    $ref: /schemas/types.yaml#/definitions/phandle-array
50b9c15721Sjason-jh.lin    maxItems: 1
51b9c15721Sjason-jh.lin
52b9c15721Sjason-jh.linrequired:
53b9c15721Sjason-jh.lin  - compatible
54b9c15721Sjason-jh.lin  - reg
55b9c15721Sjason-jh.lin  - interrupts
56b9c15721Sjason-jh.lin  - power-domains
57b9c15721Sjason-jh.lin  - clocks
58b9c15721Sjason-jh.lin
59b9c15721Sjason-jh.linadditionalProperties: false
60b9c15721Sjason-jh.lin
61b9c15721Sjason-jh.linexamples:
62b9c15721Sjason-jh.lin  - |
63bff4e302SAngeloGioacchino Del Regno    #include <dt-bindings/interrupt-controller/arm-gic.h>
64bff4e302SAngeloGioacchino Del Regno    #include <dt-bindings/clock/mt8195-clk.h>
65bff4e302SAngeloGioacchino Del Regno    #include <dt-bindings/power/mt8195-power.h>
66bff4e302SAngeloGioacchino Del Regno    #include <dt-bindings/gce/mt8195-gce.h>
67bff4e302SAngeloGioacchino Del Regno
68bff4e302SAngeloGioacchino Del Regno    soc {
69bff4e302SAngeloGioacchino Del Regno        #address-cells = <2>;
70bff4e302SAngeloGioacchino Del Regno        #size-cells = <2>;
71b9c15721Sjason-jh.lin
72b9c15721Sjason-jh.lin        dsc0: disp_dsc_wrap@1c009000 {
73b9c15721Sjason-jh.lin            compatible = "mediatek,mt8195-disp-dsc";
74b9c15721Sjason-jh.lin            reg = <0 0x1c009000 0 0x1000>;
75b9c15721Sjason-jh.lin            interrupts = <GIC_SPI 645 IRQ_TYPE_LEVEL_HIGH 0>;
76b9c15721Sjason-jh.lin            power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
77b9c15721Sjason-jh.lin            clocks = <&vdosys0 CLK_VDO0_DSC_WRAP0>;
78b9c15721Sjason-jh.lin            mediatek,gce-client-reg = <&gce1 SUBSYS_1c00XXXX 0x9000 0x1000>;
79b9c15721Sjason-jh.lin        };
80bff4e302SAngeloGioacchino Del Regno    };
81