12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- S3C2410 DMA
- ===========
- Introduction
- ------------
- The kernel provides an interface to manage DMA transfers
- using the DMA channels in the cpu, so that the central
- duty of managing channel mappings, and programming the
- channel generators is in one place.
- DMA Channel Ordering
- --------------------
- Many of the range do not have connections for the DMA
- channels to all sources, which means that some devices
- have a restricted number of channels that can be used.
- To allow flexibilty for each cpu type and board, the
- dma code can be given an dma ordering structure which
- allows the order of channel search to be specified, as
- well as allowing the prohibition of certain claims.
- struct s3c24xx_dma_order has a list of channels, and
- each channel within has a slot for a list of dma
- channel numbers. The slots are searched in order, for
- the presence of a dma channel number with DMA_CH_VALID
- orred in.
- If the order has the flag DMA_CH_NEVER set, then after
- checking the channel list, the system will return no
- found channel, thus denying the request.
- A board support file can call s3c24xx_dma_order_set()
- to register an complete ordering set. The routine will
- copy the data, so the original can be discared with
- __initdata.
- Authour
- -------
- Ben Dooks,
- Copyright (c) 2007 Ben Dooks, Simtec Electronics
- Licensed under the GPL v2
|