]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/mailbox/qcom,apcs-kpss-global.txt
Import DTS files from Linux 5.6
[FreeBSD/FreeBSD.git] / Bindings / mailbox / qcom,apcs-kpss-global.txt
1 Binding for the Qualcomm APCS global block
2 ==========================================
3
4 This binding describes the APCS "global" block found in various Qualcomm
5 platforms.
6
7 - compatible:
8         Usage: required
9         Value type: <string>
10         Definition: must be one of:
11                     "qcom,msm8916-apcs-kpss-global",
12                     "qcom,msm8996-apcs-hmss-global"
13                     "qcom,msm8998-apcs-hmss-global"
14                     "qcom,qcs404-apcs-apps-global"
15                     "qcom,sc7180-apss-shared"
16                     "qcom,sdm845-apss-shared"
17                     "qcom,sm8150-apss-shared"
18                     "qcom,ipq8074-apcs-apps-global"
19
20 - reg:
21         Usage: required
22         Value type: <prop-encoded-array>
23         Definition: must specify the base address and size of the global block
24
25 - clocks:
26         Usage: required if #clock-names property is present
27         Value type: <phandle array>
28         Definition: phandles to the two parent clocks of the clock driver.
29
30 - #mbox-cells:
31         Usage: required
32         Value type: <u32>
33         Definition: as described in mailbox.txt, must be 1
34
35 - #clock-cells:
36         Usage: optional
37         Value type: <u32>
38         Definition: as described in clock.txt, must be 0
39
40 - clock-names:
41         Usage: required if the platform data based clock driver needs to
42         retrieve the parent clock names from device tree.
43         This will requires two mandatory clocks to be defined.
44         Value type: <string-array>
45         Definition: must be "pll" and "aux"
46
47 = EXAMPLE
48 The following example describes the APCS HMSS found in MSM8996 and part of the
49 GLINK RPM referencing the "rpm_hlos" doorbell therein.
50
51         apcs_glb: mailbox@9820000 {
52                 compatible = "qcom,msm8996-apcs-hmss-global";
53                 reg = <0x9820000 0x1000>;
54
55                 #mbox-cells = <1>;
56         };
57
58         rpm-glink {
59                 compatible = "qcom,glink-rpm";
60
61                 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
62
63                 qcom,rpm-msg-ram = <&rpm_msg_ram>;
64
65                 mboxes = <&apcs_glb 0>;
66                 mbox-names = "rpm_hlos";
67         };
68
69 Below is another example of the APCS binding on MSM8916 platforms:
70
71         apcs: mailbox@b011000 {
72                 compatible = "qcom,msm8916-apcs-kpss-global";
73                 reg = <0xb011000 0x1000>;
74                 #mbox-cells = <1>;
75                 clocks = <&a53pll>;
76                 #clock-cells = <0>;
77         };
78
79 Below is another example of the APCS binding on QCS404 platforms:
80
81         apcs_glb: mailbox@b011000 {
82                 compatible = "qcom,qcs404-apcs-apps-global", "syscon";
83                 reg = <0x0b011000 0x1000>;
84                 #mbox-cells = <1>;
85                 clocks = <&apcs_hfpll>, <&gcc GCC_GPLL0_AO_OUT_MAIN>;
86                 clock-names = "pll", "aux";
87                 #clock-cells = <0>;
88         };