Received: from mail-qv2-f12.google.com (mail-qv2-f12.google.com [74.125.230.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E117F33E36A for ; Tue, 22 Sep 2026 01:58:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.230.140 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790042298; cv=none; b=Z27BvJpnTfcJmJc/bnZ6krOcGGsgCPAou4n7WkguHZr/qHjSmFjNfzSa5LoS6n6XOWWe4VyVghOjI9Z3dbt/dMt9fteGFmEXbM87K4HxvfDDtz0KLgzqqFq3/B0hsu/De5xUiidTHA/RXJID/9KDFTGbDgHhkuHLqB8B8Nj4iAQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790042298; c=relaxed/simple; bh=RG5DQCHS9F4G7rBZA/5y8YaWKSDc+FBjx107+RMUuW4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TMG9GYexAjn7YHt7aoKl1tS9OBS0jhz9fj4F50OictbNvHGkixABt3PAhsY956k9RPFJPk2CzigmEOfkU960sME8Dn6lu9nJXkoXmNKLCcosj+EsG42Iq8axDh0mAFiHx7cV+kCCJpOIFF1XQP7wzQgT7C8M2caZIzYlxRuas5g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mFOkwrjx; arc=none smtp.client-ip=74.125.230.140 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mFOkwrjx" Received: by mail-qv2-f12.google.com with SMTP id 6a1803df08f44-910531ea7feso34534276d6.0 for ; Mon, 21 Sep 2026 18:58:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1790042296; x=1790647096; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=7OWe40rH1taU9GlVBHAdldtniDewW9TQkAorsEsmOGE=; b=mFOkwrjxD//wVuvKfCNaVFmns05hrVXSUXTFnJkL3vHJWy22e7FiLkN3AgoeGUo334 5/8DNhhKxtiRlP2jSfsGIUxsqlQfJgGAKMD05pu4OGisJHJ1wqQuGz66wZllJrGa4yFh 44hB1mEgCKNBFvbVij4gMzKlrALDzU/gBOs1SqBP8zE3ndzkjaPODFhpCMab2LcIhYpk zCCA7gxz2fPPmiFMvKgFku+YUPr6KinKdMDRBJkX/A92f4zY3UoxZ/MXr07fMEOdh0fX wJW4LnCzdjv5h5lH7MPMb8g+5uZVzZPZTjxHnh0PpYQhM4gJEAfFvzWMecgdx3vZKc0f Imbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790042296; x=1790647096; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=7OWe40rH1taU9GlVBHAdldtniDewW9TQkAorsEsmOGE=; b=UMs8+p/3leYDLF7lud+3hV8t0tlVqT45A9r8q3zkhBuN2pk6AaBNTSQhvM0JPDbgYW ZSZVjIfWaTkEqrWhVJ3Ft6QLr0cOhtOCjZCnWMxMDwCxMmNcsxKDODoCHYgNLN3JSCa4 X16xP/eJ1+nZYBHpzkNpOgduBeCT/4nDKrBlFxk9dFjBY2YBbg1p9zChppMgR4CzRxVt Y7QJROt/7YrnIVPusV3SaaR9j4tkzrpDLplYeR4Co2+B8YrI/yeeQcU353OhQDhrps+U qcTet9bc5yMkAoeWvezPRCc6u/SxoAAjv56nWaYzsypRDXAO+Oh4abfPuiRz6cxF1h5q EqnQ== X-Forwarded-Encrypted: i=1; AKwUvBxI9APq8iz3/RoJL8rn7+oq+Q5oBHHd7+h/DSJTNJ80M5uTnc+JQksGxWjDTc8nxq+Cs/rVobHuq7OfWB47@vger.kernel.org X-Gm-Message-State: AFuF++mSqx1gF3eTSSwpLSK6qDBPmPcvyD1ne+kjBXQVsA4i5opiU6gR eHlF3YsZ1pMV4SrinXA8K1XBFqBpsg6koAYwdU8GDW3+wHjMs+WIAuO3 X-Gm-Gg: AYBFou2ucR/Qog//XJGviVsy+p4uIRmuYfWmjpuGV3tu1tUIu3ASllkwocjXm2oIqgi Brl17+Ct8d3hco78sOn2NuFZFrPMmvFhhqjNjmYtrFDvNcgznghUnKT70y+whgOtR3+XYATx7Ti DjgrIxLX03gbPVW4bfh4i0/kMeY/NgjV93WlJ2O5AK/4mYJV9XdQQoIoXDqVK1EwQn3fS301cjS LpkZDKOOv5MqvKxaoRzqEs7qFRWAkznhhGmXGC6NFDVHfuT/wxkkC6I6m42C7s2GM5Ht7Ku16g5 pXFucU/Q6JxO3aE5n9UCwp9aqkzvV7x5BnJOPt3qzO5x/NS3NDDvMhLUcXeewtD4d1C4e2EFJdv 6VKEIIRS6qI+jox8gJ5Z+c6T2Ebd3cW8z5Xh5U3tJ7PItb89nTMkErkO1BW2D3zO3CWskf21/Ti Rgj5V+no0BF2tXyvwAdEX/p8Ilf+uOEo958o0XAeFG98zXBXKk002ZfPSTfUihY2wAMT8Niuk0i lTW0ZKhEmdv X-Received: by 2002:ad4:5c44:0:b0:910:44f2:5ce3 with SMTP id 6a1803df08f44-913fc89c785mr36516296d6.8.1790042295786; Mon, 21 Sep 2026 18:58:15 -0700 (PDT) Received: from localhost ([142.181.121.230]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-914023b40c3sm4277166d6.2.2026.09.21.18.58.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 21 Sep 2026 18:58:15 -0700 (PDT) From: Richard Acayan To: Jassi Brar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Bjorn Andersson , Mathieu Poirier , Konrad Dybcio , Abel Vesa , Manivannan Sadhasivam , Andy Gross , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-remoteproc@vger.kernel.org Cc: Richard Acayan Subject: [PATCH 06/11] arm64: dts: qcom: sdm670: add adsp Date: Mon, 21 Sep 2026 21:57:56 -0400 Message-ID: <20260922015801.32373-7-mailingradian@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260922015801.32373-1-mailingradian@gmail.com> References: <20260922015801.32373-1-mailingradian@gmail.com> Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The Audio DSP (Digital Signal Processor) is responsible for audio and sensors on SDM670. Add this, along with the SMP2P nodes used to communicate with it. The sleep state is included to prevent the following crash: qcom_q6v5_pas remoteproc-adsp: fatal error received: err_qdi.c:450:EF:sensor_process:1:sar.cc:27:chre_utils fatal Otherwise, it is unused. Signed-off-by: Richard Acayan --- arch/arm64/boot/dts/qcom/sdm670.dtsi | 175 +++++++++++++++++++++++++++ 1 file changed, 175 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sdm670.dtsi b/arch/arm64/boot/dts/qcom/sdm670.dtsi index 5c60ea36f04a..3856431fa587 100644 --- a/arch/arm64/boot/dts/qcom/sdm670.dtsi +++ b/arch/arm64/boot/dts/qcom/sdm670.dtsi @@ -19,6 +19,7 @@ #include #include #include +#include #include / { @@ -500,6 +501,40 @@ cluster_pd: power-domain-cluster { }; }; + smp2p-lpass { + compatible = "qcom,smp2p"; + qcom,smem = <443>, <429>; + + interrupts = ; + + mboxes = <&apss_shared 26>; + + qcom,local-pid = <0>; + qcom,remote-pid = <2>; + + adsp_smp2p_out: master-kernel { + qcom,entry-name = "master-kernel"; + #qcom,smem-state-cells = <1>; + }; + + adsp_smp2p_in: slave-kernel { + qcom,entry-name = "slave-kernel"; + interrupt-controller; + #interrupt-cells = <2>; + }; + + /* + * The ADSP crashes if this is not present. Simply probing this + * magically prevents the crash. It does not need any driver to + * interact with it. It is labelled in case proper support is + * added for it. + */ + adsp_smp2p_sleepstate: sleepstate { + qcom,entry-name = "sleepstate"; + #qcom,smem-state-cells = <1>; + }; + }; + reserved-memory { #address-cells = <2>; #size-cells = <2>; @@ -2111,6 +2146,19 @@ dispcc: clock-controller@af00000 { #power-domain-cells = <1>; }; + aoss_qmp: power-management@c300000 { + compatible = "qcom,sdm670-aoss-qmp", "qcom,aoss-qmp"; + reg = <0 0x0c300000 0 0x100000>; + interrupts = ; + mboxes = <&apss_shared 0>; + + #clock-cells = <0>; + + cx_cdev: cx { + #cooling-cells = <2>; + }; + }; + apps_smmu: iommu@15000000 { compatible = "qcom,sdm670-smmu-500", "qcom,smmu-500", "arm,mmu-500"; reg = <0 0x15000000 0 0x80000>; @@ -2191,6 +2239,12 @@ gladiator_noc: interconnect@17900000 { qcom,bcm-voters = <&apps_bcm_voter>; }; + apss_shared: mailbox@17990000 { + compatible = "qcom,sdm670-apss-shared", "qcom,sdm845-apss-shared"; + reg = <0 0x17990000 0 0x1000>; + #mbox-cells = <1>; + }; + apps_rsc: rsc@179c0000 { compatible = "qcom,rpmh-rsc"; reg = <0 0x179c0000 0 0x10000>, @@ -2301,6 +2355,127 @@ cpufreq_hw: cpufreq@17d43000 { #freq-domain-cells = <1>; }; + adsp_pas: remoteproc@62400000 { + compatible = "qcom,sdm670-adsp-pas"; + reg = <0 0x62400000 0 0x100>; + + interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, + <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, + <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, + <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, + <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "wdog", "fatal", "ready", + "handover", "stop-ack"; + + clocks = <&rpmhcc RPMH_CXO_CLK>; + clock-names = "xo"; + + memory-region = <&adsp_mem>; + + qcom,qmp = <&aoss_qmp>; + + qcom,smem-states = <&adsp_smp2p_out 0>; + qcom,smem-state-names = "stop"; + + status = "disabled"; + + glink-edge { + interrupts = ; + label = "lpass"; + qcom,remote-pid = <2>; + mboxes = <&apss_shared 24>; + + apr { + compatible = "qcom,apr-v2"; + qcom,glink-channels = "apr_audio_svc"; + qcom,domain = ; + #address-cells = <1>; + #size-cells = <0>; + qcom,intents = <512 20>; + + q6core: service@3 { + reg = ; + compatible = "qcom,q6core"; + qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; + }; + + q6afe: service@4 { + compatible = "qcom,q6afe"; + reg = ; + qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; + + q6afecc: clock-controller { + compatible = "qcom,q6afe-clocks"; + #clock-cells = <2>; + }; + + q6afedai: dais { + compatible = "qcom,q6afe-dais"; + #address-cells = <1>; + #size-cells = <0>; + #sound-dai-cells = <1>; + }; + }; + + q6asm: service@7 { + compatible = "qcom,q6asm"; + reg = ; + qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; + q6asmdai: dais { + compatible = "qcom,q6asm-dais"; + #address-cells = <1>; + #size-cells = <0>; + #sound-dai-cells = <1>; + iommus = <&apps_smmu 0x1801 0x0>; + }; + }; + + q6adm: service@8 { + compatible = "qcom,q6adm"; + reg = ; + qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; + q6routing: routing { + compatible = "qcom,q6adm-routing"; + #sound-dai-cells = <0>; + }; + }; + }; + + fastrpc { + compatible = "qcom,fastrpc"; + qcom,glink-channels = "fastrpcglink-apps-dsp"; + label = "adsp"; + #address-cells = <1>; + #size-cells = <0>; + + compute-cb@3 { + compatible = "qcom,fastrpc-compute-cb"; + reg = <3>; + iommus = <&apps_smmu 0x1803 0x0>; + }; + + compute-cb@4 { + compatible = "qcom,fastrpc-compute-cb"; + reg = <4>; + iommus = <&apps_smmu 0x1804 0x0>; + }; + + compute-cb@5 { + compatible = "qcom,fastrpc-compute-cb"; + reg = <5>; + iommus = <&apps_smmu 0x1805 0x0>; + }; + + compute-cb@6 { + compatible = "qcom,fastrpc-compute-cb"; + reg = <6>; + iommus = <&apps_smmu 0x1806 0x0>; + qcom,nsessions = <2>; + }; + }; + }; + }; + lpi_tlmm: pinctrl@62b40000 { compatible = "qcom,sdm670-lpass-lpi-pinctrl"; reg = <0 0x62b40000 0 0x20000>; -- 2.55.0