[Sound-open-firmware] [PATCH] CONFIG_DMA_GW is defined for CNL, but host and link DMAs initialization is missing
Liam Girdwood
liam.r.girdwood at linux.intel.com
Tue Feb 20 11:59:22 CET 2018
On Tue, 2018-02-20 at 11:24 +0100, Tomasz Lauda wrote:
Subject should be like "cnl: Add host and link DMA init."
And then the commit message can mention the CONFIG setting etc
> Signed-off-by: Tomasz Lauda <tomasz.lauda at linux.intel.com>
> ---
> src/platform/cannonlake/dma.c | 13 +++++++++----
> src/platform/cannonlake/platform.c | 15 +++++++++++++++
> 2 files changed, 24 insertions(+), 4 deletions(-)
>
> diff --git a/src/platform/cannonlake/dma.c
> b/src/platform/cannonlake/dma.c
> index beac6cf..a47ce9f 100644
> --- a/src/platform/cannonlake/dma.c
> +++ b/src/platform/cannonlake/dma.c
> @@ -32,6 +32,7 @@
>
> #include <reef/dma.h>
> #include <reef/dw-dma.h>
> +#include <reef/hd-dma.h>
> #include <platform/memory.h>
> #include <platform/interrupt.h>
> #include <platform/dma.h>
> @@ -133,33 +134,37 @@ static struct dma dma[] = {
> .plat_data = {
> .id = DMA_HOST_IN_DMAC,
> .base = GTW_HOST_IN_STREAM_BASE(0),
> - .channels = 7,
> + .channels = 9,
> .irq = IRQ_EXT_HOST_DMA_IN_LVL3(0, 0),
> },
> + .ops = &hda_host_dma_ops,
> },
> { /* Host out DMAC */
> .plat_data = {
> .id = DMA_HOST_OUT_DMAC,
> .base = GTW_HOST_OUT_STREAM_BASE(0),
> - .channels = 6,
> + .channels = 7,
> .irq = IRQ_EXT_HOST_DMA_OUT_LVL3(0, 0),
> },
> + .ops = &hda_host_dma_ops,
> },
> { /* Link In DMAC */
> .plat_data = {
> .id = DMA_LINK_IN_DMAC,
> .base = GTW_LINK_IN_STREAM_BASE(0),
> - .channels = 8,
> + .channels = 9,
> .irq = IRQ_EXT_LINK_DMA_IN_LVL4(0, 0),
> },
> + .ops = &hda_link_dma_ops,
> },
> { /* Link out DMAC */
> .plat_data = {
> .id = DMA_LINK_OUT_DMAC,
> .base = GTW_LINK_OUT_STREAM_BASE(0),
> - .channels = 8,
> + .channels = 7,
> .irq = IRQ_EXT_LINK_DMA_OUT_LVL4(0, 0),
> },
> + .ops = &hda_link_dma_ops,
> },};
>
> struct dma *dma_get(int dmac_id)
> diff --git a/src/platform/cannonlake/platform.c
> b/src/platform/cannonlake/platform.c
> index f387109..1a9b88a 100644
> --- a/src/platform/cannonlake/platform.c
> +++ b/src/platform/cannonlake/platform.c
> @@ -253,6 +253,21 @@ int platform_init(struct reef *reef)
> return -ENODEV;
> dma_probe(dmac);
>
> + dmac = dma_get(DMA_GP_LP_DMAC1);
> + if (!dmac)
> + return -ENODEV;
> + dma_probe(dmac);
> +
> + dmac = dma_get(DMA_HOST_OUT_DMAC);
> + if (!dmac)
> + return -ENODEV;
> + dma_probe(dmac);
> +
> + dmac = dma_get(DMA_HOST_IN_DMAC);
> + if (!dmac)
> + return -ENODEV;
> + dma_probe(dmac);
> +
> /* init SSP ports */
> trace_point(TRACE_BOOT_PLATFORM_SSP);
> for(i = 0; i < PLATFORM_SSP_COUNT; i++) {
More information about the Sound-open-firmware
mailing list