The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Bjorn Andersson <andersson@kernel.org>
To: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
Cc: Konrad Dybcio <konradybcio@kernel.org>,
	Rob Herring <robh@kernel.org>,
	 Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	 linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,  bjorn.andersson@oss.qualcomm.com,
	chris.lew@oss.qualcomm.com, stephan.gerhold@linaro.org
Subject: Re: [PATCH v2] arm64: dts: qcom: shikra: Add BAM-DMUX support
Date: Sat, 11 Jul 2026 10:48:57 -0500	[thread overview]
Message-ID: <alJkSuke2B2SqP9e@baldur> (raw)
In-Reply-To: <20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com>

On Sat, Jul 11, 2026 at 09:50:17AM +0530, Vishnu Santhosh wrote:
> Add required nodes to enable the upstream BAM-DMUX WWAN driver on
> Qualcomm Shikra SoC.
> 
> The SMSM (Shared Memory State Machine) node provides the power
> control signaling between the AP and modem for BAM-DMUX. The
> BAM DMA controller node describes the A2 modem BAM hardware as a
> standard DMA controller. The BAM-DMUX node references the DMA
> channels and the pc/pc-ack interrupt lines from the modem SMSM
> entry for power control signaling.
> 
> The BAM-DMUX node is placed below the modem remoteproc so that
> userspace can associate the resulting network interfaces with the
> owning remoteproc via udev/sysfs, matching how qcom_q6v5_mss.c
> already handles the equivalent node on older SoCs.
> 
> Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
> ---
> This depends on the "arm64: dts: qcom: Extend Shikra device tree
> with CDSP, LPAICP, MPSS remoteproc PAS and peripherals" series [1],
> which is still under review and adds the "remoteproc_mpss" node this
> series now attaches to.
> 
> The corresponding qcom_q6v5_pas.c change that makes the nested
> "qcom,bam-dmux" node actually probe is being sent separately, since
> it has no device tree dependency.
> 
> [1] https://lore.kernel.org/all/20260702-shikra-dt-m1-v5-0-f911ac92720c@oss.qualcomm.com/

Patch looks reasonable, if you get no other feedback, please rebase,
retest, and resubmit once the dependencies has landed.

Regards,
Bjorn

