1
2
3
4
5
6
7
8
9
10
11
12
13
14 #define UMAL_CFG1 (PKUNITY_UMAL_BASE + 0x0000)
15
16
17
18 #define UMAL_CFG2 (PKUNITY_UMAL_BASE + 0x0004)
19
20
21
22 #define UMAL_IPGIFG (PKUNITY_UMAL_BASE + 0x0008)
23
24
25
26 #define UMAL_HALFDUPLEX (PKUNITY_UMAL_BASE + 0x000c)
27
28
29
30 #define UMAL_MAXFRAME (PKUNITY_UMAL_BASE + 0x0010)
31
32
33
34 #define UMAL_TESTREG (PKUNITY_UMAL_BASE + 0x001c)
35
36
37
38 #define UMAL_MIICFG (PKUNITY_UMAL_BASE + 0x0020)
39
40
41
42 #define UMAL_MIICMD (PKUNITY_UMAL_BASE + 0x0024)
43
44
45
46 #define UMAL_MIIADDR (PKUNITY_UMAL_BASE + 0x0028)
47
48
49
50 #define UMAL_MIICTRL (PKUNITY_UMAL_BASE + 0x002c)
51
52
53
54 #define UMAL_MIISTATUS (PKUNITY_UMAL_BASE + 0x0030)
55
56
57
58 #define UMAL_MIIIDCT (PKUNITY_UMAL_BASE + 0x0034)
59
60
61
62 #define UMAL_IFCTRL (PKUNITY_UMAL_BASE + 0x0038)
63
64
65
66 #define UMAL_IFSTATUS (PKUNITY_UMAL_BASE + 0x003c)
67
68
69
70 #define UMAL_STADDR1 (PKUNITY_UMAL_BASE + 0x0040)
71
72
73
74 #define UMAL_STADDR2 (PKUNITY_UMAL_BASE + 0x0044)
75
76
77
78
79
80 #define UMAL_FIFOCFG0 (PKUNITY_UMAL_BASE + 0x0048)
81 #define UMAL_FIFOCFG1 (PKUNITY_UMAL_BASE + 0x004c)
82 #define UMAL_FIFOCFG2 (PKUNITY_UMAL_BASE + 0x0050)
83 #define UMAL_FIFOCFG3 (PKUNITY_UMAL_BASE + 0x0054)
84 #define UMAL_FIFOCFG4 (PKUNITY_UMAL_BASE + 0x0058)
85 #define UMAL_FIFOCFG5 (PKUNITY_UMAL_BASE + 0x005c)
86 #define UMAL_FIFORAM0 (PKUNITY_UMAL_BASE + 0x0060)
87 #define UMAL_FIFORAM1 (PKUNITY_UMAL_BASE + 0x0064)
88 #define UMAL_FIFORAM2 (PKUNITY_UMAL_BASE + 0x0068)
89 #define UMAL_FIFORAM3 (PKUNITY_UMAL_BASE + 0x006c)
90 #define UMAL_FIFORAM4 (PKUNITY_UMAL_BASE + 0x0070)
91 #define UMAL_FIFORAM5 (PKUNITY_UMAL_BASE + 0x0074)
92 #define UMAL_FIFORAM6 (PKUNITY_UMAL_BASE + 0x0078)
93 #define UMAL_FIFORAM7 (PKUNITY_UMAL_BASE + 0x007c)
94
95
96
97
98
99
100
101
102
103 #define UMAL_DMATxCtrl (PKUNITY_UMAL_BASE + 0x0180)
104
105
106
107 #define UMAL_DMATxDescriptor (PKUNITY_UMAL_BASE + 0x0184)
108
109
110
111 #define UMAL_DMATxStatus (PKUNITY_UMAL_BASE + 0x0188)
112
113
114
115 #define UMAL_DMARxCtrl (PKUNITY_UMAL_BASE + 0x018c)
116
117
118
119 #define UMAL_DMARxDescriptor (PKUNITY_UMAL_BASE + 0x0190)
120
121
122
123 #define UMAL_DMARxStatus (PKUNITY_UMAL_BASE + 0x0194)
124
125
126
127 #define UMAL_DMAIntrMask (PKUNITY_UMAL_BASE + 0x0198)
128
129
130
131 #define UMAL_DMAInterrupt (PKUNITY_UMAL_BASE + 0x019c)
132
133
134
135
136 #define UMAL_CFG1_TXENABLE FIELD(1, 1, 0)
137 #define UMAL_CFG1_RXENABLE FIELD(1, 1, 2)
138 #define UMAL_CFG1_TXFLOWCTL FIELD(1, 1, 4)
139 #define UMAL_CFG1_RXFLOWCTL FIELD(1, 1, 5)
140 #define UMAL_CFG1_CONFLPBK FIELD(1, 1, 8)
141 #define UMAL_CFG1_RESET FIELD(1, 1, 31)
142 #define UMAL_CFG1_CONFFLCTL (MAC_TX_FLOW_CTL | MAC_RX_FLOW_CTL)
143
144
145
146
147 #define UMAL_CFG2_FULLDUPLEX FIELD(1, 1, 0)
148 #define UMAL_CFG2_CRCENABLE FIELD(1, 1, 1)
149 #define UMAL_CFG2_PADCRC FIELD(1, 1, 2)
150 #define UMAL_CFG2_LENGTHCHECK FIELD(1, 1, 4)
151 #define UMAL_CFG2_MODEMASK FMASK(2, 8)
152 #define UMAL_CFG2_NIBBLEMODE FIELD(1, 2, 8)
153 #define UMAL_CFG2_BYTEMODE FIELD(2, 2, 8)
154 #define UMAL_CFG2_PREAMBLENMASK FMASK(4, 12)
155 #define UMAL_CFG2_DEFPREAMBLEN FIELD(7, 4, 12)
156 #define UMAL_CFG2_FD100 (UMAL_CFG2_DEFPREAMBLEN | UMAL_CFG2_NIBBLEMODE \
157 | UMAL_CFG2_LENGTHCHECK | UMAL_CFG2_PADCRC \
158 | UMAL_CFG2_CRCENABLE | UMAL_CFG2_FULLDUPLEX)
159 #define UMAL_CFG2_FD1000 (UMAL_CFG2_DEFPREAMBLEN | UMAL_CFG2_BYTEMODE \
160 | UMAL_CFG2_LENGTHCHECK | UMAL_CFG2_PADCRC \
161 | UMAL_CFG2_CRCENABLE | UMAL_CFG2_FULLDUPLEX)
162 #define UMAL_CFG2_HD100 (UMAL_CFG2_DEFPREAMBLEN | UMAL_CFG2_NIBBLEMODE \
163 | UMAL_CFG2_LENGTHCHECK | UMAL_CFG2_PADCRC \
164 | UMAL_CFG2_CRCENABLE)
165
166
167
168
169 #define UMAL_IFCTRL_RESET FIELD(1, 1, 31)
170
171
172
173
174 #define UMAL_MIICFG_RESET FIELD(1, 1, 31)
175
176
177
178
179 #define UMAL_MIICMD_READ FIELD(1, 1, 0)
180
181
182
183
184 #define UMAL_MIIIDCT_BUSY FIELD(1, 1, 0)
185 #define UMAL_MIIIDCT_NOTVALID FIELD(1, 1, 2)
186
187
188
189
190 #define UMAL_DMA_Enable FIELD(1, 1, 0)
191
192
193
194
195 #define UMAL_DMAIntrMask_ENABLEHALFWORD FIELD(1, 1, 16)
196
197
198
199
200 #define CLR_RX_BUS_ERR FIELD(1, 1, 3)
201 #define CLR_RX_OVERFLOW FIELD(1, 1, 2)
202 #define CLR_RX_PKT FIELD(1, 1, 0)
203
204
205
206
207 #define CLR_TX_BUS_ERR FIELD(1, 1, 3)
208 #define CLR_TX_UNDERRUN FIELD(1, 1, 1)
209 #define CLR_TX_PKT FIELD(1, 1, 0)
210
211
212
213
214 #define INT_RX_MASK FIELD(0xd, 4, 4)
215 #define INT_TX_MASK FIELD(0xb, 4, 0)
216
217 #define INT_RX_BUS_ERR FIELD(1, 1, 7)
218 #define INT_RX_OVERFLOW FIELD(1, 1, 6)
219 #define INT_RX_PKT FIELD(1, 1, 4)
220 #define INT_TX_BUS_ERR FIELD(1, 1, 3)
221 #define INT_TX_UNDERRUN FIELD(1, 1, 1)
222 #define INT_TX_PKT FIELD(1, 1, 0)
223
224
225
226
227 #define UMAL_DESC_PACKETSIZE_EMPTY FIELD(1, 1, 31)
228 #define UMAL_DESC_PACKETSIZE_NONEMPTY FIELD(0, 1, 31)
229 #define UMAL_DESC_PACKETSIZE_SIZEMASK FMASK(12, 0)
230