Blame view

Documentation/arm/Samsung-S3C24XX/DMA.txt 1.37 KB
0c6022d45   Ben Dooks   [ARM] 4177/1: S3C...
1
2
3
4
5
6
7
  			S3C2410 DMA
  			===========
  
  Introduction
  ------------
  
     The kernel provides an interface to manage DMA transfers
01dd2fbf0   Matt LaPlante   typo fixes
8
     using the DMA channels in the CPU, so that the central
0c6022d45   Ben Dooks   [ARM] 4177/1: S3C...
9
10
11
12
13
14
15
16
17
18
     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.
01dd2fbf0   Matt LaPlante   typo fixes
19
20
     To allow flexibility for each CPU type and board, the
     DMA code can be given a DMA ordering structure which
0c6022d45   Ben Dooks   [ARM] 4177/1: S3C...
21
22
23
24
     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
01dd2fbf0   Matt LaPlante   typo fixes
25
26
27
28
     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
     or-ed in.
0c6022d45   Ben Dooks   [ARM] 4177/1: S3C...
29
30
31
32
33
34
  
     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()
01dd2fbf0   Matt LaPlante   typo fixes
35
36
     to register a complete ordering set. The routine will
     copy the data, so the original can be discarded with
0c6022d45   Ben Dooks   [ARM] 4177/1: S3C...
37
38
39
40
41
42
43
44
45
     __initdata.
  
  
  Authour
  -------
  
  Ben Dooks,
  Copyright (c) 2007 Ben Dooks, Simtec Electronics
  Licensed under the GPL v2