1 /* SPDX-License-Identifier: MIT */
2 static uint32_t gf100_grgpc_data[] = {
3 /* 0x0000: gpc_mmio_list_head */
4 	0x00000064,
5 /* 0x0004: gpc_mmio_list_tail */
6 /* 0x0004: tpc_mmio_list_head */
7 	0x00000064,
8 /* 0x0008: tpc_mmio_list_tail */
9 /* 0x0008: unk_mmio_list_head */
10 	0x00000064,
11 /* 0x000c: unk_mmio_list_tail */
12 	0x00000064,
13 /* 0x0010: gpc_id */
14 	0x00000000,
15 /* 0x0014: tpc_count */
16 	0x00000000,
17 /* 0x0018: tpc_mask */
18 	0x00000000,
19 /* 0x001c: cmd_queue */
20 	0x00000000,
21 	0x00000000,
22 	0x00000000,
23 	0x00000000,
24 	0x00000000,
25 	0x00000000,
26 	0x00000000,
27 	0x00000000,
28 	0x00000000,
29 	0x00000000,
30 	0x00000000,
31 	0x00000000,
32 	0x00000000,
33 	0x00000000,
34 	0x00000000,
35 	0x00000000,
36 	0x00000000,
37 	0x00000000,
38 };
39 
40 static uint32_t gf100_grgpc_code[] = {
41 	0x03a10ef5,
42 /* 0x0004: queue_put */
43 	0x9800d898,
44 	0x86f001d9,
45 	0x0489b808,
46 	0xf00c1bf4,
47 	0x21f502f7,
48 	0x00f8037e,
49 /* 0x001c: queue_put_next */
50 	0xb60798c4,
51 	0x8dbb0384,
52 	0x0880b600,
53 	0x80008e80,
54 	0x90b6018f,
55 	0x0f94f001,
56 	0xf801d980,
57 /* 0x0039: queue_get */
58 	0x0131f400,
59 	0x9800d898,
60 	0x89b801d9,
61 	0x210bf404,
62 	0xb60789c4,
63 	0x9dbb0394,
64 	0x0890b600,
65 	0x98009e98,
66 	0x80b6019f,
67 	0x0f84f001,
68 	0xf400d880,
69 /* 0x0066: queue_get_done */
70 	0x00f80132,
71 /* 0x0068: nv_rd32 */
72 	0xf002ecb9,
73 	0x07f11fc9,
74 	0x03f0ca00,
75 	0x000cd001,
76 /* 0x007a: nv_rd32_wait */
77 	0xc7f104bd,
78 	0xc3f0ca00,
79 	0x00cccf01,
80 	0xf41fccc8,
81 	0xa7f0f31b,
82 	0x1021f506,
83 	0x00f7f101,
84 	0x01f3f0cb,
85 	0xf800ffcf,
86 /* 0x009d: nv_wr32 */
87 	0x0007f100,
88 	0x0103f0cc,
89 	0xbd000fd0,
90 	0x02ecb904,
91 	0xf01fc9f0,
92 	0x07f11ec9,
93 	0x03f0ca00,
94 	0x000cd001,
95 /* 0x00be: nv_wr32_wait */
96 	0xc7f104bd,
97 	0xc3f0ca00,
98 	0x00cccf01,
99 	0xf41fccc8,
100 	0x00f8f31b,
101 /* 0x00d0: wait_donez */
102 	0x99f094bd,
103 	0x0007f100,
104 	0x0203f00f,
105 	0xbd0009d0,
106 	0x0007f104,
107 	0x0203f006,
108 	0xbd000ad0,
109 /* 0x00ed: wait_donez_ne */
110 	0x0087f104,
111 	0x0183f000,
112 	0xff0088cf,
113 	0x1bf4888a,
114 	0xf094bdf3,
115 	0x07f10099,
116 	0x03f01700,
117 	0x0009d002,
118 	0x00f804bd,
119 /* 0x0110: wait_doneo */
120 	0x99f094bd,
121 	0x0007f100,
122 	0x0203f00f,
123 	0xbd0009d0,
124 	0x0007f104,
125 	0x0203f006,
126 	0xbd000ad0,
127 /* 0x012d: wait_doneo_e */
128 	0x0087f104,
129 	0x0183f000,
130 	0xff0088cf,
131 	0x0bf4888a,
132 	0xf094bdf3,
133 	0x07f10099,
134 	0x03f01700,
135 	0x0009d002,
136 	0x00f804bd,
137 /* 0x0150: mmctx_size */
138 /* 0x0152: nv_mmctx_size_loop */
139 	0xe89894bd,
140 	0x1a85b600,
141 	0xb60180b6,
142 	0x98bb0284,
143 	0x04e0b600,
144 	0xf404efb8,
145 	0x9fb9eb1b,
146 /* 0x016f: mmctx_xfer */
147 	0xbd00f802,
148 	0x0199f094,
149 	0x0f0007f1,
150 	0xd00203f0,
151 	0x04bd0009,
152 	0xbbfd94bd,
153 	0x120bf405,
154 	0xc40007f1,
155 	0xd00103f0,
156 	0x04bd000b,
157 /* 0x0197: mmctx_base_disabled */
158 	0xfd0099f0,
159 	0x0bf405ee,
160 	0x0007f11e,
161 	0x0103f0c6,
162 	0xbd000ed0,
163 	0x0007f104,
164 	0x0103f0c7,
165 	0xbd000fd0,
166 	0x0199f004,
167 /* 0x01b8: mmctx_multi_disabled */
168 	0xb600abc8,
169 	0xb9f010b4,
170 	0x01aec80c,
171 	0xfd11e4b6,
172 	0x07f105be,
173 	0x03f0c500,
174 	0x000bd001,
175 /* 0x01d6: mmctx_exec_loop */
176 /* 0x01d6: mmctx_wait_free */
177 	0xe7f104bd,
178 	0xe3f0c500,
179 	0x00eecf01,
180 	0xf41fe4f0,
181 	0xce98f30b,
182 	0x05e9fd00,
183 	0xc80007f1,
184 	0xd00103f0,
185 	0x04bd000e,
186 	0xb804c0b6,
187 	0x1bf404cd,
188 	0x02abc8d8,
189 /* 0x0207: mmctx_fini_wait */
190 	0xf11f1bf4,
191 	0xf0c500b7,
192 	0xbbcf01b3,
193 	0x1fb4f000,
194 	0xf410b4b0,
195 	0xa7f0f01b,
196 	0xd021f405,
197 /* 0x0223: mmctx_stop */
198 	0xc82b0ef4,
199 	0xb4b600ab,
200 	0x0cb9f010,
201 	0xf112b9f0,
202 	0xf0c50007,
203 	0x0bd00103,
204 /* 0x023b: mmctx_stop_wait */
205 	0xf104bd00,
206 	0xf0c500b7,
207 	0xbbcf01b3,
208 	0x12bbc800,
209 /* 0x024b: mmctx_done */
210 	0xbdf31bf4,
211 	0x0199f094,
212 	0x170007f1,
213 	0xd00203f0,
214 	0x04bd0009,
215 /* 0x025e: strand_wait */
216 	0xa0f900f8,
217 	0xf402a7f0,
218 	0xa0fcd021,
219 /* 0x026a: strand_pre */
220 	0x97f000f8,
221 	0xfc07f10c,
222 	0x0203f04a,
223 	0xbd0009d0,
224 	0x5e21f504,
225 /* 0x027f: strand_post */
226 	0xf000f802,
227 	0x07f10d97,
228 	0x03f04afc,
229 	0x0009d002,
230 	0x21f504bd,
231 	0x00f8025e,
232 /* 0x0294: strand_set */
233 	0xf10fc7f0,
234 	0xf04ffc07,
235 	0x0cd00203,
236 	0xf004bd00,
237 	0x07f10bc7,
238 	0x03f04afc,
239 	0x000cd002,
240 	0x07f104bd,
241 	0x03f04ffc,
242 	0x000ed002,
243 	0xc7f004bd,
244 	0xfc07f10a,
245 	0x0203f04a,
246 	0xbd000cd0,
247 	0x5e21f504,
248 /* 0x02d3: strand_ctx_init */
249 	0xbd00f802,
250 	0x0399f094,
251 	0x0f0007f1,
252 	0xd00203f0,
253 	0x04bd0009,
254 	0x026a21f5,
255 	0xf503e7f0,
256 	0xbd029421,
257 	0xfc07f1c4,
258 	0x0203f047,
259 	0xbd000cd0,
260 	0x01c7f004,
261 	0x4afc07f1,
262 	0xd00203f0,
263 	0x04bd000c,
264 	0x025e21f5,
265 	0xf1010c92,
266 	0xf046fc07,
267 	0x0cd00203,
268 	0xf004bd00,
269 	0x07f102c7,
270 	0x03f04afc,
271 	0x000cd002,
272 	0x21f504bd,
273 	0x21f5025e,
274 	0x87f1027f,
275 	0x83f04200,
276 	0x0097f102,
277 	0x0293f020,
278 	0x950099cf,
279 /* 0x034a: ctx_init_strand_loop */
280 	0x8ed008fe,
281 	0x408ed000,
282 	0xb6808acf,
283 	0xa0b606a5,
284 	0x00eabb01,
285 	0xb60480b6,
286 	0x1bf40192,
287 	0x08e4b6e8,
288 	0xbdf2efbc,
289 	0x0399f094,
290 	0x170007f1,
291 	0xd00203f0,
292 	0x04bd0009,
293 /* 0x037e: error */
294 	0xe0f900f8,
295 	0xf102ffb9,
296 	0xf09814e7,
297 	0x21f440e3,
298 	0x01f7f09d,
299 	0xf102ffb9,
300 	0xf09c1ce7,
301 	0x21f440e3,
302 	0xf8e0fc9d,
303 /* 0x03a1: init */
304 	0xf104bd00,
305 	0xf0420017,
306 	0x11cf0013,
307 	0x0911e700,
308 	0x0814b601,
309 	0xf00014fe,
310 	0x07f10227,
311 	0x03f01200,
312 	0x0002d000,
313 	0x17f104bd,
314 	0x10fe04f8,
315 	0x0007f100,
316 	0x0003f007,
317 	0xbd0000d0,
318 	0x0427f004,
319 	0x040007f1,
320 	0xd00003f0,
321 	0x04bd0002,
322 	0xf11031f4,
323 	0xf0820027,
324 	0x22cf0123,
325 	0x0137f000,
326 	0xbb1f24f0,
327 	0x32b60432,
328 	0x05028001,
329 	0xf1060380,
330 	0xf0860027,
331 	0x22cf0123,
332 	0x04028000,
333 	0xf10f24b6,
334 	0xf0c90007,
335 	0x02d00103,
336 	0xf104bd00,
337 	0xf0010027,
338 	0x22cf0223,
339 	0x9534bd00,
340 	0x07f10825,
341 	0x03f0c000,
342 	0x0005d001,
343 	0x07f104bd,
344 	0x03f0c100,
345 	0x0005d001,
346 	0x0e9804bd,
347 	0x010f9800,
348 	0x015021f5,
349 	0xbb002fbb,
350 	0x0e98003f,
351 	0x020f9801,
352 	0x015021f5,
353 	0xfd050e98,
354 	0x2ebb00ef,
355 	0x003ebb00,
356 	0xf10235b6,
357 	0xf0d30007,
358 	0x03d00103,
359 	0xb604bd00,
360 	0x35b60825,
361 	0x0120b606,
362 	0xb60130b6,
363 	0x34b60824,
364 	0x022fb908,
365 	0x02d321f5,
366 	0xbb002fbb,
367 	0x07f1003f,
368 	0x03f00100,
369 	0x0003d002,
370 	0x24bd04bd,
371 	0xf11f29f0,
372 	0xf0080007,
373 	0x02d00203,
374 /* 0x04bb: wait */
375 	0xf404bd00,
376 	0x31f40028,
377 /* 0x04c1: main */
378 	0x1cd7f000,
379 	0xf43921f4,
380 	0xe4b0f401,
381 	0x1e18f404,
382 	0xf00181fe,
383 	0x20bd0627,
384 	0xb60412fd,
385 	0x1efd01e4,
386 	0x0018fe05,
387 	0x05b421f5,
388 /* 0x04eb: main_not_ctx_xfer */
389 	0x94d90ef4,
390 	0xf5f010ef,
391 	0x7e21f501,
392 	0xcc0ef403,
393 /* 0x04f8: ih */
394 	0x80f900f9,
395 	0xf90188fe,
396 	0xf990f980,
397 	0xf9b0f9a0,
398 	0xf9e0f9d0,
399 	0xf104bdf0,
400 	0xf00200a7,
401 	0xaacf00a3,
402 	0x04abc400,
403 	0xf02c0bf4,
404 	0xe7f11cd7,
405 	0xe3f01a00,
406 	0x00eecf00,
407 	0x1900f7f1,
408 	0xcf00f3f0,
409 	0x21f400ff,
410 	0x01e7f004,
411 	0x1d0007f1,
412 	0xd00003f0,
413 	0x04bd000e,
414 /* 0x0548: ih_no_fifo */
415 	0x010007f1,
416 	0xd00003f0,
417 	0x04bd000a,
418 	0xe0fcf0fc,
419 	0xb0fcd0fc,
420 	0x90fca0fc,
421 	0x88fe80fc,
422 	0xfc80fc00,
423 	0x0032f400,
424 /* 0x056e: hub_barrier_done */
425 	0xf7f001f8,
426 	0x040e9801,
427 	0xb904febb,
428 	0xe7f102ff,
429 	0xe3f09418,
430 	0x9d21f440,
431 /* 0x0586: ctx_redswitch */
432 	0xf7f000f8,
433 	0x0007f120,
434 	0x0103f085,
435 	0xbd000fd0,
436 	0x08e7f004,
437 /* 0x0598: ctx_redswitch_delay */
438 	0xf401e2b6,
439 	0xf5f1fd1b,
440 	0xf5f10800,
441 	0x07f10200,
442 	0x03f08500,
443 	0x000fd001,
444 	0x00f804bd,
445 /* 0x05b4: ctx_xfer */
446 	0x810007f1,
447 	0xd00203f0,
448 	0x04bd000f,
449 	0xf50711f4,
450 /* 0x05c7: ctx_xfer_not_load */
451 	0xf5058621,
452 	0xbd026a21,
453 	0xfc07f124,
454 	0x0203f047,
455 	0xbd0002d0,
456 	0x012cf004,
457 	0xf10320b6,
458 	0xf04afc07,
459 	0x02d00203,
460 	0xf004bd00,
461 	0xa5f001ac,
462 	0x00b7f102,
463 	0x50b3f000,
464 	0xb6040c98,
465 	0xbcbb0fc4,
466 	0x000c9800,
467 	0xf0010d98,
468 	0x21f500e7,
469 	0xacf0016f,
470 	0x04a5f001,
471 	0x4000b7f1,
472 	0x9850b3f0,
473 	0xc4b6040c,
474 	0x00bcbb0f,
475 	0x98010c98,
476 	0x0f98020d,
477 	0x00e7f106,
478 	0x6f21f508,
479 	0x5e21f501,
480 	0x0601f402,
481 /* 0x063f: ctx_xfer_post */
482 	0xf50712f4,
483 /* 0x0643: ctx_xfer_done */
484 	0xf5027f21,
485 	0xf8056e21,
486 	0x00000000,
487 	0x00000000,
488 	0x00000000,
489 	0x00000000,
490 	0x00000000,
491 	0x00000000,
492 	0x00000000,
493 	0x00000000,
494 	0x00000000,
495 	0x00000000,
496 	0x00000000,
497 	0x00000000,
498 	0x00000000,
499 	0x00000000,
500 	0x00000000,
501 	0x00000000,
502 	0x00000000,
503 	0x00000000,
504 	0x00000000,
505 	0x00000000,
506 	0x00000000,
507 	0x00000000,
508 	0x00000000,
509 	0x00000000,
510 	0x00000000,
511 	0x00000000,
512 	0x00000000,
513 	0x00000000,
514 	0x00000000,
515 	0x00000000,
516 	0x00000000,
517 	0x00000000,
518 	0x00000000,
519 	0x00000000,
520 	0x00000000,
521 	0x00000000,
522 	0x00000000,
523 	0x00000000,
524 	0x00000000,
525 	0x00000000,
526 	0x00000000,
527 	0x00000000,
528 	0x00000000,
529 	0x00000000,
530 	0x00000000,
531 	0x00000000,
532 };
533