1 Qualcomm GLINK edge binding
3 This binding describes a Qualcomm GLINK edge, a fifo based mechanism for
4 communication between subsystem-pairs on various Qualcomm platforms. Two types
5 of edges can be described by the binding; the GLINK RPM edge and a SMEM based
9 Usage: required for glink-rpm
10 Value type: <stringlist>
11 Definition: must be "qcom,glink-rpm"
15 Value type: <prop-encoded-array>
16 Definition: should specify the IRQ used by the remote processor to
17 signal this processor about communication related events
20 Usage: required for glink-rpm
21 Value type: <prop-encoded-array>
22 Definition: handle to RPM message memory resource
26 Value type: <prop-encoded-array>
27 Definition: reference to the "rpm_hlos" mailbox in APCS, as described
28 in mailbox/mailbox.txt
31 Each subnode of the GLINK node represent function tied to a virtual
32 communication channel. The name of the nodes are not important. The properties
33 of these nodes are defined by the individual bindings for the specific function
34 - but must contain the following property:
36 - qcom,glink-channels:
38 Value type: <stringlist>
39 Definition: a list of channels tied to this function, used for matching
40 the function to a set of virtual channels
43 The following example represents the GLINK RPM node on a MSM8996 device, with
44 the function for the "rpm_request" channel defined, which is used for
45 regualtors and root clocks.
47 apcs_glb: mailbox@9820000 {
48 compatible = "qcom,msm8996-apcs-hmss-global";
49 reg = <0x9820000 0x1000>;
54 rpm_msg_ram: memory@68000 {
55 compatible = "qcom,rpm-msg-ram";
56 reg = <0x68000 0x6000>;
60 compatible = "qcom,glink-rpm";
62 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
64 qcom,rpm-msg-ram = <&rpm_msg_ram>;
66 mboxes = <&apcs_glb 0>;
69 compatible = "qcom,rpm-msm8996";
70 qcom,glink-channels = "rpm_requests";