Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fc66de8b authored by Arun Kumar Neelakantam's avatar Arun Kumar Neelakantam
Browse files

soc: qcom: bam_dmux: Add Bam dmux drivers support



This is a snapshot of the BAM DMUX driver as of msm-3.18
commit <49f87c56e6f2> (Merge "ASoC: msm8952: Add more dai links to support
compress capture").

Bam dmux driver provides support for multiple clients to send/receive data
faster to modem by using single A2-BAM physical connection.

CRs-Fixed: 2144615
Change-Id: I39b7a9b1df014cfbe6df1aba0f67a25ad1d47318
Signed-off-by: default avatarArun Kumar Neelakantam <aneela@codeaurora.org>
parent 901d889a
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
Qualcomm Technologies, Inc. BAM Data Multiplexer Driver

Required properties:
- compatible : should be "qcom,bam_dmux"
- reg : the location and size of the BAM hardware
- interrupts : the BAM hardware to apps processor interrupt line

Optional properties:
-qcom,satellite-mode: the hardware needs to be configured in satellite mode
-qcom,rx-ring-size: the size of the receive ring buffer pool, default is 32
-qcom,max-rx-mtu: the maximum receive MTU that can be negotiated, in bytes.
	Default is 2048.  Other possible values are 4096, 8192, and 16384.
-qcom,no-cpu-affinity: boolean value indicating that workqueue CPU affinity
	is not required.
-qcom,fast-shutdown: boolean value to support fast shutdown time.

Example:

	qcom,bam_dmux@fc834000 {
		compatible = "qcom,bam_dmux";
		reg = <0xfc834000 0x7000>;
		interrupts = <0 29 1>;
		qcom,satellite-mode;
		qcom,rx-ring-size = <64>;
		qcom,max-rx-mtu = <8192>;
		qcom,no-cpu-affinity;
		qcom,fast-shutdown;
	};
+9 −0
Original line number Diff line number Diff line
@@ -786,4 +786,13 @@ config QCOM_QDSS_BRIDGE
	  sub-system to USB on APSS side. The driver acts as a bridge between the
	  MHI and USB interface. If unsure, say N.

config MSM_BAM_DMUX
	bool "BAM Data Mux Driver"
	depends on SPS
	help
	  Support Muxed Data Channels over BAM interface.
	  BAM has a limited number of pipes.  This driver
	  provides a means to support more logical channels
	  via muxing than BAM could without muxing.

source "drivers/soc/qcom/wcnss/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -96,4 +96,5 @@ obj-$(CONFIG_QMP_DEBUGFS_CLIENT) += qmp-debugfs-client.o
obj-$(CONFIG_MSM_REMOTEQDSS) += remoteqdss.o
obj-$(CONFIG_QSEE_IPC_IRQ_BRIDGE) += qsee_ipc_irq_bridge.o
obj-$(CONFIG_QCOM_QDSS_BRIDGE) += qdss_bridge.o
obj-$(CONFIG_MSM_BAM_DMUX) += bam_dmux.o
obj-$(CONFIG_WCNSS_CORE) += wcnss/