Re: [PATCH] pasemi_dma: Driver for PA Semi PWRficient on-chipDMAengine

From: Dan Williams
Date: Tue Mar 11 2008 - 13:08:24 EST


On Thu, 2008-03-06 at 16:39 -0700, Olof Johansson wrote:
> pasemi_dma: Driver for PA Semi PWRficient on-chip DMA engine
>
> First cut at a dma copy offload driver for PA Semi PWRficient. It uses the
> platform-specific functions to allocate channels, etc.
>
> Signed-off-by: Olof Johansson <olof@xxxxxxxxx>
>
>
> ---
>
> This has some dependencies on other patches currently queued up in the
> powerpc git trees for 2.6.26. I'd appreciate reviews and acked-bys, but
> it might be easiest to just merge it up the powerpc path due to the
> dependencies.
>
Apologies for not getting to this sooner.

I notice that the driver does not handle callbacks in its descriptor
cleanup path. This could be ok if your intent is only to support the
net_dma style polled operations, but this will not work for the
raid-offload async_tx case. I think the solution is for async_tx to
ignore channels without the DMA_INTERRUPT capability.

> +static void pasemi_dma_clean(struct pasemi_dma_chan *chan)
> +{
> + int old, new, i;
> + unsigned long flags;
> + struct pasemi_dma_desc *desc;
> + spin_lock_irqsave(&chan->desc_lock, flags);

Is spin_lock_bh() insufficient here?

...that's all that jumps out at the moment.

Regards,
Dan

--
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/