[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20210919144322.31977-4-sireeshkodali1@gmail.com>
Date: Sun, 19 Sep 2021 20:13:21 +0530
From: Sireesh Kodali <sireeshkodali1@...il.com>
To: phone-devel@...r.kernel.org, ~postmarketos/upstreaming@...ts.sr.ht,
dmaengine@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org
Cc: Sireesh Kodali <sireeshkodali1@...il.com>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Vinod Koul <vkoul@...nel.org>
Subject: [PATCH 3/3] dmaengine: qcom: bam_dma: Add support for immediate commands
Immediate commands are needed by the IPA driver to send commands to the
IPA controller over BAM. To support immediate commands, all we need to
do is set the relevant flag in the descriptor.
Signed-off-by: Sireesh Kodali <sireeshkodali1@...il.com>
---
drivers/dma/qcom/bam_dma.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/dma/qcom/bam_dma.c b/drivers/dma/qcom/bam_dma.c
index c8a77b428b52..cebec638a994 100644
--- a/drivers/dma/qcom/bam_dma.c
+++ b/drivers/dma/qcom/bam_dma.c
@@ -58,6 +58,7 @@ struct bam_desc_hw {
#define DESC_FLAG_EOB BIT(13)
#define DESC_FLAG_NWD BIT(12)
#define DESC_FLAG_CMD BIT(11)
+#define DESC_FLAG_IMM BIT(8)
struct bam_async_desc {
struct virt_dma_desc vd;
@@ -651,6 +652,8 @@ static struct dma_async_tx_descriptor *bam_prep_slave_sg(struct dma_chan *chan,
do {
if (flags & DMA_PREP_CMD)
desc->flags |= cpu_to_le16(DESC_FLAG_CMD);
+ else if (flags & DMA_PREP_IMM_CMD)
+ desc->flags |= cpu_to_le16(DESC_FLAG_IMM);
desc->addr = cpu_to_le32(sg_dma_address(sg) +
curr_offset);
--
2.33.0
Powered by blists - more mailing lists