xref: /freebsd/sys/contrib/device-tree/Bindings/remoteproc/qcom,q6v5.txt (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1c66ec88fSEmmanuel VadotQualcomm Hexagon Peripheral Image Loader
2c66ec88fSEmmanuel Vadot
3c66ec88fSEmmanuel VadotThis document defines the binding for a component that loads and boots firmware
4c66ec88fSEmmanuel Vadoton the Qualcomm Hexagon core.
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot- compatible:
7c66ec88fSEmmanuel Vadot	Usage: required
8c66ec88fSEmmanuel Vadot	Value type: <string>
9c66ec88fSEmmanuel Vadot	Definition: must be one of:
10c66ec88fSEmmanuel Vadot		    "qcom,ipq8074-wcss-pil"
112eb4d8dcSEmmanuel Vadot		    "qcom,qcs404-wcss-pil"
12c66ec88fSEmmanuel Vadot
13c66ec88fSEmmanuel Vadot- reg:
14c66ec88fSEmmanuel Vadot	Usage: required
15c66ec88fSEmmanuel Vadot	Value type: <prop-encoded-array>
16c66ec88fSEmmanuel Vadot	Definition: must specify the base address and size of the qdsp6 and
17c66ec88fSEmmanuel Vadot		    rmb register blocks
18c66ec88fSEmmanuel Vadot
19c66ec88fSEmmanuel Vadot- reg-names:
20c66ec88fSEmmanuel Vadot	Usage: required
21c66ec88fSEmmanuel Vadot	Value type: <stringlist>
22c66ec88fSEmmanuel Vadot	Definition: must be "q6dsp" and "rmb"
23c66ec88fSEmmanuel Vadot
24c66ec88fSEmmanuel Vadot- interrupts-extended:
25c66ec88fSEmmanuel Vadot	Usage: required
26c66ec88fSEmmanuel Vadot	Value type: <prop-encoded-array>
27c66ec88fSEmmanuel Vadot	Definition: reference to the interrupts that match interrupt-names
28c66ec88fSEmmanuel Vadot
29c66ec88fSEmmanuel Vadot- interrupt-names:
30c66ec88fSEmmanuel Vadot	Usage: required
31c66ec88fSEmmanuel Vadot	Value type: <stringlist>
32*cb7aa33aSEmmanuel Vadot	Definition: must be "wdog", "fatal", "ready", "handover", "stop-ack"
33c66ec88fSEmmanuel Vadot
34c66ec88fSEmmanuel Vadot- clocks:
35c66ec88fSEmmanuel Vadot	Usage: required
36c66ec88fSEmmanuel Vadot	Value type: <phandle>
37c66ec88fSEmmanuel Vadot	Definition: reference to the clocks that match clock-names
38c66ec88fSEmmanuel Vadot
39c66ec88fSEmmanuel Vadot- clock-names:
40c66ec88fSEmmanuel Vadot	Usage: required
41c66ec88fSEmmanuel Vadot	Value type: <stringlist>
42c66ec88fSEmmanuel Vadot	Definition: The clocks needed depend on the compatible string:
43c66ec88fSEmmanuel Vadot	qcom,ipq8074-wcss-pil:
44c66ec88fSEmmanuel Vadot		    no clock names required
452eb4d8dcSEmmanuel Vadot	qcom,qcs404-wcss-pil:
462eb4d8dcSEmmanuel Vadot		    must be "xo", "gcc_abhs_cbcr", "gcc_abhs_cbcr",
472eb4d8dcSEmmanuel Vadot		    "gcc_axim_cbcr", "lcc_ahbfabric_cbc", "tcsr_lcc_cbc",
482eb4d8dcSEmmanuel Vadot		    "lcc_abhs_cbc", "lcc_tcm_slave_cbc", "lcc_abhm_cbc",
492eb4d8dcSEmmanuel Vadot		    "lcc_axim_cbc", "lcc_bcr_sleep"
50c66ec88fSEmmanuel Vadot
51c66ec88fSEmmanuel Vadot- resets:
52c66ec88fSEmmanuel Vadot	Usage: required
53c66ec88fSEmmanuel Vadot	Value type: <phandle>
54*cb7aa33aSEmmanuel Vadot	Definition: reference to the list of 3 reset-controllers for the
55c66ec88fSEmmanuel Vadot		    wcss sub-system
56c66ec88fSEmmanuel Vadot
57c66ec88fSEmmanuel Vadot- reset-names:
58c66ec88fSEmmanuel Vadot	Usage: required
59c66ec88fSEmmanuel Vadot	Value type: <stringlist>
60*cb7aa33aSEmmanuel Vadot	Definition: must be "wcss_aon_reset", "wcss_reset", "wcss_q6_reset"
61c66ec88fSEmmanuel Vadot		    for the wcss sub-system
62c66ec88fSEmmanuel Vadot
63c66ec88fSEmmanuel Vadot- memory-region:
64c66ec88fSEmmanuel Vadot	Usage: required
65c66ec88fSEmmanuel Vadot	Value type: <phandle>
66*cb7aa33aSEmmanuel Vadot	Definition: reference to wcss reserved-memory region.
67c66ec88fSEmmanuel Vadot
68c66ec88fSEmmanuel VadotFor the compatible string below the following supplies are required:
692eb4d8dcSEmmanuel Vadot  "qcom,qcs404-wcss-pil"
702eb4d8dcSEmmanuel Vadot- cx-supply:
712eb4d8dcSEmmanuel Vadot	Usage: required
722eb4d8dcSEmmanuel Vadot	Value type: <phandle>
732eb4d8dcSEmmanuel Vadot	Definition: reference to the regulators to be held on behalf of the
742eb4d8dcSEmmanuel Vadot		    booting of the Hexagon core
752eb4d8dcSEmmanuel Vadot
76c66ec88fSEmmanuel Vadot- qcom,smem-states:
77c66ec88fSEmmanuel Vadot	Usage: required
78c66ec88fSEmmanuel Vadot	Value type: <phandle>
79c66ec88fSEmmanuel Vadot	Definition: reference to the smem state for requesting the Hexagon to
80c66ec88fSEmmanuel Vadot		    shut down
81c66ec88fSEmmanuel Vadot
82c66ec88fSEmmanuel Vadot- qcom,smem-state-names:
83c66ec88fSEmmanuel Vadot	Usage: required
84c66ec88fSEmmanuel Vadot	Value type: <stringlist>
85c66ec88fSEmmanuel Vadot	Definition: must be "stop"
86c66ec88fSEmmanuel Vadot
87c66ec88fSEmmanuel Vadot- qcom,halt-regs:
88c66ec88fSEmmanuel Vadot	Usage: required
89c66ec88fSEmmanuel Vadot	Value type: <prop-encoded-array>
90c66ec88fSEmmanuel Vadot	Definition: a phandle reference to a syscon representing TCSR followed
91*cb7aa33aSEmmanuel Vadot		    by the three offsets within syscon for q6, wcss and nc
92c66ec88fSEmmanuel Vadot		    halt registers.
938cc087a1SEmmanuel Vadot
94c66ec88fSEmmanuel Vadot- memory-region:
95c66ec88fSEmmanuel Vadot	Usage: required
96c66ec88fSEmmanuel Vadot	Value type: <phandle>
97c66ec88fSEmmanuel Vadot	Definition: reference to the reserved-memory for the region
98c66ec88fSEmmanuel Vadot
99c66ec88fSEmmanuel VadotThe Hexagon node may also have an subnode named either "smd-edge" or
100c66ec88fSEmmanuel Vadot"glink-edge" that describes the communication edge, channels and devices
101d5b0e70fSEmmanuel Vadotrelated to the Hexagon.  See ../soc/qcom/qcom,smd.yaml and
102c66ec88fSEmmanuel Vadot../soc/qcom/qcom,glink.txt for details on how to describe these.
103