Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | Qualcomm Hexagon Peripheral Image Loader |
| 2 | |
| 3 | This document defines the binding for a component that loads and boots firmware |
| 4 | on the Qualcomm Hexagon core. |
| 5 | |
| 6 | - compatible: |
| 7 | Usage: required |
| 8 | Value type: <string> |
| 9 | Definition: must be one of: |
| 10 | "qcom,ipq8074-wcss-pil" |
| 11 | "qcom,qcs404-wcss-pil" |
| 12 | |
| 13 | - reg: |
| 14 | Usage: required |
| 15 | Value type: <prop-encoded-array> |
| 16 | Definition: must specify the base address and size of the qdsp6 and |
| 17 | rmb register blocks |
| 18 | |
| 19 | - reg-names: |
| 20 | Usage: required |
| 21 | Value type: <stringlist> |
| 22 | Definition: must be "q6dsp" and "rmb" |
| 23 | |
| 24 | - interrupts-extended: |
| 25 | Usage: required |
| 26 | Value type: <prop-encoded-array> |
| 27 | Definition: reference to the interrupts that match interrupt-names |
| 28 | |
| 29 | - interrupt-names: |
| 30 | Usage: required |
| 31 | Value type: <stringlist> |
| 32 | Definition: must be "wdog", "fatal", "ready", "handover", "stop-ack" |
| 33 | |
| 34 | - clocks: |
| 35 | Usage: required |
| 36 | Value type: <phandle> |
| 37 | Definition: reference to the clocks that match clock-names |
| 38 | |
| 39 | - clock-names: |
| 40 | Usage: required |
| 41 | Value type: <stringlist> |
| 42 | Definition: The clocks needed depend on the compatible string: |
| 43 | qcom,ipq8074-wcss-pil: |
| 44 | no clock names required |
| 45 | qcom,qcs404-wcss-pil: |
| 46 | must be "xo", "gcc_abhs_cbcr", "gcc_abhs_cbcr", |
| 47 | "gcc_axim_cbcr", "lcc_ahbfabric_cbc", "tcsr_lcc_cbc", |
| 48 | "lcc_abhs_cbc", "lcc_tcm_slave_cbc", "lcc_abhm_cbc", |
| 49 | "lcc_axim_cbc", "lcc_bcr_sleep" |
| 50 | |
| 51 | - resets: |
| 52 | Usage: required |
| 53 | Value type: <phandle> |
| 54 | Definition: reference to the list of 3 reset-controllers for the |
| 55 | wcss sub-system |
| 56 | |
| 57 | - reset-names: |
| 58 | Usage: required |
| 59 | Value type: <stringlist> |
| 60 | Definition: must be "wcss_aon_reset", "wcss_reset", "wcss_q6_reset" |
| 61 | for the wcss sub-system |
| 62 | |
| 63 | - memory-region: |
| 64 | Usage: required |
| 65 | Value type: <phandle> |
| 66 | Definition: reference to wcss reserved-memory region. |
| 67 | |
| 68 | For the compatible string below the following supplies are required: |
| 69 | "qcom,qcs404-wcss-pil" |
| 70 | - cx-supply: |
| 71 | Usage: required |
| 72 | Value type: <phandle> |
| 73 | Definition: reference to the regulators to be held on behalf of the |
| 74 | booting of the Hexagon core |
| 75 | |
| 76 | - qcom,smem-states: |
| 77 | Usage: required |
| 78 | Value type: <phandle> |
| 79 | Definition: reference to the smem state for requesting the Hexagon to |
| 80 | shut down |
| 81 | |
| 82 | - qcom,smem-state-names: |
| 83 | Usage: required |
| 84 | Value type: <stringlist> |
| 85 | Definition: must be "stop" |
| 86 | |
| 87 | - qcom,halt-regs: |
| 88 | Usage: required |
| 89 | Value type: <prop-encoded-array> |
| 90 | Definition: a phandle reference to a syscon representing TCSR followed |
| 91 | by the three offsets within syscon for q6, wcss and nc |
| 92 | halt registers. |
| 93 | |
| 94 | - memory-region: |
| 95 | Usage: required |
| 96 | Value type: <phandle> |
| 97 | Definition: reference to the reserved-memory for the region |
| 98 | |
| 99 | The Hexagon node may also have an subnode named either "smd-edge" or |
| 100 | "glink-edge" that describes the communication edge, channels and devices |
| 101 | related to the Hexagon. See ../soc/qcom/qcom,smd.yaml and |
| 102 | ../soc/qcom/qcom,glink.txt for details on how to describe these. |