xref: /freebsd/sys/contrib/device-tree/Bindings/display/mediatek/mediatek,aal.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c9ccf3a3SEmmanuel Vadot%YAML 1.2
3c9ccf3a3SEmmanuel Vadot---
4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/display/mediatek/mediatek,aal.yaml#
5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c9ccf3a3SEmmanuel Vadot
7c9ccf3a3SEmmanuel Vadottitle: Mediatek display adaptive ambient light processor
8c9ccf3a3SEmmanuel Vadot
9c9ccf3a3SEmmanuel Vadotmaintainers:
10c9ccf3a3SEmmanuel Vadot  - Chun-Kuang Hu <chunkuang.hu@kernel.org>
11c9ccf3a3SEmmanuel Vadot  - Philipp Zabel <p.zabel@pengutronix.de>
12c9ccf3a3SEmmanuel Vadot
13c9ccf3a3SEmmanuel Vadotdescription: |
14c9ccf3a3SEmmanuel Vadot  Mediatek display adaptive ambient light processor, namely AAL,
15c9ccf3a3SEmmanuel Vadot  is responsible for backlight power saving and sunlight visibility improving.
16c9ccf3a3SEmmanuel Vadot  AAL device node must be siblings to the central MMSYS_CONFIG node.
17c9ccf3a3SEmmanuel Vadot  For a description of the MMSYS_CONFIG binding, see
18c9ccf3a3SEmmanuel Vadot  Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml
19c9ccf3a3SEmmanuel Vadot  for details.
20c9ccf3a3SEmmanuel Vadot
21c9ccf3a3SEmmanuel Vadotproperties:
22c9ccf3a3SEmmanuel Vadot  compatible:
23c9ccf3a3SEmmanuel Vadot    oneOf:
24d5b0e70fSEmmanuel Vadot      - enum:
25d5b0e70fSEmmanuel Vadot          - mediatek,mt8173-disp-aal
26d5b0e70fSEmmanuel Vadot          - mediatek,mt8183-disp-aal
278d13bc63SEmmanuel Vadot          - mediatek,mt8195-mdp3-aal
28c9ccf3a3SEmmanuel Vadot      - items:
29c9ccf3a3SEmmanuel Vadot          - enum:
30c9ccf3a3SEmmanuel Vadot              - mediatek,mt2712-disp-aal
31f126890aSEmmanuel Vadot              - mediatek,mt6795-disp-aal
32d5b0e70fSEmmanuel Vadot          - const: mediatek,mt8173-disp-aal
33d5b0e70fSEmmanuel Vadot      - items:
34d5b0e70fSEmmanuel Vadot          - enum:
35d5b0e70fSEmmanuel Vadot              - mediatek,mt8186-disp-aal
36cb7aa33aSEmmanuel Vadot              - mediatek,mt8188-disp-aal
37c9ccf3a3SEmmanuel Vadot              - mediatek,mt8192-disp-aal
38c9ccf3a3SEmmanuel Vadot              - mediatek,mt8195-disp-aal
39*0e8011faSEmmanuel Vadot              - mediatek,mt8365-disp-aal
40d5b0e70fSEmmanuel Vadot          - const: mediatek,mt8183-disp-aal
41c9ccf3a3SEmmanuel Vadot
42c9ccf3a3SEmmanuel Vadot  reg:
43c9ccf3a3SEmmanuel Vadot    maxItems: 1
44c9ccf3a3SEmmanuel Vadot
45c9ccf3a3SEmmanuel Vadot  interrupts:
46c9ccf3a3SEmmanuel Vadot    maxItems: 1
47c9ccf3a3SEmmanuel Vadot
48c9ccf3a3SEmmanuel Vadot  power-domains:
49c9ccf3a3SEmmanuel Vadot    description: A phandle and PM domain specifier as defined by bindings of
50c9ccf3a3SEmmanuel Vadot      the power controller specified by phandle. See
51c9ccf3a3SEmmanuel Vadot      Documentation/devicetree/bindings/power/power-domain.yaml for details.
52c9ccf3a3SEmmanuel Vadot
53c9ccf3a3SEmmanuel Vadot  clocks:
54c9ccf3a3SEmmanuel Vadot    items:
55c9ccf3a3SEmmanuel Vadot      - description: AAL Clock
56c9ccf3a3SEmmanuel Vadot
57c9ccf3a3SEmmanuel Vadot  mediatek,gce-client-reg:
58c9ccf3a3SEmmanuel Vadot    description: The register of client driver can be configured by gce with
59c9ccf3a3SEmmanuel Vadot      4 arguments defined in this property, such as phandle of gce, subsys id,
60c9ccf3a3SEmmanuel Vadot      register offset and size. Each GCE subsys id is mapping to a client
61c9ccf3a3SEmmanuel Vadot      defined in the header include/dt-bindings/gce/<chip>-gce.h.
62c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
63c9ccf3a3SEmmanuel Vadot    maxItems: 1
64c9ccf3a3SEmmanuel Vadot
65c9ccf3a3SEmmanuel Vadotrequired:
66c9ccf3a3SEmmanuel Vadot  - compatible
67c9ccf3a3SEmmanuel Vadot  - reg
68c9ccf3a3SEmmanuel Vadot  - interrupts
69c9ccf3a3SEmmanuel Vadot  - power-domains
70c9ccf3a3SEmmanuel Vadot  - clocks
71c9ccf3a3SEmmanuel Vadot
72c9ccf3a3SEmmanuel VadotadditionalProperties: false
73c9ccf3a3SEmmanuel Vadot
74c9ccf3a3SEmmanuel Vadotexamples:
75c9ccf3a3SEmmanuel Vadot  - |
76c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
77c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/clock/mt8173-clk.h>
78c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/power/mt8173-power.h>
79c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/gce/mt8173-gce.h>
80c9ccf3a3SEmmanuel Vadot
81c9ccf3a3SEmmanuel Vadot    soc {
82c9ccf3a3SEmmanuel Vadot        #address-cells = <2>;
83c9ccf3a3SEmmanuel Vadot        #size-cells = <2>;
84c9ccf3a3SEmmanuel Vadot
85c9ccf3a3SEmmanuel Vadot        aal@14015000 {
86c9ccf3a3SEmmanuel Vadot           compatible = "mediatek,mt8173-disp-aal";
87c9ccf3a3SEmmanuel Vadot           reg = <0 0x14015000 0 0x1000>;
88c9ccf3a3SEmmanuel Vadot           interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_LOW>;
89c9ccf3a3SEmmanuel Vadot           power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>;
90c9ccf3a3SEmmanuel Vadot           clocks = <&mmsys CLK_MM_DISP_AAL>;
91c9ccf3a3SEmmanuel Vadot           mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x5000 0x1000>;
92c9ccf3a3SEmmanuel Vadot       };
93c9ccf3a3SEmmanuel Vadot    };
94