1 /* 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 12 #ifndef _dma_desc_h 13 #define _dma_desc_h 14 15 #if defined(__cplusplus) 16 extern "C" { 17 #endif 18 19 20 #define NDSIZE_LG 0x00000900 // Next Descriptor Size 21 #define NDSIZE_SM 0x00000800 // Next Descriptor Size 22 #define NDSIZE_7 0x00000700 // Next Descriptor Size 23 #define NDSIZE_6 0x00000600 // Next Descriptor Size 24 #define NDSIZE_5 0x00000500 // Next Descriptor Size 25 #define NDSIZE_4 0x00000400 // Next Descriptor Size 26 #define NDSIZE_3 0x00000300 // Next Descriptor Size 27 #define NDSIZE_2 0x00000200 // Next Descriptor Size 28 #define NDSIZE_1 0x00000100 // Next Descriptor Size 29 30 #define FLOW_STOP 0x0000 31 #define FLOW_AUTO 0x1000 32 #define FLOW_DESC_AR 0x4000 33 #define FLOW_DESC_SM 0x6000 34 #define FLOW_DESC_LG 0x7000 35 36 typedef struct 37 { 38 unsigned int ndp; 39 //unsigned short ndpl; 40 //unsigned short ndph; 41 unsigned int sa; 42 //unsigned short sal; 43 //unsigned short sah; 44 45 unsigned short dmacfg; 46 unsigned short xcnt; 47 unsigned short xmod; 48 unsigned short ycnt; 49 unsigned short ymod; 50 51 } LARGE_DESC; 52 53 typedef struct 54 { 55 unsigned short ndpl; 56 unsigned short sal; 57 unsigned short sah; 58 unsigned short dmacfg; 59 unsigned short xcnt; 60 unsigned short xmod; 61 unsigned short ycnt; 62 unsigned short ymod; 63 } SMALL_DESC; 64 65 typedef struct 66 { 67 unsigned short sal; 68 unsigned short sah; 69 unsigned short dmacfg; 70 unsigned short xcnt; 71 unsigned short xmod; 72 unsigned short ycnt; 73 unsigned short ymod; 74 } ARRAY_DESC_7; 75 76 typedef struct 77 { 78 unsigned short sal; 79 unsigned short sah; 80 unsigned short dmacfg; 81 unsigned short xcnt; 82 unsigned short xmod; 83 unsigned short ycnt; 84 } ARRAY_DESC_6; 85 86 typedef struct 87 { 88 unsigned short sal; 89 unsigned short sah; 90 unsigned short dmacfg; 91 unsigned short xcnt; 92 unsigned short xmod; 93 } ARRAY_DESC_5; 94 95 typedef struct 96 { 97 unsigned short sal; 98 unsigned short sah; 99 unsigned short dmacfg; 100 unsigned short xcnt; 101 } ARRAY_DESC_4; 102 103 typedef struct 104 { 105 unsigned short sal; 106 unsigned short sah; 107 unsigned short dmacfg; 108 } ARRAY_DESC_3; 109 110 typedef struct 111 { 112 unsigned short sal; 113 unsigned short sah; 114 } ARRAY_DESC_2; 115 116 typedef struct 117 { 118 unsigned short sal; 119 } ARRAY_DESC_1; 120 121 #if defined(__cplusplus) 122 } 123 #endif 124 125 #endif //_dma_desc_h 126