Re: [PATCH v2 2/2] dmaengine: Add support for multiple descriptorsfor imx-dma.

From: Sascha Hauer
Date: Thu Mar 01 2012 - 13:18:57 EST


On Thu, Mar 01, 2012 at 11:28:18AM +0100, javier Martin wrote:
> Hi Sascha,
>
> On 1 March 2012 11:19, Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote:
> > On Tue, Feb 28, 2012 at 05:08:18PM +0100, Javier Martin wrote:
> >> dmaengine specifies the possibility that several descriptors
> >> can be queued for transfer. It also indicates that tasklets
> >> must be used for DMA callbacks.
> >>
> >> Signed-off-by: Javier Martin <javier.martin@xxxxxxxxxxxxxxxxx>
> >
> > Have you tested this patch with audio?
>
> Yes,
> I have a test battery which tests audio, mmc, runs dmatest module and
> a custom mem2mem video device I'm developing.

Cool.

>
> >
> >> +static int imxdma_xfer_desc(struct imxdma_desc *d)
> >> +{
> >> +     struct imxdma_channel *imxdmac = to_imxdma_chan(d->desc.chan);
> >> +     int ret;
> >> +
> >> +     /* Configure and enable */
> >> +     switch (d->type) {
> >> +     case IMXDMA_DESC_MEMCPY:
> >> +             ret = imx_dma_config_channel(imxdmac->imxdma_channel,
> >> +                                       d->config_port, d->config_mem, 0, 0);
> >> +             if (ret < 0)
> >> +                     return ret;
> >> +             ret = imx_dma_setup_single(imxdmac->imxdma_channel, d->src,
> >> +                                        d->len, d->dest, d->dmamode);
> >> +             if (ret < 0)
> >> +                     return ret;
> >> +             break;
> >> +     case IMXDMA_DESC_CYCLIC:
> >> +             ret = imx_dma_setup_progression_handler(imxdmac->imxdma_channel,
> >> +                                                     imxdma_progression);
> >> +             if (ret < 0)
> >> +                     return ret;
> >
> > You fall through here. Is this intended? If yes, a comment would be good
> > here.
>
> Yes it is. cyclic is the same as slave_sg with the add-on of the
> progression handler and a specific configuration of the sglist which
> is done in 'imxdma_prep_dma_cyclic'.
> Do you want me to send a new version with a comment on the matter?

Yes, it's better to have a comment there. People looking at this code
will ask themselves the same question otherwise.

With this you can add my:

Acked-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>

Sascha

--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/