* Russell King - ARM Linux <[email protected]> [120420 08:41]:
> --- a/drivers/dma/omap-dma.c
> +++ b/drivers/dma/omap-dma.c
> @@ -83,11 +84,11 @@ static void omap_dma_start_sg(struct omap_chan *c, struct 
> omap_desc *d,
>       struct omap_sg *sg = d->sg + idx;
>  
>       if (d->dir == DMA_DEV_TO_MEM)
> -             omap_set_dma_dest_params(c->dma_ch, 0, OMAP_DMA_AMODE_POST_INC,
> -                             sg->addr, 0, 0);
> +             omap_set_dma_dest_params(c->dma_ch, d->periph_port,
> +                     OMAP_DMA_AMODE_POST_INC, sg->addr, 0, 0);
>       else
> -             omap_set_dma_src_params(c->dma_ch, 0, OMAP_DMA_AMODE_POST_INC,
> -                             sg->addr, 0, 0);
> +             omap_set_dma_src_params(c->dma_ch, d->periph_port,
> +                     OMAP_DMA_AMODE_POST_INC, sg->addr, 0, 0);
>  
>       omap_set_dma_transfer_params(c->dma_ch, d->es, sg->en, sg->fn,
>               d->sync_mode, c->dma_sig, d->sync_type);

These are now wrong way around, should use OMAP_DMA_PORT_EMIFF here..

> @@ -111,11 +112,11 @@ static void omap_dma_start_desc(struct omap_chan *c)
>       c->sgidx = 0;
>  
>       if (d->dir == DMA_DEV_TO_MEM)
> -             omap_set_dma_src_params(c->dma_ch, 0, OMAP_DMA_AMODE_CONSTANT,
> -                     d->dev_addr, 0, 0);
> +             omap_set_dma_src_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
> +                     OMAP_DMA_AMODE_CONSTANT, d->dev_addr, 0, 0);
>       else
> -             omap_set_dma_dest_params(c->dma_ch, 0, OMAP_DMA_AMODE_CONSTANT,
> -                     d->dev_addr, 0, 0);
> +             omap_set_dma_dest_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
> +                     OMAP_DMA_AMODE_CONSTANT, d->dev_addr, 0, 0);
>  
>       omap_dma_start_sg(c, d, 0);
>  }

..and then use d->periph_port here. So the following is also needed on
top of this:

--- a/drivers/dma/omap-dma.c
+++ b/drivers/dma/omap-dma.c
@@ -84,10 +84,10 @@ static void omap_dma_start_sg(struct omap_chan *c, struct 
omap_desc *d,
        struct omap_sg *sg = d->sg + idx;
 
        if (d->dir == DMA_DEV_TO_MEM)
-               omap_set_dma_dest_params(c->dma_ch, d->periph_port,
+               omap_set_dma_dest_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
                        OMAP_DMA_AMODE_POST_INC, sg->addr, 0, 0);
        else
-               omap_set_dma_src_params(c->dma_ch, d->periph_port,
+               omap_set_dma_src_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
                        OMAP_DMA_AMODE_POST_INC, sg->addr, 0, 0);
 
        omap_set_dma_transfer_params(c->dma_ch, d->es, sg->en, sg->fn,
@@ -112,10 +112,10 @@ static void omap_dma_start_desc(struct omap_chan *c)
        c->sgidx = 0;
 
        if (d->dir == DMA_DEV_TO_MEM)
-               omap_set_dma_src_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
+               omap_set_dma_src_params(c->dma_ch, d->periph_port,
                        OMAP_DMA_AMODE_CONSTANT, d->dev_addr, 0, 0);
        else
-               omap_set_dma_dest_params(c->dma_ch, OMAP_DMA_PORT_EMIFF,
+               omap_set_dma_dest_params(c->dma_ch, d->periph_port,
                        OMAP_DMA_AMODE_CONSTANT, d->dev_addr, 0, 0);
 
        omap_dma_start_sg(c, d, 0);
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to