Re: [PATCH] ARM:SAMSUNG: Move S3C DMA driver to drivers/dma

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 7, 2011 at 10:09 AM, Jassi Brar <jassisinghbrar@xxxxxxxxx> wrote:

> There are some features of Samsung's DMA API that
> the drivers have come to rely upon.

Can we get an overview of what these features are?

When I look at this specific code I cannot see anything that
the dmaengine does not already support or can be made to
support easily.

s3c2410_dma_getposition => device_tx_status()

s3c2410_dma_devconfig - not even needed with dmaengine
 sematics, we already know the directions for any transfer.

s3c2410_dma_setflags => device_control() if it needs to be
  runtime, else platform data. device_control() is prepared to
  be extended for any custom weirdness flags if need be.

s3c2410_dma_set_buffdone_fn - no clue what this is, help
  us. If related to cyclic transfer as one could guess, we
  already have an API for that.

s3c2410_dma_ctrl => device_control() - there are two
  weird controls named TIMEOUT and FLUSH, TIMEOUT
  seem strange semantically for a ctrl* function, it seems like
  something that should come from the hardware, and flush
  is maybe an applicable extension, though I think any DMA
  engine with a running channel will indeed flush anything
  as quick as it can, if related to circular transfers we can
  handle that.

The rest seems to be about retrieveing channels, putting them
back on the heap and allocating resources for them as we
already do in dmaengine.

> I am not particularly a fan of the generic API. And IIRC,
> neither is Ben Dooks, the designer of the
> Samsung's DMA API.

This is not soccer/football/cricket. ;-)

Seriously, if there are any longstanding issues with the API we
need them nailed down, please help!

Thanks,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux