1*8490a995SSrinivasa Rao Mandadapu# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*8490a995SSrinivasa Rao Mandadapu%YAML 1.2 3*8490a995SSrinivasa Rao Mandadapu--- 4*8490a995SSrinivasa Rao Mandadapu$id: http://devicetree.org/schemas/remoteproc/qcom,sc7280-adsp-pil.yaml# 5*8490a995SSrinivasa Rao Mandadapu$schema: http://devicetree.org/meta-schemas/core.yaml# 6*8490a995SSrinivasa Rao Mandadapu 7*8490a995SSrinivasa Rao Mandadaputitle: Qualcomm SC7280 ADSP Peripheral Image Loader 8*8490a995SSrinivasa Rao Mandadapu 9*8490a995SSrinivasa Rao Mandadapumaintainers: 10*8490a995SSrinivasa Rao Mandadapu - Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com> 11*8490a995SSrinivasa Rao Mandadapu 12*8490a995SSrinivasa Rao Mandadapudescription: 13*8490a995SSrinivasa Rao Mandadapu This document describes the hardware for a component that loads and boots firmware 14*8490a995SSrinivasa Rao Mandadapu on the Qualcomm Technology Inc. ADSP. 15*8490a995SSrinivasa Rao Mandadapu 16*8490a995SSrinivasa Rao Mandadapuproperties: 17*8490a995SSrinivasa Rao Mandadapu compatible: 18*8490a995SSrinivasa Rao Mandadapu enum: 19*8490a995SSrinivasa Rao Mandadapu - qcom,sc7280-adsp-pil 20*8490a995SSrinivasa Rao Mandadapu 21*8490a995SSrinivasa Rao Mandadapu reg: 22*8490a995SSrinivasa Rao Mandadapu items: 23*8490a995SSrinivasa Rao Mandadapu - description: qdsp6ss register 24*8490a995SSrinivasa Rao Mandadapu - description: efuse q6ss register 25*8490a995SSrinivasa Rao Mandadapu 26*8490a995SSrinivasa Rao Mandadapu iommus: 27*8490a995SSrinivasa Rao Mandadapu items: 28*8490a995SSrinivasa Rao Mandadapu - description: Phandle to apps_smmu node with sid mask 29*8490a995SSrinivasa Rao Mandadapu 30*8490a995SSrinivasa Rao Mandadapu interrupts: 31*8490a995SSrinivasa Rao Mandadapu items: 32*8490a995SSrinivasa Rao Mandadapu - description: Watchdog interrupt 33*8490a995SSrinivasa Rao Mandadapu - description: Fatal interrupt 34*8490a995SSrinivasa Rao Mandadapu - description: Ready interrupt 35*8490a995SSrinivasa Rao Mandadapu - description: Handover interrupt 36*8490a995SSrinivasa Rao Mandadapu - description: Stop acknowledge interrupt 37*8490a995SSrinivasa Rao Mandadapu - description: Shutdown acknowledge interrupt 38*8490a995SSrinivasa Rao Mandadapu 39*8490a995SSrinivasa Rao Mandadapu interrupt-names: 40*8490a995SSrinivasa Rao Mandadapu items: 41*8490a995SSrinivasa Rao Mandadapu - const: wdog 42*8490a995SSrinivasa Rao Mandadapu - const: fatal 43*8490a995SSrinivasa Rao Mandadapu - const: ready 44*8490a995SSrinivasa Rao Mandadapu - const: handover 45*8490a995SSrinivasa Rao Mandadapu - const: stop-ack 46*8490a995SSrinivasa Rao Mandadapu - const: shutdown-ack 47*8490a995SSrinivasa Rao Mandadapu 48*8490a995SSrinivasa Rao Mandadapu clocks: 49*8490a995SSrinivasa Rao Mandadapu items: 50*8490a995SSrinivasa Rao Mandadapu - description: XO clock 51*8490a995SSrinivasa Rao Mandadapu - description: GCC CFG NOC LPASS clock 52*8490a995SSrinivasa Rao Mandadapu 53*8490a995SSrinivasa Rao Mandadapu clock-names: 54*8490a995SSrinivasa Rao Mandadapu items: 55*8490a995SSrinivasa Rao Mandadapu - const: xo 56*8490a995SSrinivasa Rao Mandadapu - const: gcc_cfg_noc_lpass 57*8490a995SSrinivasa Rao Mandadapu 58*8490a995SSrinivasa Rao Mandadapu power-domains: 59*8490a995SSrinivasa Rao Mandadapu items: 60*8490a995SSrinivasa Rao Mandadapu - description: LCX power domain 61*8490a995SSrinivasa Rao Mandadapu 62*8490a995SSrinivasa Rao Mandadapu resets: 63*8490a995SSrinivasa Rao Mandadapu items: 64*8490a995SSrinivasa Rao Mandadapu - description: PDC AUDIO SYNC RESET 65*8490a995SSrinivasa Rao Mandadapu - description: CC LPASS restart 66*8490a995SSrinivasa Rao Mandadapu 67*8490a995SSrinivasa Rao Mandadapu reset-names: 68*8490a995SSrinivasa Rao Mandadapu items: 69*8490a995SSrinivasa Rao Mandadapu - const: pdc_sync 70*8490a995SSrinivasa Rao Mandadapu - const: cc_lpass 71*8490a995SSrinivasa Rao Mandadapu 72*8490a995SSrinivasa Rao Mandadapu memory-region: 73*8490a995SSrinivasa Rao Mandadapu maxItems: 1 74*8490a995SSrinivasa Rao Mandadapu description: Reference to the reserved-memory for the Hexagon core 75*8490a995SSrinivasa Rao Mandadapu 76*8490a995SSrinivasa Rao Mandadapu qcom,halt-regs: 77*8490a995SSrinivasa Rao Mandadapu $ref: /schemas/types.yaml#/definitions/phandle-array 78*8490a995SSrinivasa Rao Mandadapu description: 79*8490a995SSrinivasa Rao Mandadapu Phandle reference to a syscon representing TCSR followed by the 80*8490a995SSrinivasa Rao Mandadapu four offsets within syscon for q6, modem, nc and qv6 halt registers. 81*8490a995SSrinivasa Rao Mandadapu items: 82*8490a995SSrinivasa Rao Mandadapu - items: 83*8490a995SSrinivasa Rao Mandadapu - description: phandle to TCSR_MUTEX registers 84*8490a995SSrinivasa Rao Mandadapu - description: offset to the Q6 halt register 85*8490a995SSrinivasa Rao Mandadapu - description: offset to the modem halt register 86*8490a995SSrinivasa Rao Mandadapu - description: offset to the nc halt register 87*8490a995SSrinivasa Rao Mandadapu - description: offset to the vq6 halt register 88*8490a995SSrinivasa Rao Mandadapu 89*8490a995SSrinivasa Rao Mandadapu qcom,smem-states: 90*8490a995SSrinivasa Rao Mandadapu $ref: /schemas/types.yaml#/definitions/phandle-array 91*8490a995SSrinivasa Rao Mandadapu description: States used by the AP to signal the Hexagon core 92*8490a995SSrinivasa Rao Mandadapu items: 93*8490a995SSrinivasa Rao Mandadapu - description: Stop the modem 94*8490a995SSrinivasa Rao Mandadapu 95*8490a995SSrinivasa Rao Mandadapu qcom,smem-state-names: 96*8490a995SSrinivasa Rao Mandadapu description: The names of the state bits used for SMP2P output 97*8490a995SSrinivasa Rao Mandadapu const: stop 98*8490a995SSrinivasa Rao Mandadapu 99*8490a995SSrinivasa Rao Mandadapu qcom,qmp: 100*8490a995SSrinivasa Rao Mandadapu $ref: /schemas/types.yaml#/definitions/phandle 101*8490a995SSrinivasa Rao Mandadapu description: Reference to the AOSS side-channel message RAM. 102*8490a995SSrinivasa Rao Mandadapu 103*8490a995SSrinivasa Rao Mandadapu glink-edge: 104*8490a995SSrinivasa Rao Mandadapu $ref: qcom,glink-edge.yaml# 105*8490a995SSrinivasa Rao Mandadapu type: object 106*8490a995SSrinivasa Rao Mandadapu unevaluatedProperties: false 107*8490a995SSrinivasa Rao Mandadapu description: | 108*8490a995SSrinivasa Rao Mandadapu Qualcomm G-Link subnode which represents communication edge, channels 109*8490a995SSrinivasa Rao Mandadapu and devices related to the ADSP. 110*8490a995SSrinivasa Rao Mandadapu 111*8490a995SSrinivasa Rao Mandadapu properties: 112*8490a995SSrinivasa Rao Mandadapu label: 113*8490a995SSrinivasa Rao Mandadapu const: lpass 114*8490a995SSrinivasa Rao Mandadapu 115*8490a995SSrinivasa Rao Mandadapu gpr: true 116*8490a995SSrinivasa Rao Mandadapu apr: false 117*8490a995SSrinivasa Rao Mandadapu fastrpc: false 118*8490a995SSrinivasa Rao Mandadapu 119*8490a995SSrinivasa Rao Mandadapu required: 120*8490a995SSrinivasa Rao Mandadapu - label 121*8490a995SSrinivasa Rao Mandadapu 122*8490a995SSrinivasa Rao Mandadapurequired: 123*8490a995SSrinivasa Rao Mandadapu - compatible 124*8490a995SSrinivasa Rao Mandadapu - reg 125*8490a995SSrinivasa Rao Mandadapu - interrupts 126*8490a995SSrinivasa Rao Mandadapu - interrupt-names 127*8490a995SSrinivasa Rao Mandadapu - clocks 128*8490a995SSrinivasa Rao Mandadapu - clock-names 129*8490a995SSrinivasa Rao Mandadapu - power-domains 130*8490a995SSrinivasa Rao Mandadapu - resets 131*8490a995SSrinivasa Rao Mandadapu - reset-names 132*8490a995SSrinivasa Rao Mandadapu - qcom,halt-regs 133*8490a995SSrinivasa Rao Mandadapu - memory-region 134*8490a995SSrinivasa Rao Mandadapu - qcom,smem-states 135*8490a995SSrinivasa Rao Mandadapu - qcom,smem-state-names 136*8490a995SSrinivasa Rao Mandadapu - qcom,qmp 137*8490a995SSrinivasa Rao Mandadapu 138*8490a995SSrinivasa Rao MandadapuadditionalProperties: false 139*8490a995SSrinivasa Rao Mandadapu 140*8490a995SSrinivasa Rao Mandadapuexamples: 141*8490a995SSrinivasa Rao Mandadapu - | 142*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/interrupt-controller/arm-gic.h> 143*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/clock/qcom,rpmh.h> 144*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/clock/qcom,gcc-sc7280.h> 145*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/clock/qcom,lpass-sc7280.h> 146*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/reset/qcom,sdm845-aoss.h> 147*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/reset/qcom,sdm845-pdc.h> 148*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/power/qcom-rpmpd.h> 149*8490a995SSrinivasa Rao Mandadapu #include <dt-bindings/mailbox/qcom-ipcc.h> 150*8490a995SSrinivasa Rao Mandadapu 151*8490a995SSrinivasa Rao Mandadapu remoteproc@3000000 { 152*8490a995SSrinivasa Rao Mandadapu compatible = "qcom,sc7280-adsp-pil"; 153*8490a995SSrinivasa Rao Mandadapu reg = <0x03000000 0x5000>, 154*8490a995SSrinivasa Rao Mandadapu <0x0355b000 0x10>; 155*8490a995SSrinivasa Rao Mandadapu 156*8490a995SSrinivasa Rao Mandadapu interrupts-extended = <&pdc 162 IRQ_TYPE_EDGE_RISING>, 157*8490a995SSrinivasa Rao Mandadapu <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 158*8490a995SSrinivasa Rao Mandadapu <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 159*8490a995SSrinivasa Rao Mandadapu <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 160*8490a995SSrinivasa Rao Mandadapu <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 161*8490a995SSrinivasa Rao Mandadapu <&adsp_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 162*8490a995SSrinivasa Rao Mandadapu 163*8490a995SSrinivasa Rao Mandadapu interrupt-names = "wdog", "fatal", "ready", 164*8490a995SSrinivasa Rao Mandadapu "handover", "stop-ack", "shutdown-ack"; 165*8490a995SSrinivasa Rao Mandadapu 166*8490a995SSrinivasa Rao Mandadapu clocks = <&rpmhcc RPMH_CXO_CLK>, 167*8490a995SSrinivasa Rao Mandadapu <&gcc GCC_CFG_NOC_LPASS_CLK>; 168*8490a995SSrinivasa Rao Mandadapu clock-names = "xo", "gcc_cfg_noc_lpass"; 169*8490a995SSrinivasa Rao Mandadapu 170*8490a995SSrinivasa Rao Mandadapu power-domains = <&rpmhpd SC7280_LCX>; 171*8490a995SSrinivasa Rao Mandadapu 172*8490a995SSrinivasa Rao Mandadapu resets = <&pdc_reset PDC_AUDIO_SYNC_RESET>, 173*8490a995SSrinivasa Rao Mandadapu <&aoss_reset AOSS_CC_LPASS_RESTART>; 174*8490a995SSrinivasa Rao Mandadapu reset-names = "pdc_sync", "cc_lpass"; 175*8490a995SSrinivasa Rao Mandadapu 176*8490a995SSrinivasa Rao Mandadapu qcom,halt-regs = <&tcsr_mutex 0x23000 0x25000 0x28000 0x33000>; 177*8490a995SSrinivasa Rao Mandadapu 178*8490a995SSrinivasa Rao Mandadapu memory-region = <&adsp_mem>; 179*8490a995SSrinivasa Rao Mandadapu 180*8490a995SSrinivasa Rao Mandadapu qcom,smem-states = <&adsp_smp2p_out 0>; 181*8490a995SSrinivasa Rao Mandadapu qcom,smem-state-names = "stop"; 182*8490a995SSrinivasa Rao Mandadapu 183*8490a995SSrinivasa Rao Mandadapu qcom,qmp = <&aoss_qmp>; 184*8490a995SSrinivasa Rao Mandadapu 185*8490a995SSrinivasa Rao Mandadapu glink-edge { 186*8490a995SSrinivasa Rao Mandadapu interrupts-extended = <&ipcc IPCC_CLIENT_LPASS 187*8490a995SSrinivasa Rao Mandadapu IPCC_MPROC_SIGNAL_GLINK_QMP 188*8490a995SSrinivasa Rao Mandadapu IRQ_TYPE_EDGE_RISING>; 189*8490a995SSrinivasa Rao Mandadapu mboxes = <&ipcc IPCC_CLIENT_LPASS 190*8490a995SSrinivasa Rao Mandadapu IPCC_MPROC_SIGNAL_GLINK_QMP>; 191*8490a995SSrinivasa Rao Mandadapu 192*8490a995SSrinivasa Rao Mandadapu label = "lpass"; 193*8490a995SSrinivasa Rao Mandadapu qcom,remote-pid = <2>; 194*8490a995SSrinivasa Rao Mandadapu }; 195*8490a995SSrinivasa Rao Mandadapu }; 196