1
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
/* ... */
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include <stdint.h>
typedef struct emac_dma_dev_s {
volatile union {
struct {
uint32_t sw_rst : 1;
uint32_t dma_arb_sch : 1;
uint32_t desc_skip_len : 5;
uint32_t alt_desc_size : 1;
uint32_t prog_burst_len : 6;
uint32_t pri_ratio : 2;
uint32_t fixed_burst : 1;
uint32_t rx_dma_pbl : 6;
uint32_t use_sep_pbl : 1;
uint32_t pblx8_mode : 1;
uint32_t dmaaddralibea : 1;
uint32_t dmamixedburst : 1;
uint32_t reserved27 : 1;
uint32_t reserved28 : 2;
uint32_t reserved30 : 1;
uint32_t reserved31 : 1;
};
uint32_t val;
} dmabusmode;
uint32_t dmatxpolldemand;
uint32_t dmarxpolldemand;
uint32_t dmarxbaseaddr;
uint32_t dmatxbaseaddr;
volatile union {
struct {
uint32_t trans_int : 1;
uint32_t trans_proc_stop : 1;
uint32_t trans_buf_unavail : 1;
uint32_t trans_jabber_to : 1;
uint32_t recv_ovflow : 1;
uint32_t trans_undflow : 1;
uint32_t recv_int : 1;
uint32_t recv_buf_unavail : 1;
uint32_t recv_proc_stop : 1;
uint32_t recv_wdt_to : 1;
uint32_t early_trans_int : 1;
uint32_t reserved11 : 2;
uint32_t fatal_bus_err_int : 1;
uint32_t early_recv_int : 1;
uint32_t abn_int_summ : 1;
uint32_t norm_int_summ : 1;
uint32_t recv_proc_state : 3;
uint32_t trans_proc_state : 3;
uint32_t error_bits : 3;
uint32_t reserved26 : 1;
uint32_t reserved27 : 1;
uint32_t pmt_int : 1;
uint32_t ts_tri_int : 1;
uint32_t reserved30 : 1;
uint32_t reserved31 : 1;
};
uint32_t val;
} dmastatus;
volatile union {
struct {
uint32_t reserved0 : 1;
uint32_t start_stop_rx : 1;
uint32_t opt_second_frame : 1;
uint32_t rx_thresh_ctrl : 2;
uint32_t drop_gfrm : 1;
uint32_t fwd_under_gf : 1;
uint32_t fwd_err_frame : 1;
uint32_t reserved8 : 1;
uint32_t reserved9 : 2;
uint32_t reserved11 : 2;
uint32_t start_stop_transmission_command : 1;
uint32_t tx_thresh_ctrl : 3;
uint32_t reserved17 : 3;
uint32_t flush_tx_fifo : 1;
uint32_t tx_str_fwd : 1;
uint32_t reserved22 : 1;
uint32_t reserved23 : 1;
uint32_t dis_flush_recv_frames : 1;
uint32_t rx_store_forward : 1;
uint32_t dis_drop_tcpip_err_fram : 1;
uint32_t reserved27 : 5;
};
uint32_t val;
} dmaoperation_mode;
volatile union {
struct {
uint32_t dmain_tie : 1;
uint32_t dmain_tse : 1;
uint32_t dmain_tbue : 1;
uint32_t dmain_tjte : 1;
uint32_t dmain_oie : 1;
uint32_t dmain_uie : 1;
uint32_t dmain_rie : 1;
uint32_t dmain_rbue : 1;
uint32_t dmain_rse : 1;
uint32_t dmain_rwte : 1;
uint32_t dmain_etie : 1;
uint32_t reserved11 : 2;
uint32_t dmain_fbee : 1;
uint32_t dmain_erie : 1;
uint32_t dmain_aise : 1;
uint32_t dmain_nise : 1;
uint32_t reserved17 : 15;
};
uint32_t val;
} dmain_en;
volatile union {
struct {
uint32_t missed_fc : 16;
uint32_t overflow_bmfc : 1;
uint32_t overflow_fc : 11;
uint32_t overflow_bfoc : 1;
uint32_t reserved29 : 3;
};
uint32_t val;
} dmamissedfr;
volatile union {
struct {
uint32_t riwtc : 8;
uint32_t reserved8 : 24;
};
uint32_t val;
} dmarintwdtimer;
uint32_t reserved_28;
uint32_t reserved_2c;
uint32_t reserved_30;
uint32_t reserved_34;
uint32_t reserved_38;
uint32_t reserved_3c;
uint32_t reserved_40;
uint32_t reserved_44;
uint32_t dmatxcurrdesc;
uint32_t dmarxcurrdesc;
uint32_t dmatxcurraddr_buf;
uint32_t dmarxcurraddr_buf;
} emac_dma_dev_t;
extern emac_dma_dev_t EMAC_DMA;
#ifdef __cplusplus
}
#endif