1 /* SPDX-License-Identifier: GPL-2.0 */
2 static uint32_t gk104_grgpc_data[] = {
3 /* 0x0000: gpc_mmio_list_head */
4 	0x0000006c,
5 /* 0x0004: gpc_mmio_list_tail */
6 /* 0x0004: tpc_mmio_list_head */
7 	0x0000006c,
8 /* 0x0008: tpc_mmio_list_tail */
9 /* 0x0008: unk_mmio_list_head */
10 	0x0000006c,
11 /* 0x000c: unk_mmio_list_tail */
12 	0x0000006c,
13 /* 0x0010: gpc_id */
14 	0x00000000,
15 /* 0x0014: tpc_count */
16 	0x00000000,
17 /* 0x0018: tpc_mask */
18 	0x00000000,
19 /* 0x001c: unk_count */
20 	0x00000000,
21 /* 0x0020: unk_mask */
22 	0x00000000,
23 /* 0x0024: cmd_queue */
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 	0x00000000,
39 	0x00000000,
40 	0x00000000,
41 	0x00000000,
42 };
43 
44 static uint32_t gk104_grgpc_code[] = {
45 	0x03a10ef5,
46 /* 0x0004: queue_put */
47 	0x9800d898,
48 	0x86f001d9,
49 	0x0489b808,
50 	0xf00c1bf4,
51 	0x21f502f7,
52 	0x00f8037e,
53 /* 0x001c: queue_put_next */
54 	0xb60798c4,
55 	0x8dbb0384,
56 	0x0880b600,
57 	0x80008e80,
58 	0x90b6018f,
59 	0x0f94f001,
60 	0xf801d980,
61 /* 0x0039: queue_get */
62 	0x0131f400,
63 	0x9800d898,
64 	0x89b801d9,
65 	0x210bf404,
66 	0xb60789c4,
67 	0x9dbb0394,
68 	0x0890b600,
69 	0x98009e98,
70 	0x80b6019f,
71 	0x0f84f001,
72 	0xf400d880,
73 /* 0x0066: queue_get_done */
74 	0x00f80132,
75 /* 0x0068: nv_rd32 */
76 	0xf002ecb9,
77 	0x07f11fc9,
78 	0x03f0ca00,
79 	0x000cd001,
80 /* 0x007a: nv_rd32_wait */
81 	0xc7f104bd,
82 	0xc3f0ca00,
83 	0x00cccf01,
84 	0xf41fccc8,
85 	0xa7f0f31b,
86 	0x1021f506,
87 	0x00f7f101,
88 	0x01f3f0cb,
89 	0xf800ffcf,
90 /* 0x009d: nv_wr32 */
91 	0x0007f100,
92 	0x0103f0cc,
93 	0xbd000fd0,
94 	0x02ecb904,
95 	0xf01fc9f0,
96 	0x07f11ec9,
97 	0x03f0ca00,
98 	0x000cd001,
99 /* 0x00be: nv_wr32_wait */
100 	0xc7f104bd,
101 	0xc3f0ca00,
102 	0x00cccf01,
103 	0xf41fccc8,
104 	0x00f8f31b,
105 /* 0x00d0: wait_donez */
106 	0x99f094bd,
107 	0x0007f100,
108 	0x0203f00f,
109 	0xbd0009d0,
110 	0x0007f104,
111 	0x0203f006,
112 	0xbd000ad0,
113 /* 0x00ed: wait_donez_ne */
114 	0x0087f104,
115 	0x0183f000,
116 	0xff0088cf,
117 	0x1bf4888a,
118 	0xf094bdf3,
119 	0x07f10099,
120 	0x03f01700,
121 	0x0009d002,
122 	0x00f804bd,
123 /* 0x0110: wait_doneo */
124 	0x99f094bd,
125 	0x0007f100,
126 	0x0203f00f,
127 	0xbd0009d0,
128 	0x0007f104,
129 	0x0203f006,
130 	0xbd000ad0,
131 /* 0x012d: wait_doneo_e */
132 	0x0087f104,
133 	0x0183f000,
134 	0xff0088cf,
135 	0x0bf4888a,
136 	0xf094bdf3,
137 	0x07f10099,
138 	0x03f01700,
139 	0x0009d002,
140 	0x00f804bd,
141 /* 0x0150: mmctx_size */
142 /* 0x0152: nv_mmctx_size_loop */
143 	0xe89894bd,
144 	0x1a85b600,
145 	0xb60180b6,
146 	0x98bb0284,
147 	0x04e0b600,
148 	0xf404efb8,
149 	0x9fb9eb1b,
150 /* 0x016f: mmctx_xfer */
151 	0xbd00f802,
152 	0x0199f094,
153 	0x0f0007f1,
154 	0xd00203f0,
155 	0x04bd0009,
156 	0xbbfd94bd,
157 	0x120bf405,
158 	0xc40007f1,
159 	0xd00103f0,
160 	0x04bd000b,
161 /* 0x0197: mmctx_base_disabled */
162 	0xfd0099f0,
163 	0x0bf405ee,
164 	0x0007f11e,
165 	0x0103f0c6,
166 	0xbd000ed0,
167 	0x0007f104,
168 	0x0103f0c7,
169 	0xbd000fd0,
170 	0x0199f004,
171 /* 0x01b8: mmctx_multi_disabled */
172 	0xb600abc8,
173 	0xb9f010b4,
174 	0x01aec80c,
175 	0xfd11e4b6,
176 	0x07f105be,
177 	0x03f0c500,
178 	0x000bd001,
179 /* 0x01d6: mmctx_exec_loop */
180 /* 0x01d6: mmctx_wait_free */
181 	0xe7f104bd,
182 	0xe3f0c500,
183 	0x00eecf01,
184 	0xf41fe4f0,
185 	0xce98f30b,
186 	0x05e9fd00,
187 	0xc80007f1,
188 	0xd00103f0,
189 	0x04bd000e,
190 	0xb804c0b6,
191 	0x1bf404cd,
192 	0x02abc8d8,
193 /* 0x0207: mmctx_fini_wait */
194 	0xf11f1bf4,
195 	0xf0c500b7,
196 	0xbbcf01b3,
197 	0x1fb4f000,
198 	0xf410b4b0,
199 	0xa7f0f01b,
200 	0xd021f405,
201 /* 0x0223: mmctx_stop */
202 	0xc82b0ef4,
203 	0xb4b600ab,
204 	0x0cb9f010,
205 	0xf112b9f0,
206 	0xf0c50007,
207 	0x0bd00103,
208 /* 0x023b: mmctx_stop_wait */
209 	0xf104bd00,
210 	0xf0c500b7,
211 	0xbbcf01b3,
212 	0x12bbc800,
213 /* 0x024b: mmctx_done */
214 	0xbdf31bf4,
215 	0x0199f094,
216 	0x170007f1,
217 	0xd00203f0,
218 	0x04bd0009,
219 /* 0x025e: strand_wait */
220 	0xa0f900f8,
221 	0xf402a7f0,
222 	0xa0fcd021,
223 /* 0x026a: strand_pre */
224 	0x97f000f8,
225 	0xfc07f10c,
226 	0x0203f04a,
227 	0xbd0009d0,
228 	0x5e21f504,
229 /* 0x027f: strand_post */
230 	0xf000f802,
231 	0x07f10d97,
232 	0x03f04afc,
233 	0x0009d002,
234 	0x21f504bd,
235 	0x00f8025e,
236 /* 0x0294: strand_set */
237 	0xf10fc7f0,
238 	0xf04ffc07,
239 	0x0cd00203,
240 	0xf004bd00,
241 	0x07f10bc7,
242 	0x03f04afc,
243 	0x000cd002,
244 	0x07f104bd,
245 	0x03f04ffc,
246 	0x000ed002,
247 	0xc7f004bd,
248 	0xfc07f10a,
249 	0x0203f04a,
250 	0xbd000cd0,
251 	0x5e21f504,
252 /* 0x02d3: strand_ctx_init */
253 	0xbd00f802,
254 	0x0399f094,
255 	0x0f0007f1,
256 	0xd00203f0,
257 	0x04bd0009,
258 	0x026a21f5,
259 	0xf503e7f0,
260 	0xbd029421,
261 	0xfc07f1c4,
262 	0x0203f047,
263 	0xbd000cd0,
264 	0x01c7f004,
265 	0x4afc07f1,
266 	0xd00203f0,
267 	0x04bd000c,
268 	0x025e21f5,
269 	0xf1010c92,
270 	0xf046fc07,
271 	0x0cd00203,
272 	0xf004bd00,
273 	0x07f102c7,
274 	0x03f04afc,
275 	0x000cd002,
276 	0x21f504bd,
277 	0x21f5025e,
278 	0x87f1027f,
279 	0x83f04200,
280 	0x0097f102,
281 	0x0293f020,
282 	0x950099cf,
283 /* 0x034a: ctx_init_strand_loop */
284 	0x8ed008fe,
285 	0x408ed000,
286 	0xb6808acf,
287 	0xa0b606a5,
288 	0x00eabb01,
289 	0xb60480b6,
290 	0x1bf40192,
291 	0x08e4b6e8,
292 	0xbdf2efbc,
293 	0x0399f094,
294 	0x170007f1,
295 	0xd00203f0,
296 	0x04bd0009,
297 /* 0x037e: error */
298 	0xe0f900f8,
299 	0xf102ffb9,
300 	0xf09814e7,
301 	0x21f440e3,
302 	0x01f7f09d,
303 	0xf102ffb9,
304 	0xf09c1ce7,
305 	0x21f440e3,
306 	0xf8e0fc9d,
307 /* 0x03a1: init */
308 	0xf104bd00,
309 	0xf0420017,
310 	0x11cf0013,
311 	0x0911e700,
312 	0x0814b601,
313 	0xf00014fe,
314 	0x07f10227,
315 	0x03f01200,
316 	0x0002d000,
317 	0x17f104bd,
318 	0x10fe0545,
319 	0x0007f100,
320 	0x0003f007,
321 	0xbd0000d0,
322 	0x0427f004,
323 	0x040007f1,
324 	0xd00003f0,
325 	0x04bd0002,
326 	0xf11031f4,
327 	0xf0820027,
328 	0x22cf0123,
329 	0x0137f000,
330 	0xbb1f24f0,
331 	0x32b60432,
332 	0x05028001,
333 	0xf1060380,
334 	0xf0860027,
335 	0x22cf0123,
336 	0x04028000,
337 	0xf10f24b6,
338 	0xf0c90007,
339 	0x02d00103,
340 	0xf104bd00,
341 	0xf00c30e7,
342 	0xe5f050e3,
343 	0xbd24bd01,
344 /* 0x0433: init_unk_loop */
345 	0xf444bd34,
346 	0xf6b06821,
347 	0x0f0bf400,
348 	0xbb01f7f0,
349 	0x4ffd04f2,
350 	0x0130b605,
351 /* 0x0448: init_unk_next */
352 	0xb60120b6,
353 	0x26b004e0,
354 	0xe21bf401,
355 /* 0x0454: init_unk_done */
356 	0x80070380,
357 	0x27f10804,
358 	0x23f00100,
359 	0x0022cf02,
360 	0x259534bd,
361 	0x0007f108,
362 	0x0103f0c0,
363 	0xbd0005d0,
364 	0x0007f104,
365 	0x0103f0c1,
366 	0xbd0005d0,
367 	0x000e9804,
368 	0xf5010f98,
369 	0xbb015021,
370 	0x3fbb002f,
371 	0x010e9800,
372 	0xf5020f98,
373 	0x98015021,
374 	0xeffd050e,
375 	0x002ebb00,
376 	0x98003ebb,
377 	0x0f98020e,
378 	0x5021f503,
379 	0x070e9801,
380 	0xbb00effd,
381 	0x3ebb002e,
382 	0x0235b600,
383 	0xd30007f1,
384 	0xd00103f0,
385 	0x04bd0003,
386 	0xb60825b6,
387 	0x20b60635,
388 	0x0130b601,
389 	0xb60824b6,
390 	0x2fb90834,
391 	0xd321f502,
392 	0x002fbb02,
393 	0xf1003fbb,
394 	0xf0010007,
395 	0x03d00203,
396 	0xbd04bd00,
397 	0x1f29f024,
398 	0x080007f1,
399 	0xd00203f0,
400 	0x04bd0002,
401 /* 0x0508: wait */
402 	0xf40028f4,
403 /* 0x050e: main */
404 	0xd7f00031,
405 	0x3921f424,
406 	0xb0f401f4,
407 	0x18f404e4,
408 	0x0181fe1e,
409 	0xbd0627f0,
410 	0x0412fd20,
411 	0xfd01e4b6,
412 	0x18fe051e,
413 	0x0121f500,
414 	0xd90ef406,
415 /* 0x0538: main_not_ctx_xfer */
416 	0xf010ef94,
417 	0x21f501f5,
418 	0x0ef4037e,
419 /* 0x0545: ih */
420 	0xf900f9cc,
421 	0x0188fe80,
422 	0x90f980f9,
423 	0xb0f9a0f9,
424 	0xe0f9d0f9,
425 	0x04bdf0f9,
426 	0x0200a7f1,
427 	0xcf00a3f0,
428 	0xabc400aa,
429 	0x2c0bf404,
430 	0xf124d7f0,
431 	0xf01a00e7,
432 	0xeecf00e3,
433 	0x00f7f100,
434 	0x00f3f019,
435 	0xf400ffcf,
436 	0xe7f00421,
437 	0x0007f101,
438 	0x0003f01d,
439 	0xbd000ed0,
440 /* 0x0595: ih_no_fifo */
441 	0x0007f104,
442 	0x0003f001,
443 	0xbd000ad0,
444 	0xfcf0fc04,
445 	0xfcd0fce0,
446 	0xfca0fcb0,
447 	0xfe80fc90,
448 	0x80fc0088,
449 	0x32f400fc,
450 /* 0x05bb: hub_barrier_done */
451 	0xf001f800,
452 	0x0e9801f7,
453 	0x04febb04,
454 	0xf102ffb9,
455 	0xf09418e7,
456 	0x21f440e3,
457 /* 0x05d3: ctx_redswitch */
458 	0xf000f89d,
459 	0x07f120f7,
460 	0x03f08500,
461 	0x000fd001,
462 	0xe7f004bd,
463 /* 0x05e5: ctx_redswitch_delay */
464 	0x01e2b608,
465 	0xf1fd1bf4,
466 	0xf10800f5,
467 	0xf10200f5,
468 	0xf0850007,
469 	0x0fd00103,
470 	0xf804bd00,
471 /* 0x0601: ctx_xfer */
472 	0x0007f100,
473 	0x0203f081,
474 	0xbd000fd0,
475 	0x0711f404,
476 	0x05d321f5,
477 /* 0x0614: ctx_xfer_not_load */
478 	0x026a21f5,
479 	0x07f124bd,
480 	0x03f047fc,
481 	0x0002d002,
482 	0x2cf004bd,
483 	0x0320b601,
484 	0x4afc07f1,
485 	0xd00203f0,
486 	0x04bd0002,
487 	0xf001acf0,
488 	0xb7f102a5,
489 	0xb3f00000,
490 	0x040c9850,
491 	0xbb0fc4b6,
492 	0x0c9800bc,
493 	0x010d9800,
494 	0xf500e7f0,
495 	0xf0016f21,
496 	0xb7f101ac,
497 	0xb3f04000,
498 	0x040c9850,
499 	0xbb0fc4b6,
500 	0x0c9800bc,
501 	0x020d9801,
502 	0xf1060f98,
503 	0xf50800e7,
504 	0xf0016f21,
505 	0xa5f001ac,
506 	0x00b7f104,
507 	0x50b3f030,
508 	0xb6040c98,
509 	0xbcbb0fc4,
510 	0x020c9800,
511 	0x98030d98,
512 	0xe7f1080f,
513 	0x21f50200,
514 	0x21f5016f,
515 	0x01f4025e,
516 	0x0712f406,
517 /* 0x06b0: ctx_xfer_post */
518 	0x027f21f5,
519 /* 0x06b4: ctx_xfer_done */
520 	0x05bb21f5,
521 	0x000000f8,
522 	0x00000000,
523 	0x00000000,
524 	0x00000000,
525 	0x00000000,
526 	0x00000000,
527 	0x00000000,
528 	0x00000000,
529 	0x00000000,
530 	0x00000000,
531 	0x00000000,
532 	0x00000000,
533 	0x00000000,
534 	0x00000000,
535 	0x00000000,
536 	0x00000000,
537 	0x00000000,
538 	0x00000000,
539 };
540