Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1331890 > unrolled thread
| Started by | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| First post | 2016-02-11 13:20 +0100 |
| Last post | 2016-02-11 13:30 +0100 |
| Articles | 8 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v3 00/14] ASoC: qcom: Add capture support. Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 09/14] ASoC: qcom: add mic related i2s control register defines Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 01/14] ASoC: qcom: use snd_dma_alloc/free* apis Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 06/14] ASoC: qcom: rename rdma_ch_bit_map to dma_ch_bit_map Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 05/14] ASoC: qcom: ipq806x: add error in dma allocation. Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 04/14] ASoC: qcom: pass direction to dma allocation Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 10/14] ASoC: qcom: add wrdma register definitions Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:20 +0100
[PATCH v3 07/14] ASoC: qcom: ipq806x: add wrdma related register offsets Srinivas Kandagatla <srinivas.kandagatla@linaro.org> - 2016-02-11 13:30 +0100
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 00/14] ASoC: qcom: Add capture support. |
| Message-ID | <r0Yo1-8d-3@gated-at.bofh.it> |
LPASS IP on QCOM SOC supports both Playback and capture via I2S, but this feature is missing in existing code. This patchset aims at adding capture support to lpass IP. First few patches in this series does cleanup the driver to make easy to add capture support. All these patches are acked by Kenneth. These patches are tested on DB410C with Headset Mic, secondary mic. Thanks, srini Changes since v1/v2: - Fixed patch version number. - renamed rdma_port to dma_port in patch 3, as suggested by Kenneth. - fixed correct device for snd_dma_alloc/free as suggested by Kenneth in patch 13. Changes since RFC: - made patches bisectable, reported by 0day testing - merged two patches as suggested by Kenneth - used corect device for snd_dma alloc/free apis, spotted by Kenneth - renamed LPAIF_I2SCTL_MICMODE_QUAD02 to LPAIF_I2SCTL_MICMODE_QUAD23, spotted by Kenneth. - Fixed minor issues suggested by Kenneth. Srinivas Kandagatla (14): ASoC: qcom: use snd_dma_alloc/free* apis ASoC: qcom: add wrdma register details to lpass_variant ASoC: qcom: rename rdmactl_audif_start to dmactrl_audif_start ASoC: qcom: pass direction to dma allocation ASoC: qcom: ipq806x: add error in dma allocation. ASoC: qcom: rename rdma_ch_bit_map to dma_ch_bit_map ASoC: qcom: ipq806x: add wrdma related register offsets ASoC: qcom: apq8016: add wrdma support ASoC: qcom: add mic related i2s control register defines ASoC: qcom: add wrdma register definitions ASoC: qcom: add generic bit masks for RDMA and WRDMA ASoC: qcom: apq8016: set the correct max register for regmap ASoC: qcom: add mic support ASoC: qcom: apq8016-sbc: add mic support sound/soc/qcom/apq8016_sbc.c | 10 +- sound/soc/qcom/lpass-apq8016.c | 31 +++-- sound/soc/qcom/lpass-cpu.c | 146 ++++++++++++++++++----- sound/soc/qcom/lpass-ipq806x.c | 11 +- sound/soc/qcom/lpass-lpaif-reg.h | 116 +++++++++++++------ sound/soc/qcom/lpass-platform.c | 244 +++++++++++++++++++++++---------------- sound/soc/qcom/lpass.h | 10 +- 7 files changed, 391 insertions(+), 177 deletions(-) -- 1.9.1
[toc] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 09/14] ASoC: qcom: add mic related i2s control register defines |
| Message-ID | <r0Yo2-8d-27@gated-at.bofh.it> |
| In reply to | #1331890 |
This patch adds mic related bitmasks and offsets in the i2c control register. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Acked-by: Kenneth Westfield <kwestfie@codeaurora.org> --- sound/soc/qcom/lpass-lpaif-reg.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/sound/soc/qcom/lpass-lpaif-reg.h b/sound/soc/qcom/lpass-lpaif-reg.h index 95e22f1..6599794 100644 --- a/sound/soc/qcom/lpass-lpaif-reg.h +++ b/sound/soc/qcom/lpass-lpaif-reg.h @@ -47,6 +47,28 @@ #define LPAIF_I2SCTL_SPKMONO_STEREO (0 << LPAIF_I2SCTL_SPKMONO_SHIFT) #define LPAIF_I2SCTL_SPKMONO_MONO (1 << LPAIF_I2SCTL_SPKMONO_SHIFT) +#define LPAIF_I2SCTL_MICEN_MASK GENMASK(8, 8) +#define LPAIF_I2SCTL_MICEN_SHIFT 8 +#define LPAIF_I2SCTL_MICEN_DISABLE (0 << LPAIF_I2SCTL_MICEN_SHIFT) +#define LPAIF_I2SCTL_MICEN_ENABLE (1 << LPAIF_I2SCTL_MICEN_SHIFT) + +#define LPAIF_I2SCTL_MICMODE_MASK GENMASK(7, 4) +#define LPAIF_I2SCTL_MICMODE_SHIFT 4 +#define LPAIF_I2SCTL_MICMODE_NONE (0 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_SD0 (1 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_SD1 (2 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_SD2 (3 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_SD3 (4 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_QUAD01 (5 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_QUAD23 (6 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_6CH (7 << LPAIF_I2SCTL_MICMODE_SHIFT) +#define LPAIF_I2SCTL_MICMODE_8CH (8 << LPAIF_I2SCTL_MICMODE_SHIFT) + +#define LPAIF_I2SCTL_MIMONO_MASK GENMASK(3, 3) +#define LPAIF_I2SCTL_MICMONO_SHIFT 3 +#define LPAIF_I2SCTL_MICMONO_STEREO (0 << LPAIF_I2SCTL_MICMONO_SHIFT) +#define LPAIF_I2SCTL_MICMONO_MONO (1 << LPAIF_I2SCTL_MICMONO_SHIFT) + #define LPAIF_I2SCTL_WSSRC_MASK 0x0004 #define LPAIF_I2SCTL_WSSRC_SHIFT 2 #define LPAIF_I2SCTL_WSSRC_INTERNAL (0 << LPAIF_I2SCTL_WSSRC_SHIFT) -- 1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 01/14] ASoC: qcom: use snd_dma_alloc/free* apis |
| Message-ID | <r0Yo2-8d-43@gated-at.bofh.it> |
| In reply to | #1331890 |
There is no point in having local allocation functions when the driver
can use snd_dma_alloc/free() apis. This patch replaces the local versions
of the dma allocation apis with the snd_dma_alloc/free() apis.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
---
sound/soc/qcom/lpass-platform.c | 42 ++++++-----------------------------------
1 file changed, 6 insertions(+), 36 deletions(-)
diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c
index 4aeb8e1..ec2414d 100644
--- a/sound/soc/qcom/lpass-platform.c
+++ b/sound/soc/qcom/lpass-platform.c
@@ -439,39 +439,6 @@ static irqreturn_t lpass_platform_lpaif_irq(int irq, void *data)
return IRQ_HANDLED;
}
-static int lpass_platform_alloc_buffer(struct snd_pcm_substream *substream,
- struct snd_soc_pcm_runtime *rt)
-{
- struct snd_dma_buffer *buf = &substream->dma_buffer;
- size_t size = lpass_platform_pcm_hardware.buffer_bytes_max;
-
- buf->dev.type = SNDRV_DMA_TYPE_DEV;
- buf->dev.dev = rt->platform->dev;
- buf->private_data = NULL;
- buf->area = dma_alloc_coherent(rt->platform->dev, size, &buf->addr,
- GFP_KERNEL);
- if (!buf->area) {
- dev_err(rt->platform->dev, "%s: Could not allocate DMA buffer\n",
- __func__);
- return -ENOMEM;
- }
- buf->bytes = size;
-
- return 0;
-}
-
-static void lpass_platform_free_buffer(struct snd_pcm_substream *substream,
- struct snd_soc_pcm_runtime *rt)
-{
- struct snd_dma_buffer *buf = &substream->dma_buffer;
-
- if (buf->area) {
- dma_free_coherent(rt->dev, buf->bytes, buf->area,
- buf->addr);
- }
- buf->area = NULL;
-}
-
static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
{
struct snd_pcm *pcm = soc_runtime->pcm;
@@ -483,6 +450,7 @@ static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
struct lpass_variant *v = drvdata->variant;
int ret;
struct lpass_pcm_data *data;
+ size_t size = lpass_platform_pcm_hardware.buffer_bytes_max;
data = devm_kzalloc(soc_runtime->dev, sizeof(*data), GFP_KERNEL);
if (!data)
@@ -499,7 +467,9 @@ static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
snd_soc_pcm_set_drvdata(soc_runtime, data);
- ret = lpass_platform_alloc_buffer(substream, soc_runtime);
+ ret = snd_dma_alloc_pages(SNDRV_DMA_TYPE_DEV,
+ soc_runtime->platform->dev,
+ size, &substream->dma_buffer);
if (ret)
return ret;
@@ -514,7 +484,7 @@ static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
return 0;
err_buf:
- lpass_platform_free_buffer(substream, soc_runtime);
+ snd_dma_free_pages(&substream->dma_buffer);
return ret;
}
@@ -533,7 +503,7 @@ static void lpass_platform_pcm_free(struct snd_pcm *pcm)
if (v->free_dma_channel)
v->free_dma_channel(drvdata, data->rdma_ch);
- lpass_platform_free_buffer(substream, soc_runtime);
+ snd_dma_free_pages(&substream->dma_buffer);
}
static struct snd_soc_platform_driver lpass_platform_driver = {
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 06/14] ASoC: qcom: rename rdma_ch_bit_map to dma_ch_bit_map |
| Message-ID | <r0Yo2-8d-41@gated-at.bofh.it> |
| In reply to | #1331890 |
rdma_ch_bit_map can be reused for wrdma channel allocations as wrdma
channel numbering start after rdma channel numbers.
With capture support referring rdma_ch_bit_map for wrdma channel allocation
is confusing, so renaming rdma_ch_bit_map to dma_ch_bit_map makes sense.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
---
sound/soc/qcom/lpass-apq8016.c | 6 +++---
sound/soc/qcom/lpass.h | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/sound/soc/qcom/lpass-apq8016.c b/sound/soc/qcom/lpass-apq8016.c
index 99061f4..ca3bbd5 100644
--- a/sound/soc/qcom/lpass-apq8016.c
+++ b/sound/soc/qcom/lpass-apq8016.c
@@ -137,20 +137,20 @@ 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->rdma_ch_bit_map,
+ int chan = find_first_zero_bit(&drvdata->dma_ch_bit_map,
v->rdma_channels);
if (chan >= v->rdma_channels)
return -EBUSY;
- set_bit(chan, &drvdata->rdma_ch_bit_map);
+ set_bit(chan, &drvdata->dma_ch_bit_map);
return chan;
}
static int apq8016_lpass_free_dma_channel(struct lpass_data *drvdata, int chan)
{
- clear_bit(chan, &drvdata->rdma_ch_bit_map);
+ clear_bit(chan, &drvdata->dma_ch_bit_map);
return 0;
}
diff --git a/sound/soc/qcom/lpass.h b/sound/soc/qcom/lpass.h
index 8475b60..30714ad 100644
--- a/sound/soc/qcom/lpass.h
+++ b/sound/soc/qcom/lpass.h
@@ -50,7 +50,7 @@ struct lpass_data {
struct lpass_variant *variant;
/* bit map to keep track of static channel allocations */
- unsigned long rdma_ch_bit_map;
+ unsigned long dma_ch_bit_map;
/* used it for handling interrupt per dma channel */
struct snd_pcm_substream *substream[LPASS_MAX_DMA_CHANNELS];
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 05/14] ASoC: qcom: ipq806x: add error in dma allocation. |
| Message-ID | <r0Yo3-8d-45@gated-at.bofh.it> |
| In reply to | #1331890 |
ipq806x is only ever tested for playback so return error in dma allocation
if the stream direction is capture.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
---
sound/soc/qcom/lpass-ipq806x.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sound/soc/qcom/lpass-ipq806x.c b/sound/soc/qcom/lpass-ipq806x.c
index 119048c..29a3529 100644
--- a/sound/soc/qcom/lpass-ipq806x.c
+++ b/sound/soc/qcom/lpass-ipq806x.c
@@ -65,7 +65,10 @@ static struct snd_soc_dai_driver ipq806x_lpass_cpu_dai_driver = {
static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata, int dir)
{
- return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
+ if (dir == SNDRV_PCM_STREAM_PLAYBACK)
+ return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
+ else /* Capture currently not implemented */
+ return -EINVAL;
}
static int ipq806x_lpass_free_dma_channel(struct lpass_data *drvdata, int chan)
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 04/14] ASoC: qcom: pass direction to dma allocation |
| Message-ID | <r0Yo3-8d-55@gated-at.bofh.it> |
| In reply to | #1331890 |
This patch updates the internal dma allocation callbacks to take the
stream direction so that it can allocate channels suitable for that
stream direction. Before the capture support this was not necessary.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
---
sound/soc/qcom/lpass-apq8016.c | 3 ++-
sound/soc/qcom/lpass-ipq806x.c | 2 +-
sound/soc/qcom/lpass-platform.c | 3 ++-
sound/soc/qcom/lpass.h | 2 +-
4 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/sound/soc/qcom/lpass-apq8016.c b/sound/soc/qcom/lpass-apq8016.c
index 6cc7e72..99061f4 100644
--- a/sound/soc/qcom/lpass-apq8016.c
+++ b/sound/soc/qcom/lpass-apq8016.c
@@ -133,7 +133,8 @@ static struct snd_soc_dai_driver apq8016_lpass_cpu_dai_driver[] = {
},
};
-static int apq8016_lpass_alloc_dma_channel(struct lpass_data *drvdata)
+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->rdma_ch_bit_map,
diff --git a/sound/soc/qcom/lpass-ipq806x.c b/sound/soc/qcom/lpass-ipq806x.c
index 7a41679..119048c 100644
--- a/sound/soc/qcom/lpass-ipq806x.c
+++ b/sound/soc/qcom/lpass-ipq806x.c
@@ -63,7 +63,7 @@ static struct snd_soc_dai_driver ipq806x_lpass_cpu_dai_driver = {
.ops = &asoc_qcom_lpass_cpu_dai_ops,
};
-static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata)
+static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata, int dir)
{
return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
}
diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c
index 7245c2e..69c5ad8 100644
--- a/sound/soc/qcom/lpass-platform.c
+++ b/sound/soc/qcom/lpass-platform.c
@@ -457,7 +457,8 @@ static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
return -ENOMEM;
if (v->alloc_dma_channel)
- data->rdma_ch = v->alloc_dma_channel(drvdata);
+ data->rdma_ch = v->alloc_dma_channel(drvdata,
+ SNDRV_PCM_STREAM_PLAYBACK);
if (IS_ERR_VALUE(data->rdma_ch))
return data->rdma_ch;
diff --git a/sound/soc/qcom/lpass.h b/sound/soc/qcom/lpass.h
index 412399a..8475b60 100644
--- a/sound/soc/qcom/lpass.h
+++ b/sound/soc/qcom/lpass.h
@@ -84,7 +84,7 @@ struct lpass_variant {
/* SOC specific intialization like clocks */
int (*init)(struct platform_device *pdev);
int (*exit)(struct platform_device *pdev);
- int (*alloc_dma_channel)(struct lpass_data *data);
+ int (*alloc_dma_channel)(struct lpass_data *data, int direction);
int (*free_dma_channel)(struct lpass_data *data, int ch);
/* SOC specific dais */
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:20 +0100 |
| Subject | [PATCH v3 10/14] ASoC: qcom: add wrdma register definitions |
| Message-ID | <r0Yo3-8d-59@gated-at.bofh.it> |
| In reply to | #1331890 |
This patch adds wrdma registers into the lpaif-reg.h. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Acked-by: Kenneth Westfield <kwestfie@codeaurora.org> --- sound/soc/qcom/lpass-lpaif-reg.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sound/soc/qcom/lpass-lpaif-reg.h b/sound/soc/qcom/lpass-lpaif-reg.h index 6599794..760d219 100644 --- a/sound/soc/qcom/lpass-lpaif-reg.h +++ b/sound/soc/qcom/lpass-lpaif-reg.h @@ -145,4 +145,15 @@ #define LPAIF_RDMACTL_ENABLE_OFF (0 << LPAIF_RDMACTL_ENABLE_SHIFT) #define LPAIF_RDMACTL_ENABLE_ON (1 << LPAIF_RDMACTL_ENABLE_SHIFT) +#define LPAIF_WRDMA_REG_ADDR(v, addr, chan) \ + (v->wrdma_reg_base + (addr) + \ + v->wrdma_reg_stride * (chan - v->wrdma_channel_start)) + +#define LPAIF_WRDMACTL_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x00, (chan)) +#define LPAIF_WRDMABASE_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x04, (chan)) +#define LPAIF_WRDMABUFF_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x08, (chan)) +#define LPAIF_WRDMACURR_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x0C, (chan)) +#define LPAIF_WRDMAPER_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x10, (chan)) +#define LPAIF_WRDMAPERCNT_REG(v, chan) LPAIF_WRDMA_REG_ADDR(v, 0x14, (chan)) + #endif /* __LPASS_LPAIF_REG_H__ */ -- 1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
|---|---|
| Date | 2016-02-11 13:30 +0100 |
| Subject | [PATCH v3 07/14] ASoC: qcom: ipq806x: add wrdma related register offsets |
| Message-ID | <r0YxI-bS-15@gated-at.bofh.it> |
| In reply to | #1331890 |
This patch adds wrdma related register offsets to the lpass variant data
of ipq806x.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
---
sound/soc/qcom/lpass-ipq806x.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sound/soc/qcom/lpass-ipq806x.c b/sound/soc/qcom/lpass-ipq806x.c
index 29a3529..608c1a9 100644
--- a/sound/soc/qcom/lpass-ipq806x.c
+++ b/sound/soc/qcom/lpass-ipq806x.c
@@ -86,6 +86,10 @@ static struct lpass_variant ipq806x_data = {
.rdma_reg_base = 0x6000,
.rdma_reg_stride = 0x1000,
.rdma_channels = 4,
+ .wrdma_reg_base = 0xB000,
+ .wrdma_reg_stride = 0x1000,
+ .wrdma_channel_start = 5,
+ .wrdma_channels = 4,
.dai_driver = &ipq806x_lpass_cpu_dai_driver,
.num_dai = 1,
.alloc_dma_channel = ipq806x_lpass_alloc_dma_channel,
--
1.9.1
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web