Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1331040
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v1 08/14] ASoC: qcom: apq8016: add wrdma support |
| Date | 2016-02-10 11:30 +0100 |
| Message-ID | <r0Ac3-VA-31@gated-at.bofh.it> (permalink) |
| References | <r0A2m-Sb-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
This patch adds wrdma support in lpass-apq8016 by providing the register
offsets and adding support in dma channel allocation callback.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
---
sound/soc/qcom/lpass-apq8016.c | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/sound/soc/qcom/lpass-apq8016.c b/sound/soc/qcom/lpass-apq8016.c
index ca3bbd5..3eef0c3 100644
--- a/sound/soc/qcom/lpass-apq8016.c
+++ b/sound/soc/qcom/lpass-apq8016.c
@@ -137,11 +137,23 @@ static int apq8016_lpass_alloc_dma_channel(struct lpass_data *drvdata,
int direction)
{
struct lpass_variant *v = drvdata->variant;
- int chan = find_first_zero_bit(&drvdata->dma_ch_bit_map,
+ int chan = 0;
+
+ if (direction == SNDRV_PCM_STREAM_PLAYBACK) {
+ chan = find_first_zero_bit(&drvdata->dma_ch_bit_map,
v->rdma_channels);
- if (chan >= v->rdma_channels)
- return -EBUSY;
+ if (chan >= v->rdma_channels)
+ return -EBUSY;
+ } else {
+ chan = find_next_zero_bit(&drvdata->dma_ch_bit_map,
+ v->wrdma_channel_start +
+ v->wrdma_channels,
+ v->wrdma_channel_start);
+
+ if (chan >= v->wrdma_channel_start + v->wrdma_channels)
+ return -EBUSY;
+ }
set_bit(chan, &drvdata->dma_ch_bit_map);
@@ -214,6 +226,10 @@ static struct lpass_variant apq8016_data = {
.rdma_reg_stride = 0x1000,
.rdma_channels = 2,
.dmactl_audif_start = 1,
+ .wrdma_reg_base = 0xB000,
+ .wrdma_reg_stride = 0x1000,
+ .wrdma_channel_start = 5,
+ .wrdma_channels = 2,
.dai_driver = apq8016_lpass_cpu_dai_driver,
.num_dai = ARRAY_SIZE(apq8016_lpass_cpu_dai_driver),
.init = apq8016_lpass_init,
--
1.9.1
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v1 00/14] ASoC: qcom: Add capture support. Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:20 +0100
[PATCH v1 05/14] ASoC: qcom: ipq806x: add error in dma allocation. Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:20 +0100
[PATCH v1 03/14] ASoC: qcom: rename rdmactl_audif_start to dmactrl_audif_start Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:20 +0100
[PATCH v1 04/14] ASoC: qcom: pass direction to dma allocation Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:20 +0100
[PATCH v1 11/14] ASoC: qcom: add generic bit masks for RDMA and WRDMA Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:20 +0100
[PATCH v1 13/14] ASoC: qcom: add mic support Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:30 +0100
Re: [PATCH v1 13/14] ASoC: qcom: add mic support Kenneth Westfield <kwestfie@codeaurora.org> - 2016-02-10 21:20 +0100
Re: [PATCH v1 13/14] ASoC: qcom: add mic support Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 12:40 +0100
[PATCH v1 12/14] ASoC: qcom: apq8016: set the correct max register for regmap Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:30 +0100
[PATCH v1 14/14] ASoC: qcom: apq8016-sbc: add mic support Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:30 +0100
[PATCH v1 10/14] ASoC: qcom: add wrdma register definitions Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:30 +0100
[PATCH v1 08/14] ASoC: qcom: apq8016: add wrdma support Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:30 +0100
Re: [PATCH v1 00/14] ASoC: qcom: Add capture support. Mark Brown <broonie@kernel.org> - 2016-02-10 11:30 +0100
Re: [PATCH v1 00/14] ASoC: qcom: Add capture support. Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-10 11:40 +0100
Re: [PATCH v1 00/14] ASoC: qcom: Add capture support. Mark Brown <broonie@kernel.org> - 2016-02-10 13:00 +0100
Re: [PATCH v1 00/14] ASoC: qcom: Add capture support. Kenneth Westfield <kwestfie@codeaurora.org> - 2016-02-10 21:20 +0100
csiph-web