162306a36Sopenharmony_ciQualcomm Hexagon Peripheral Image Loader
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciThis document defines the binding for a component that loads and boots firmware
462306a36Sopenharmony_cion the Qualcomm Hexagon core.
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci- compatible:
762306a36Sopenharmony_ci	Usage: required
862306a36Sopenharmony_ci	Value type: <string>
962306a36Sopenharmony_ci	Definition: must be one of:
1062306a36Sopenharmony_ci		    "qcom,ipq8074-wcss-pil"
1162306a36Sopenharmony_ci		    "qcom,qcs404-wcss-pil"
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci- reg:
1462306a36Sopenharmony_ci	Usage: required
1562306a36Sopenharmony_ci	Value type: <prop-encoded-array>
1662306a36Sopenharmony_ci	Definition: must specify the base address and size of the qdsp6 and
1762306a36Sopenharmony_ci		    rmb register blocks
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci- reg-names:
2062306a36Sopenharmony_ci	Usage: required
2162306a36Sopenharmony_ci	Value type: <stringlist>
2262306a36Sopenharmony_ci	Definition: must be "q6dsp" and "rmb"
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci- interrupts-extended:
2562306a36Sopenharmony_ci	Usage: required
2662306a36Sopenharmony_ci	Value type: <prop-encoded-array>
2762306a36Sopenharmony_ci	Definition: reference to the interrupts that match interrupt-names
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci- interrupt-names:
3062306a36Sopenharmony_ci	Usage: required
3162306a36Sopenharmony_ci	Value type: <stringlist>
3262306a36Sopenharmony_ci	Definition: must be "wdog", "fatal", "ready", "handover", "stop-ack"
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci- clocks:
3562306a36Sopenharmony_ci	Usage: required
3662306a36Sopenharmony_ci	Value type: <phandle>
3762306a36Sopenharmony_ci	Definition: reference to the clocks that match clock-names
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci- clock-names:
4062306a36Sopenharmony_ci	Usage: required
4162306a36Sopenharmony_ci	Value type: <stringlist>
4262306a36Sopenharmony_ci	Definition: The clocks needed depend on the compatible string:
4362306a36Sopenharmony_ci	qcom,ipq8074-wcss-pil:
4462306a36Sopenharmony_ci		    no clock names required
4562306a36Sopenharmony_ci	qcom,qcs404-wcss-pil:
4662306a36Sopenharmony_ci		    must be "xo", "gcc_abhs_cbcr", "gcc_abhs_cbcr",
4762306a36Sopenharmony_ci		    "gcc_axim_cbcr", "lcc_ahbfabric_cbc", "tcsr_lcc_cbc",
4862306a36Sopenharmony_ci		    "lcc_abhs_cbc", "lcc_tcm_slave_cbc", "lcc_abhm_cbc",
4962306a36Sopenharmony_ci		    "lcc_axim_cbc", "lcc_bcr_sleep"
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci- resets:
5262306a36Sopenharmony_ci	Usage: required
5362306a36Sopenharmony_ci	Value type: <phandle>
5462306a36Sopenharmony_ci	Definition: reference to the list of 3 reset-controllers for the
5562306a36Sopenharmony_ci		    wcss sub-system
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ci- reset-names:
5862306a36Sopenharmony_ci	Usage: required
5962306a36Sopenharmony_ci	Value type: <stringlist>
6062306a36Sopenharmony_ci	Definition: must be "wcss_aon_reset", "wcss_reset", "wcss_q6_reset"
6162306a36Sopenharmony_ci		    for the wcss sub-system
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci- memory-region:
6462306a36Sopenharmony_ci	Usage: required
6562306a36Sopenharmony_ci	Value type: <phandle>
6662306a36Sopenharmony_ci	Definition: reference to wcss reserved-memory region.
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ciFor the compatible string below the following supplies are required:
6962306a36Sopenharmony_ci  "qcom,qcs404-wcss-pil"
7062306a36Sopenharmony_ci- cx-supply:
7162306a36Sopenharmony_ci	Usage: required
7262306a36Sopenharmony_ci	Value type: <phandle>
7362306a36Sopenharmony_ci	Definition: reference to the regulators to be held on behalf of the
7462306a36Sopenharmony_ci		    booting of the Hexagon core
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci- qcom,smem-states:
7762306a36Sopenharmony_ci	Usage: required
7862306a36Sopenharmony_ci	Value type: <phandle>
7962306a36Sopenharmony_ci	Definition: reference to the smem state for requesting the Hexagon to
8062306a36Sopenharmony_ci		    shut down
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ci- qcom,smem-state-names:
8362306a36Sopenharmony_ci	Usage: required
8462306a36Sopenharmony_ci	Value type: <stringlist>
8562306a36Sopenharmony_ci	Definition: must be "stop"
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci- qcom,halt-regs:
8862306a36Sopenharmony_ci	Usage: required
8962306a36Sopenharmony_ci	Value type: <prop-encoded-array>
9062306a36Sopenharmony_ci	Definition: a phandle reference to a syscon representing TCSR followed
9162306a36Sopenharmony_ci		    by the three offsets within syscon for q6, wcss and nc
9262306a36Sopenharmony_ci		    halt registers.
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci- memory-region:
9562306a36Sopenharmony_ci	Usage: required
9662306a36Sopenharmony_ci	Value type: <phandle>
9762306a36Sopenharmony_ci	Definition: reference to the reserved-memory for the region
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ciThe Hexagon node may also have an subnode named either "smd-edge" or
10062306a36Sopenharmony_ci"glink-edge" that describes the communication edge, channels and devices
10162306a36Sopenharmony_cirelated to the Hexagon.  See ../soc/qcom/qcom,smd.yaml and
10262306a36Sopenharmony_ci../soc/qcom/qcom,glink.txt for details on how to describe these.
103