source: rtems/c/src/lib/libcpu/bfin/include/dmaRegs.h @ f3b29236

5
Last change on this file since f3b29236 was c499856, checked in by Chris Johns <chrisj@…>, on 03/20/14 at 21:10:47

Change all references of rtems.com to rtems.org.

  • Property mode set to 100644
File size: 4.7 KB
Line 
1/*  Blackfin DMA Registers
2 *
3 *  Copyright (c) 2008 Kallisti Labs, Los Gatos, CA, USA
4 *             written by Allan Hessenflow <allanh@kallisti.com>
5 *
6 *  The license and distribution terms for this file may be
7 *  found in the file LICENSE in this distribution or at
8 *  http://www.rtems.org/license/LICENSE.
9 */
10
11#ifndef _dmaRegs_h_
12#define _dmaRegs_h_
13
14
15/* register addresses */
16
17#define DMA_NEXT_DESC_PTR_OFFSET                      0x0000
18#define DMA_START_ADDR_OFFSET                         0x0004
19#define DMA_CONFIG_OFFSET                             0x0008
20#define DMA_X_COUNT_OFFSET                            0x0010
21#define DMA_X_MODIFY_OFFSET                           0x0014
22#define DMA_Y_COUNT_OFFSET                            0x0018
23#define DMA_Y_MODIFY_OFFSET                           0x001c
24#define DMA_CURR_DESC_PTR_OFFSET                      0x0020
25#define DMA_CURR_ADDR_OFFSET                          0x0024
26#define DMA_IRQ_STATUS_OFFSET                         0x0028
27#define DMA_PERIPHERAL_MAP_OFFSET                     0x002c
28#define DMA_CURR_X_COUNT_OFFSET                       0x0030
29#define DMA_CURR_Y_COUNT_OFFSET                       0x0038
30
31#define HMDMA_CONTROL_OFFSET                          0x0000
32#define HMDMA_ECINIT_OFFSET                           0x0004
33#define HMDMA_BCINIT_OFFSET                           0x0008
34#define HMDMA_ECURGENT_OFFSET                         0x000c
35#define HMDMA_ECOVERFLOW_OFFSET                       0x0010
36#define HMDMA_ECOUNT_OFFSET                           0x0014
37#define HMDMA_BCOUNT_OFFSET                           0x0018
38
39
40/* register fields */
41
42#define DMA_CONFIG_FLOW_MASK                          0x7000
43#define DMA_CONFIG_FLOW_STOP                          0x0000
44#define DMA_CONFIG_FLOW_AUTOBUFFER                    0x1000
45#define DMA_CONFIG_FLOW_DESC_ARRAY                    0x4000
46#define DMA_CONFIG_FLOW_DESC_SMALL                    0x6000
47#define DMA_CONFIG_FLOW_DESC_LARGE                    0x7000
48#define DMA_CONFIG_NDSIZE_MASK                        0x0f00
49#define DMA_CONFIG_NDSIZE_SHIFT                            8
50#define DMA_CONFIG_DI_EN                              0x0080
51#define DMA_CONFIG_DI_SEL                             0x0040
52#define DMA_CONFIG_SYNC                               0x0020
53#define DMA_CONFIG_DMA2D                              0x0010
54#define DMA_CONFIG_WDSIZE_MASK                        0x000c
55#define DMA_CONFIG_WDSIZE_8                           0x0000
56#define DMA_CONFIG_WDSIZE_16                          0x0004
57#define DMA_CONFIG_WDSIZE_32                          0x0008
58#define DMA_CONFIG_WNR                                0x0002
59#define DMA_CONFIG_DMAEN                              0x0001
60
61#define DMA_IRQ_STATUS_DMA_RUN                        0x0008
62#define DMA_IRQ_STATUS_DFETCH                         0x0004
63#define DMA_IRQ_STATUS_DMA_ERR                        0x0002
64#define DMA_IRQ_STATUS_DMA_DONE                       0x0001
65
66#define DMA_PERIPHERAL_MAP_PMAP_MASK                  0xf000
67#define DMA_PERIPHERAL_MAP_PMAP_PPI                   0x0000
68#define DMA_PERIPHERAL_MAP_PMAP_ETHRX                 0x1000
69#define DMA_PERIPHERAL_MAP_PMAP_ETHTX                 0x2000
70#define DMA_PERIPHERAL_MAP_PMAP_SPORT0RX              0x3000
71#define DMA_PERIPHERAL_MAP_PMAP_SPORT0TX              0x4000
72#define DMA_PERIPHERAL_MAP_PMAP_SPORT1RX              0x5000
73#define DMA_PERIPHERAL_MAP_PMAP_SPORT1TX              0x6000
74#define DMA_PERIPHERAL_MAP_PMAP_SPI                   0x7000
75#define DMA_PERIPHERAL_MAP_PMAP_UART0RX               0x8000
76#define DMA_PERIPHERAL_MAP_PMAP_UART0TX               0x9000
77#define DMA_PERIPHERAL_MAP_PMAP_UART1RX               0xa000
78#define DMA_PERIPHERAL_MAP_PMAP_UART1TX               0xb000
79#define DMA_PERIPHERAL_MAP_CTYPE                      0x0040
80
81#define HMDMA_CONTROL_BDI                             0x8000
82#define HMDMA_CONTROL_OI                              0x4000
83#define HMDMA_CONTROL_PS                              0x2000
84#define HMDMA_CONTROL_RBC                             0x1000
85#define HMDMA_CONTROL_DRQ_MASK                        0x0300
86#define HMDMA_CONTROL_DRQ_NONE                        0x0000
87#define HMDMA_CONTROL_DRQ_SINGLE                      0x0100
88#define HMDMA_CONTROL_DRQ_MULTIPLE                    0x0200
89#define HMDMA_CONTROL_DRQ_URGENT_MULTIPLE             0x0300
90#define HMDMA_CONTROL_MBDI                            0x0040
91#define HMDMA_CONTROL_BDIE                            0x0020
92#define HMDMA_CONTROL_OIE                             0x0010
93#define HMDMA_CONTROL_UTE                             0x0008
94#define HMDMA_CONTROL_REP                             0x0002
95#define HMDMA_CONTROL_HMDMAEN                         0x0001
96
97#endif /* _dmaRegs_h_ */
Note: See TracBrowser for help on using the repository browser.