> 
> Changes in v2:
> - Move the "bam-dmux" node below the modem remoteproc
>   ("remoteproc_mpss"), instead of at the root, so that userspace can
>   associate the resulting network interfaces with the owning
>   remoteproc via udev/sysfs (Stephan)
> - Add the "shikra-dt-m1" series as a declared prerequisite, since it
>   introduces the "remoteproc_mpss" node this series now depends on
> - Link to v1: https://lore.kernel.org/r/20260611-qcom-shikra-dts-bam-dmux-v1-1-43d0b43d41ef@oss.qualcomm.com
> ---
>  arch/arm64/boot/dts/qcom/shikra.dtsi | 51 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 51 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
> index 205814c4b349ae19b605688357c6bd71e1ee61e9..246ea74d1fb1e293f0428d342301886dc52cb179 100644
> --- a/arch/arm64/boot/dts/qcom/shikra.dtsi
> +++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
> @@ -498,6 +498,28 @@ modem_smp2p_in: slave-kernel {
>  		};
>  	};
>  
> +	smsm {
> +		compatible = "qcom,smsm";
> +
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		mboxes = <0>, <&apcs_glb 13>;
> +
> +		apps_smsm: apps@0 {
> +			reg = <0>;
> +			#qcom,smem-state-cells = <1>;
> +		};
> +
> +		modem_smsm: modem@1 {
> +			reg = <1>;
> +			interrupts = <GIC_SPI 69 IRQ_TYPE_EDGE_RISING 0>;
> +
> +			interrupt-controller;
> +			#interrupt-cells = <2>;
> +		};
> +	};
> +
>  	soc: soc@0 {
>  		compatible = "simple-bus";
>  
> @@ -1864,6 +1886,23 @@ glink-edge {
>  				qcom,remote-pid = <1>;
>  				label = "mpss";
>  			};
> +
> +			bam_dmux: bam-dmux {
> +				compatible = "qcom,bam-dmux";
> +
> +				interrupts-extended = <&modem_smsm 1 IRQ_TYPE_EDGE_BOTH>,
> +						      <&modem_smsm 11 IRQ_TYPE_EDGE_BOTH>;
> +				interrupt-names = "pc",
> +						  "pc-ack";
> +
> +				qcom,smem-states = <&apps_smsm 1>,
> +						   <&apps_smsm 11>;
> +				qcom,smem-state-names = "pc",
> +							"pc-ack";
> +
> +				dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>;
> +				dma-names = "tx", "rx";
> +			};
>  		};
>  
>  		remoteproc_cdsp: remoteproc@b300000 {
> @@ -1990,6 +2029,18 @@ glink-edge {
>  			};
>  		};
>  
> +		bam_dmux_dma: dma-controller@6044000 {
> +			compatible = "qcom,bam-v1.7.0";
> +			reg = <0x0 0x06044000 0x0 0x19000>;
> +			interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING 0>;
> +			#dma-cells = <1>;
> +			qcom,ee = <0>;
> +
> +			num-channels = <6>;
> +			qcom,num-ees = <1>;
> +			qcom,powered-remotely;
> +		};
> +
>  		sram@c11e000 {
>  			compatible = "qcom,shikra-imem", "mmio-sram";
>  			reg = <0x0 0x0c11e000 0x0 0x1000>;
> 
> ---
> base-commit: 6e845bcb78c95af935094040bd4edc3c2b6dd784
> change-id: 20260603-qcom-shikra-dts-bam-dmux-7fdcbb6fb662
> prerequisite-change-id: 20260429-shikra-gcc-rpmcc-clks-2094edfff3b0:v5
> prerequisite-patch-id: 59bb0a7828e41f546f734f127d81da83c0adcda9
> prerequisite-patch-id: 197da6bcb15cadc47869dba88c8020987b25c335
> prerequisite-patch-id: 8ec9c1eb03f052ae232ed54117abed38672c23f6
> prerequisite-patch-id: 350db4f4bcdfc0fad9ed57cd5b1723f85ad44f5d
> prerequisite-change-id: 20260524-shikra_epss_l3-522afe4fb8f5:v3
> prerequisite-patch-id: b5d7f75df02fde56181f576a936baf09d0a72276
> prerequisite-patch-id: 3ce52e07ae57139c2e2b71a29ed7d7250f6fcc87
> prerequisite-change-id: 20260511-shikra-dt-d75d97454646:v7
> prerequisite-patch-id: aa4ff7fbddd4c8836ce69aab89f2f91430194fcf
> prerequisite-patch-id: ac83151a889855498d36288ddd36216d451340c8
> prerequisite-patch-id: 2357cac636e019eaf14d6a493a1c72bca56fe405
> prerequisite-patch-id: 2885f299e711582da312ca9d13983d296a3dd5dc
> prerequisite-patch-id: 91af5f3c01e766a53ce8de69aa21847a2d6bbbf8
> prerequisite-change-id: 20260525-shikra-dt-m1-082dec382e7f:v5
> prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
> prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
> prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
> prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
> prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
> prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
> prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
> prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
> prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
> prerequisite-patch-id: 968bffc36646412f8289b917f37e762a4297bcc8
> prerequisite-patch-id: 35944403bd4480caad12657342da15ea71c6afbd
> 



> Best regards,
> -- 
> Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
> 

      reply	other threads:[~2026-07-11 15:49 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-11  4:20 [PATCH v2] arm64: dts: qcom: shikra: Add BAM-DMUX support Vishnu Santhosh
2026-07-11 15:48 ` Bjorn Andersson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alJkSuke2B2SqP9e@baldur \
    --to=andersson@kernel.org \
    --cc=bjorn.andersson@oss.qualcomm.com \
    --cc=chris.lew@oss.qualcomm.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=stephan.gerhold@linaro.org \
    --cc=vishnu.santhosh@oss.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox