Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ffac1ad2 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "dt-bindings: soc: qcom: Introduce Glink Pkt bindings"

parents 5e465d0a 732211dd
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
Qualcomm Technologies, Inc. G-Link Packet Driver (glinkpkt)

[Root level node]
Required properties:
-compatible : should be "qcom,glinkpkt"

[Second level nodes]
qcom,glinkpkt-channel-names
Required properties:
-qcom,glinkpkt-transport : the glinkpkt transport layer
-qcom,glinkpkt-edge : the remote subsystem name
-qcom,glinkpkt-ch-name : the glink channel name
-qcom,glinkpkt-dev-name : the glinkpkt device name

Example:

         qcom,glink_pkt {
                 compatible = "qcom,glinkpkt";

                 qcom,glinkpkt-at-mdm0 {
                         qcom,glinkpkt-transport = "smd_trans";
                         qcom,glinkpkt-edge = "mpss";
                         qcom,glinkpkt-ch-name = "DS";
                         qcom,glinkpkt-dev-name = "at_mdm0";
                 };

                 qcom,glinkpkt-loopback-cntl {
                         qcom,glinkpkt-transport = "lloop";
                         qcom,glinkpkt-edge = "local";
                         qcom,glinkpkt-ch-name = "LOCAL_LOOPBACK_CLNT";
                         qcom,glinkpkt-dev-name = "glink_pkt_loopback_ctrl";
                 };

                 qcom,glinkpkt-loopback-data {
                         qcom,glinkpkt-transport = "lloop";
                         qcom,glinkpkt-edge = "local";
                         qcom,glinkpkt-ch-name = "glink_pkt_lloop_CLNT";
                         qcom,glinkpkt-dev-name = "glink_pkt_loopback";
                 };
         };
+69 −0
Original line number Diff line number Diff line
Qualcomm Technologies, Inc. GLINK Probe

This binding describes the GLINK Probe driver, a device
that initializes the GLINK edge pairs within the system.

- compatible :
	Usage: required
	Value type: <stringlist>
	Definition: must be "qcom,glink"

= SUBNODES
The GLINK probe node must contain subnodes that describes the
edge-pairs. See qcom,glink.txt for details on how to describe them.

In addition to the properties in qcom,glink.txt, The GLINK Probe driver
requires the qcom,glink-label and transport type to be specified in the
subnodes.

- transport :
	Usage: required
	Value type: <stringlist>
	Definition: must be "smem", "spss", or "spi"

- qcom,glink-label :
	Usage: required
	Value type: <stringlist>
	Definition: specifies the identifier of the remote proc of this edge.

= GLINK_SSR
The GLINK probe driver also initializes the GLINK_SSR channel for the edges
that it brings up. The channel should be specified as a subnode to each edge. In
addition to the properties in qcom,glink.txt to specify a channel device node,
the qcom,notify-edges property must be defined.

- qcom,notify-edges :
	Usage: required
	Value type: <prop-encoded-array>
	Definition: list of phandles that specify the subsystems this glink edge
		    needs to receive ssr notifications about.

= EXAMPLE
qcom,glink {
	compatible = "qcom,glink";
	glink_modem: modem {
		transport = "smem";
		qcom,remote-pid = <0>;
		mboxes = <&apcs_glb 8>;
		mbox-names = "mpss_smem";
		interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;

		qcom,modem_glink_ssr {
			qcom,glink-channels = "glink_ssr";
			qcom,notify-edges = <&glink_adsp>;
		};
	};

	glink_adsp: adsp {
		transport = "smem";
		qcom,remote-pid = <2>;
		mboxes = <&apcs_glb 4>;
		mbox-names = "adsp_smem";
		interrupts = <GIC_SPI 348 IRQ_TYPE_EDGE_RISING>;

		qcom,modem_glink_ssr {
			qcom,glink-channels = "glink_ssr";
			qcom,notify-edges = <&glink_modem>;
		};
	};
};