メンバ |
説明 |
uint32_t SrcAddr; |
転送元アドレス |
uint32_t DstAddr; |
転送先アドレス |
void * next; |
次ディスクリプタのポインタ |
union { struct { unsigned int ChWEvent : 8; unsigned int WSync : 1; unsigned int ChSEvent : 3; unsigned int SEventEn : 1; unsigned int WEventEn : 1; unsigned int SDEn : 1; unsigned int ExpEn : 1; unsigned int ChEn : 1; unsigned int WDTEn : 1; unsigned int DstCtrl : 2; unsigned int SrcCtrl : 2; unsigned int DstWidth : 3; unsigned int SrcWidth : 3; unsigned int TCMsk : 1; unsigned int SrcTcnt : 3; } st; uint32_t val; } Ctrl; |
Controlレジスタ |
struct { unsigned int ChWEvent : 8; unsigned int WSync : 1; unsigned int ChSEvent : 3; unsigned int SEventEn : 1; unsigned int WEventEn : 1; unsigned int SDEn : 1; unsigned int ExpEn : 1; unsigned int ChEn : 1; unsigned int WDTEn : 1; unsigned int DstCtrl : 2; unsigned int SrcCtrl : 2; unsigned int DstWidth : 3; unsigned int SrcWidth : 3; unsigned int TCMsk : 1; unsigned int SrcTcnt : 3; } st; |
DMACnCTRL_REG レジスタのビット定義 |
unsigned int ChWEvent : 8; |
[7:0] チャンネルのイベント待機 |
unsigned int WSync : 1; |
[8] 最後の書き込み完了の待機 |
unsigned int ChSEvent : 3; |
[11:9] チャンネルのイベント |
unsigned int SEventEn : 1; |
[12] イベント設定 |
unsigned int WEventEn : 1; |
[13] イベント待機 |
unsigned int SDEn : 1; |
[14] 2D転送 |
unsigned int ExpEn : 1; |
[15] 拡張制御 |
unsigned int ChEn : 1; |
[16] チャンネル |
unsigned int WDTEn : 1; |
[17] ウォッチドッグタイマ |
unsigned int DstCtrl : 2; |
[19:18] 転送先バーストタイプの制御方法 |
unsigned int SrcCtrl : 2; |
[21:20] 転送元バーストタイプの制御方法 |
unsigned int DstWidth : 3; |
[24:22] 転送先のデータ幅 |
unsigned int SrcWidth : 3; |
[27:25] 転送元のデータ幅 |
unsigned int TCMsk : 1; |
[28] ターミナルカウントのマスク |
unsigned int SrcTcnt : 3; |
[31:29] 1つのDMAハンドシェイク動作の転送元転送カウント単位 |
uint32_t val; |
DMACnCTRL_REG レジスタ |
union { struct { unsigned int TCnt : 22; } d1; struct { unsigned int XTCnt : 16; unsigned int YTCnt : 16; } d2; uint32_t val; } Trns; |
Transfer Size |
struct { unsigned int TCnt : 22; } d1; |
DMACnTRNS_SIZE_1D レジスタ |
unsigned int TCnt : 22; |
[21:0] 現在のディスクリプタの転送カウント |
struct { unsigned int XTCnt : 16; unsigned int YTCnt : 16; } d2; |
DMACnTRNS_SIZE_2D レジスタ |
unsigned int XTCnt : 16; |
[15:0] 現在のディスクリプタでX方向の転送カウント |
unsigned int YTCnt : 16; |
[31:16] 現在のディスクリプタでY方向の転送カウント |
uint32_t val; |
DMACnTRNS_SIZE_xD レジスタ |
union { struct { unsigned int SrcStride : 16; unsigned int DstStride : 16; } st; uint32_t val; } Stride; |
SrcDst Stride |
struct { unsigned int SrcStride : 16; unsigned int DstStride : 16; } st; |
DMACnSTRIDE_SRC_DST_ADDR レジスタのビット定義 |
unsigned int SrcStride : 16; |
[15:0] 転送元ストライド値 |
unsigned int DstStride : 16; |
[31:16] 転送先ストライド値 |
uint32_t val; |
ディスクリプタ型