summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt
blob: 0d2361ebe3d739e85c9a59cfa4e9441f30c57177 (plain)
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
Qualcomm WCNSS Peripheral Image Loader

This document defines the binding for a component that loads and boots firmware
on the Qualcomm WCNSS core.

- compatible:
	Usage: required
	Value type: <string>
	Definition: must be one of:
		    "qcom,riva-pil",
		    "qcom,pronto-v1-pil",
		    "qcom,pronto-v2-pil"

- reg:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: must specify the base address and size of the CCU, DXE and
		    PMU register blocks

- reg-names:
	Usage: required
	Value type: <stringlist>
	Definition: must be "ccu", "dxe", "pmu"

- interrupts-extended:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: must list the watchdog and fatal IRQs and may specify the
		    ready, handover and stop-ack IRQs

- interrupt-names:
	Usage: required
	Value type: <stringlist>
	Definition: should be "wdog", "fatal", optionally followed by "ready",
		    "handover", "stop-ack"

- vddmx-supply:
- vddcx-supply:
- vddpx-supply:
	Usage: required
	Value type: <phandle>
	Definition: reference to the regulators to be held on behalf of the
		    booting of the WCNSS core

- qcom,smem-states:
	Usage: optional
	Value type: <prop-encoded-array>
	Definition: reference to the SMEM state used to indicate to WCNSS that
		    it should shut down

- qcom,smem-state-names:
	Usage: optional
	Value type: <stringlist>
	Definition: should be "stop"

- memory-region:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: reference to reserved-memory node for the remote processor
		    see ../reserved-memory/reserved-memory.txt

= SUBNODES
A single subnode of the WCNSS PIL describes the attached rf module and its
resource dependencies.

- compatible:
	Usage: required
	Value type: <string>
	Definition: must be one of:
		    "qcom,wcn3620",
		    "qcom,wcn3660",
		    "qcom,wcn3680"

- clocks:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: should specify the xo clock and optionally the rf clock

- clock-names:
	Usage: required
	Value type: <stringlist>
	Definition: should be "xo", optionally followed by "rf"

- vddxo-supply:
- vddrfa-supply:
- vddpa-supply:
- vdddig-supply:
	Usage: required
	Value type: <phandle>
	Definition: reference to the regulators to be held on behalf of the
		    booting of the WCNSS core

= EXAMPLE
The following example describes the resources needed to boot control the WCNSS,
with attached WCN3680, as it is commonly found on MSM8974 boards.

pronto@fb204000 {
	compatible = "qcom,pronto-v2-pil";
	reg = <0xfb204000 0x2000>, <0xfb202000 0x1000>, <0xfb21b000 0x3000>;
	reg-names = "ccu", "dxe", "pmu";

	interrupts-extended = <&intc 0 149 1>,
			      <&wcnss_smp2p_slave 0 0>,
			      <&wcnss_smp2p_slave 1 0>,
			      <&wcnss_smp2p_slave 2 0>,
			      <&wcnss_smp2p_slave 3 0>;
	interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";

	vddmx-supply = <&pm8841_s1>;
	vddcx-supply = <&pm8841_s2>;
	vddpx-supply = <&pm8941_s3>;

	qcom,smem-states = <&wcnss_smp2p_out 0>;
	qcom,smem-state-names = "stop";

	memory-region = <&wcnss_region>;

	pinctrl-names = "default";
	pinctrl-0 = <&wcnss_pin_a>;

	iris {
		compatible = "qcom,wcn3680";

		clocks = <&rpmcc RPM_CXO_CLK_SRC>, <&rpmcc RPM_CXO_A2>;
		clock-names = "xo", "rf";

		vddxo-supply = <&pm8941_l6>;
		vddrfa-supply = <&pm8941_l11>;
		vddpa-supply = <&pm8941_l19>;
		vdddig-supply = <&pm8941_s3>;
	};
};