summaryrefslogtreecommitdiffstats
path: root/src/amd/registers/pkt3.json
blob: 29b91689439bbdb91d40b2839957283349307ad0 (plain)
1
2
3
4
5
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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
{
 "enums": {
  "COMMAND__SAIC": {
   "entries": [
    {"name": "INCREMENT", "value": 0},
    {"name": "NO_INCREMENT", "value": 1}
   ]
  },
  "COMMAND__SAS": {
   "entries": [
    {"name": "MEMORY", "value": 0},
    {"name": "REGISTER", "value": 1}
   ]
  },
  "COMMAND__SRC_SWAP": {
   "entries": [
    {"name": "NONE", "value": 0},
    {"name": "8_IN_16", "value": 1},
    {"name": "8_IN_32", "value": 2},
    {"name": "8_IN_64", "value": 3}
   ]
  },
  "CONTROL__DST_SEL": {
   "entries": [
    {"name": "MEM_MAPPED_REGISTER", "value": 0},
    {"comment": "sync across GRBM", "name": "MEM_GRBM", "value": 1},
    {"name": "TC_L2", "value": 2},
    {"name": "GDS", "value": 3},
    {"name": "RESERVED", "value": 4}
   ]
  },
  "CONTROL__DST_SEL_cik": {
   "entries": [
    {"name": "MEM_MAPPED_REGISTER", "value": 0},
    {"comment": "sync across GRBM", "name": "MEM_GRBM", "value": 1},
    {"name": "TC_L2", "value": 2},
    {"name": "GDS", "value": 3},
    {"name": "RESERVED", "value": 4},
    {"name": "MEM", "value": 5}
   ]
  },
  "CONTROL__ENGINE_SEL": {
   "entries": [
    {"name": "ME", "value": 0},
    {"name": "PFP", "value": 1},
    {"name": "CE", "value": 2},
    {"name": "DE", "value": 3}
   ]
  },
  "CP_DMA_WORD1__DST_SEL": {
   "entries": [
    {"name": "DST_ADDR", "value": 0},
    {"comment": "program DAS to 1 as well", "name": "GDS", "value": 1}
   ]
  },
  "CP_DMA_WORD1__DST_SEL_cik": {
   "entries": [
    {"name": "DST_ADDR", "value": 0},
    {"comment": "program DAS to 1 as well", "name": "GDS", "value": 1},
    {"name": "DST_ADDR_TC_L2", "value": 3}
   ]
  },
  "CP_DMA_WORD1__DST_SEL_gfx9": {
   "entries": [
    {"name": "DST_ADDR", "value": 0},
    {"comment": "program DAS to 1 as well", "name": "GDS", "value": 1},
    {"name": "NOWHERE", "value": 2},
    {"name": "DST_ADDR_TC_L2", "value": 3}
   ]
  },
  "CP_DMA_WORD1__ENGINE": {
   "entries": [
    {"name": "ME", "value": 0},
    {"name": "PFP", "value": 1}
   ]
  },
  "CP_DMA_WORD1__SRC_SEL": {
   "entries": [
    {"name": "SRC_ADDR", "value": 0},
    {"comment": "program SAS to 1 as well", "name": "GDS", "value": 1},
    {"name": "DATA", "value": 2}
   ]
  },
  "CP_DMA_WORD1__SRC_SEL_cik": {
   "entries": [
    {"name": "SRC_ADDR", "value": 0},
    {"comment": "program SAS to 1 as well", "name": "GDS", "value": 1},
    {"name": "DATA", "value": 2},
    {"name": "SRC_ADDR_TC_L2", "value": 3}
   ]
  },
  "GCR_GL1_RANGE": {
   "entries": [
    {"name": "GL1_ALL", "value": 0},
    {"name": "GL1_RANGE", "value": 2},
    {"name": "GL1_FIRST_LAST", "value": 3}
   ]
  },
  "GCR_GL2_RANGE": {
   "entries": [
    {"name": "GL2_ALL", "value": 0},
    {"name": "GL2_VOL", "value": 1},
    {"name": "GL2_RANGE", "value": 2},
    {"name": "GL2_FIRST_LAST", "value": 3}
   ]
  },
  "GCR_GLI_INV": {
   "entries": [
    {"name": "GLI_NOP", "value": 0},
    {"name": "GLI_ALL", "value": 1},
    {"name": "GLI_RANGE", "value": 2},
    {"name": "GLI_FIRST_LAST", "value": 3}
   ]
  },
  "GCR_SEQ": {
   "entries": [
    {"name": "SEQ_PARALLEL", "value": 0},
    {"name": "SEQ_FORWARD", "value": 1},
    {"name": "SEQ_REVERSE", "value": 2}
   ]
  }
 },
 "register_mappings": [
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney"],
   "map": {"at": 1044, "to": "pkt3"},
   "name": "COMMAND",
   "type_ref": "COMMAND"
  },
  {
   "chips": ["gfx9", "gfx10"],
   "map": {"at": 1044, "to": "pkt3"},
   "name": "COMMAND",
   "type_ref": "COMMAND_gfx9"
  },
  {
   "chips": ["gfx6"],
   "map": {"at": 880, "to": "pkt3"},
   "name": "CONTROL",
   "type_ref": "CONTROL"
  },
  {
   "chips": ["gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 880, "to": "pkt3"},
   "name": "CONTROL",
   "type_ref": "CONTROL_cik"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1040, "to": "pkt3"},
   "name": "CP_DMA_WORD0",
   "type_ref": "CP_DMA_WORD0"
  },
  {
   "chips": ["gfx6"],
   "map": {"at": 1041, "to": "pkt3"},
   "name": "CP_DMA_WORD1",
   "type_ref": "CP_DMA_WORD1"
  },
  {
   "chips": ["gfx7", "gfx8", "fiji", "stoney"],
   "map": {"at": 1041, "to": "pkt3"},
   "name": "CP_DMA_WORD1",
   "type_ref": "CP_DMA_WORD1_cik"
  },
  {
   "chips": ["gfx9", "gfx10"],
   "map": {"at": 1041, "to": "pkt3"},
   "name": "CP_DMA_WORD1",
   "type_ref": "CP_DMA_WORD1_gfx9"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1042, "to": "pkt3"},
   "name": "CP_DMA_WORD2",
   "type_ref": "CP_DMA_WORD2"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1043, "to": "pkt3"},
   "name": "CP_DMA_WORD3",
   "type_ref": "CP_DMA_WORD3"
  },
  {
   "chips": ["gfx6"],
   "map": {"at": 1280, "to": "pkt3"},
   "name": "DMA_DATA_WORD0",
   "type_ref": "DMA_DATA_WORD0"
  },
  {
   "chips": ["gfx7", "gfx8", "fiji", "stoney"],
   "map": {"at": 1280, "to": "pkt3"},
   "name": "DMA_DATA_WORD0",
   "type_ref": "DMA_DATA_WORD0_cik"
  },
  {
   "chips": ["gfx9", "gfx10"],
   "map": {"at": 1280, "to": "pkt3"},
   "name": "DMA_DATA_WORD0",
   "type_ref": "DMA_DATA_WORD0_gfx9"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 882, "to": "pkt3"},
   "name": "DST_ADDR_HI"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1284, "to": "pkt3"},
   "name": "DST_ADDR_HI"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 881, "to": "pkt3"},
   "name": "DST_ADDR_LO"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1283, "to": "pkt3"},
   "name": "DST_ADDR_LO"
  },
  {
   "chips": ["gfx10"],
   "map": {"at": 1414, "to": "pkt3"},
   "name": "GCR_CNTL",
   "type_ref": "GCR_CNTL"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1009, "to": "pkt3"},
   "name": "IB_BASE_HI"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1008, "to": "pkt3"},
   "name": "IB_BASE_LO"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1010, "to": "pkt3"},
   "name": "IB_CONTROL",
   "type_ref": "IB_CONTROL"
  },
  {
   "chips": ["gfx10"],
   "map": {"at": 1168, "to": "pkt3"},
   "name": "RELEASE_MEM_OP",
   "type_ref": "RELEASE_MEM_OP"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1282, "to": "pkt3"},
   "name": "SRC_ADDR_HI"
  },
  {
   "chips": ["gfx6", "gfx7", "gfx8", "fiji", "stoney", "gfx9", "gfx10"],
   "map": {"at": 1281, "to": "pkt3"},
   "name": "SRC_ADDR_LO"
  }
 ],
 "register_types": {
  "COMMAND": {
   "fields": [
    {"bits": [0, 20], "name": "BYTE_COUNT"},
    {"bits": [21, 21], "name": "DISABLE_WR_CONFIRM"},
    {"bits": [22, 23], "enum_ref": "COMMAND__SRC_SWAP", "name": "SRC_SWAP"},
    {"bits": [24, 25], "enum_ref": "COMMAND__SRC_SWAP", "name": "DST_SWAP"},
    {"bits": [26, 26], "enum_ref": "COMMAND__SAS", "name": "SAS"},
    {"bits": [27, 27], "enum_ref": "COMMAND__SAS", "name": "DAS"},
    {"bits": [28, 28], "enum_ref": "COMMAND__SAIC", "name": "SAIC"},
    {"bits": [29, 29], "enum_ref": "COMMAND__SAIC", "name": "DAIC"},
    {"bits": [30, 30], "name": "RAW_WAIT"}
   ]
  },
  "COMMAND_gfx9": {
   "fields": [
    {"bits": [0, 25], "name": "BYTE_COUNT"},
    {"bits": [26, 26], "enum_ref": "COMMAND__SAS", "name": "SAS"},
    {"bits": [27, 27], "enum_ref": "COMMAND__SAS", "name": "DAS"},
    {"bits": [28, 28], "enum_ref": "COMMAND__SAIC", "name": "SAIC"},
    {"bits": [29, 29], "enum_ref": "COMMAND__SAIC", "name": "DAIC"},
    {"bits": [30, 30], "name": "RAW_WAIT"},
    {"bits": [31, 31], "name": "DISABLE_WR_CONFIRM"}
   ]
  },
  "CONTROL": {
   "fields": [
    {"bits": [8, 11], "enum_ref": "CONTROL__DST_SEL", "name": "DST_SEL"},
    {"bits": [16, 16], "name": "WR_ONE_ADDR"},
    {"bits": [20, 20], "name": "WR_CONFIRM"},
    {"bits": [30, 31], "enum_ref": "CONTROL__ENGINE_SEL", "name": "ENGINE_SEL"}
   ]
  },
  "CONTROL_cik": {
   "fields": [
    {"bits": [8, 11], "enum_ref": "CONTROL__DST_SEL_cik", "name": "DST_SEL"},
    {"bits": [16, 16], "name": "WR_ONE_ADDR"},
    {"bits": [20, 20], "name": "WR_CONFIRM"},
    {"bits": [30, 31], "enum_ref": "CONTROL__ENGINE_SEL", "name": "ENGINE_SEL"}
   ]
  },
  "CP_DMA_WORD0": {
   "fields": [
    {"bits": [0, 31], "name": "SRC_ADDR_LO"}
   ]
  },
  "CP_DMA_WORD1": {
   "fields": [
    {"bits": [0, 15], "name": "SRC_ADDR_HI"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL", "name": "DST_SEL"},
    {"bits": [27, 27], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "CP_DMA_WORD1_cik": {
   "fields": [
    {"bits": [0, 15], "name": "SRC_ADDR_HI"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL_cik", "name": "DST_SEL"},
    {"bits": [27, 27], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL_cik", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "CP_DMA_WORD1_gfx9": {
   "fields": [
    {"bits": [0, 15], "name": "SRC_ADDR_HI"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL_gfx9", "name": "DST_SEL"},
    {"bits": [27, 27], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL_cik", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "CP_DMA_WORD2": {
   "fields": [
    {"bits": [0, 31], "name": "DST_ADDR_LO"}
   ]
  },
  "CP_DMA_WORD3": {
   "fields": [
    {"bits": [0, 15], "name": "DST_ADDR_HI"}
   ]
  },
  "DMA_DATA_WORD0": {
   "fields": [
    {"bits": [0, 0], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL", "name": "DST_SEL"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "DMA_DATA_WORD0_cik": {
   "fields": [
    {"bits": [0, 0], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [13, 14], "name": "SRC_CACHE_POLICY"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL_cik", "name": "DST_SEL"},
    {"bits": [25, 26], "name": "DST_CACHE_POLICY"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL_cik", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "DMA_DATA_WORD0_gfx9": {
   "fields": [
    {"bits": [0, 0], "enum_ref": "CP_DMA_WORD1__ENGINE", "name": "ENGINE"},
    {"bits": [13, 14], "name": "SRC_CACHE_POLICY"},
    {"bits": [20, 21], "enum_ref": "CP_DMA_WORD1__DST_SEL_gfx9", "name": "DST_SEL"},
    {"bits": [25, 26], "name": "DST_CACHE_POLICY"},
    {"bits": [29, 30], "enum_ref": "CP_DMA_WORD1__SRC_SEL_cik", "name": "SRC_SEL"},
    {"bits": [31, 31], "name": "CP_SYNC"}
   ]
  },
  "GCR_CNTL": {
   "fields": [
    {"bits": [0, 1], "enum_ref": "GCR_GLI_INV", "name": "GLI_INV"},
    {"bits": [2, 3], "enum_ref": "GCR_GL1_RANGE", "name": "GL1_RANGE"},
    {"bits": [4, 4], "name": "GLM_WB"},
    {"bits": [5, 5], "name": "GLM_INV"},
    {"bits": [6, 6], "name": "GLK_WB"},
    {"bits": [7, 7], "name": "GLK_INV"},
    {"bits": [8, 8], "name": "GLV_INV"},
    {"bits": [9, 9], "name": "GL1_INV"},
    {"bits": [10, 10], "name": "GL2_US"},
    {"bits": [11, 12], "enum_ref": "GCR_GL2_RANGE", "name": "GL2_RANGE"},
    {"bits": [13, 13], "name": "GL2_DISCARD"},
    {"bits": [14, 14], "name": "GL2_INV"},
    {"bits": [15, 15], "name": "GL2_WB"},
    {"bits": [16, 17], "enum_ref": "GCR_SEQ", "name": "SEQ"},
    {"bits": [18, 18], "name": "RANGE_IS_PA"}
   ]
  },
  "IB_CONTROL": {
   "fields": [
    {"bits": [0, 19], "name": "IB_SIZE"},
    {"bits": [20, 20], "name": "CHAIN"},
    {"bits": [23, 23], "name": "VALID"}
   ]
  },
  "RELEASE_MEM_OP": {
   "fields": [
    {"bits": [0, 5], "name": "EVENT_TYPE"},
    {"bits": [8, 11], "name": "EVENT_INDEX"},
    {"bits": [12, 12], "name": "GLM_WB"},
    {"bits": [13, 13], "name": "GLM_INV"},
    {"bits": [14, 14], "name": "GLV_INV"},
    {"bits": [15, 15], "name": "GL1_INV"},
    {"bits": [16, 16], "name": "GL2_US"},
    {"bits": [17, 18], "enum_ref": "GCR_GL2_RANGE", "name": "GL2_RANGE"},
    {"bits": [19, 19], "name": "GL2_DISCARD"},
    {"bits": [20, 20], "name": "GL2_INV"},
    {"bits": [21, 21], "name": "GL2_WB"},
    {"bits": [22, 23], "enum_ref": "GCR_SEQ", "name": "SEQ"}
   ]
  }
 }
}