hc
2023-10-25 6c2073b7aa40e29d0eca7d571dd7bc590c7ecaa7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Binding for the Qualcomm APCS global block
==========================================
 
This binding describes the APCS "global" block found in various Qualcomm
platforms.
 
- compatible:
   Usage: required
   Value type: <string>
   Definition: must be one of:
           "qcom,msm8916-apcs-kpss-global",
           "qcom,msm8996-apcs-hmss-global"
           "qcom,msm8998-apcs-hmss-global"
           "qcom,sdm845-apss-shared"
 
- reg:
   Usage: required
   Value type: <prop-encoded-array>
   Definition: must specify the base address and size of the global block
- clocks:
   Usage: required if #clocks-cells property is present
   Value type: <phandle>
   Definition: phandle to the input PLL, which feeds the APCS mux/divider
 
- #mbox-cells:
   Usage: required
   Value type: <u32>
   Definition: as described in mailbox.txt, must be 1
 
- #clock-cells:
   Usage: optional
   Value type: <u32>
   Definition: as described in clock.txt, must be 0
 
 
= EXAMPLE
The following example describes the APCS HMSS found in MSM8996 and part of the
GLINK RPM referencing the "rpm_hlos" doorbell therein.
 
   apcs_glb: mailbox@9820000 {
       compatible = "qcom,msm8996-apcs-hmss-global";
       reg = <0x9820000 0x1000>;
 
       #mbox-cells = <1>;
   };
 
   rpm-glink {
       compatible = "qcom,glink-rpm";
 
       interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
 
       qcom,rpm-msg-ram = <&rpm_msg_ram>;
 
       mboxes = <&apcs_glb 0>;
       mbox-names = "rpm_hlos";
   };
 
Below is another example of the APCS binding on MSM8916 platforms:
 
   apcs: mailbox@b011000 {
       compatible = "qcom,msm8916-apcs-kpss-global";
       reg = <0xb011000 0x1000>;
       #mbox-cells = <1>;
       clocks = <&a53pll>;
       #clock-cells = <0>;
   };