xref: /linux/drivers/gpu/drm/nouveau/nvkm/engine/ce/fuc/gt215.fuc3.h (revision e2be04c7f9958dde770eeb8b30e829ca969b37bb)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 static uint32_t gt215_ce_data[] = {
3 /* 0x0000: ctx_object */
4 	0x00000000,
5 /* 0x0004: ctx_dma */
6 /* 0x0004: ctx_dma_query */
7 	0x00000000,
8 /* 0x0008: ctx_dma_src */
9 	0x00000000,
10 /* 0x000c: ctx_dma_dst */
11 	0x00000000,
12 /* 0x0010: ctx_query_address_high */
13 	0x00000000,
14 /* 0x0014: ctx_query_address_low */
15 	0x00000000,
16 /* 0x0018: ctx_query_counter */
17 	0x00000000,
18 /* 0x001c: ctx_src_address_high */
19 	0x00000000,
20 /* 0x0020: ctx_src_address_low */
21 	0x00000000,
22 /* 0x0024: ctx_src_pitch */
23 	0x00000000,
24 /* 0x0028: ctx_src_tile_mode */
25 	0x00000000,
26 /* 0x002c: ctx_src_xsize */
27 	0x00000000,
28 /* 0x0030: ctx_src_ysize */
29 	0x00000000,
30 /* 0x0034: ctx_src_zsize */
31 	0x00000000,
32 /* 0x0038: ctx_src_zoff */
33 	0x00000000,
34 /* 0x003c: ctx_src_xoff */
35 	0x00000000,
36 /* 0x0040: ctx_src_yoff */
37 	0x00000000,
38 /* 0x0044: ctx_src_cpp */
39 	0x00000000,
40 /* 0x0048: ctx_dst_address_high */
41 	0x00000000,
42 /* 0x004c: ctx_dst_address_low */
43 	0x00000000,
44 /* 0x0050: ctx_dst_pitch */
45 	0x00000000,
46 /* 0x0054: ctx_dst_tile_mode */
47 	0x00000000,
48 /* 0x0058: ctx_dst_xsize */
49 	0x00000000,
50 /* 0x005c: ctx_dst_ysize */
51 	0x00000000,
52 /* 0x0060: ctx_dst_zsize */
53 	0x00000000,
54 /* 0x0064: ctx_dst_zoff */
55 	0x00000000,
56 /* 0x0068: ctx_dst_xoff */
57 	0x00000000,
58 /* 0x006c: ctx_dst_yoff */
59 	0x00000000,
60 /* 0x0070: ctx_dst_cpp */
61 	0x00000000,
62 /* 0x0074: ctx_format */
63 	0x00000000,
64 /* 0x0078: ctx_swz_const0 */
65 	0x00000000,
66 /* 0x007c: ctx_swz_const1 */
67 	0x00000000,
68 /* 0x0080: ctx_xcnt */
69 	0x00000000,
70 /* 0x0084: ctx_ycnt */
71 	0x00000000,
72 	0x00000000,
73 	0x00000000,
74 	0x00000000,
75 	0x00000000,
76 	0x00000000,
77 	0x00000000,
78 	0x00000000,
79 	0x00000000,
80 	0x00000000,
81 	0x00000000,
82 	0x00000000,
83 	0x00000000,
84 	0x00000000,
85 	0x00000000,
86 	0x00000000,
87 	0x00000000,
88 	0x00000000,
89 	0x00000000,
90 	0x00000000,
91 	0x00000000,
92 	0x00000000,
93 	0x00000000,
94 	0x00000000,
95 	0x00000000,
96 	0x00000000,
97 	0x00000000,
98 	0x00000000,
99 	0x00000000,
100 	0x00000000,
101 	0x00000000,
102 /* 0x0100: dispatch_table */
103 	0x00010000,
104 	0x00000000,
105 	0x00000000,
106 	0x00010040,
107 	0x00010160,
108 	0x00000000,
109 	0x00010050,
110 	0x00010162,
111 	0x00000000,
112 	0x00030060,
113 /* 0x0128: dispatch_dma */
114 	0x00010170,
115 	0x00000000,
116 	0x00010170,
117 	0x00000000,
118 	0x00010170,
119 	0x00000000,
120 	0x00070080,
121 	0x00000028,
122 	0xfffff000,
123 	0x0000002c,
124 	0xfff80000,
125 	0x00000030,
126 	0xffffe000,
127 	0x00000034,
128 	0xfffff800,
129 	0x00000038,
130 	0xfffff000,
131 	0x0000003c,
132 	0xfff80000,
133 	0x00000040,
134 	0xffffe000,
135 	0x00070088,
136 	0x00000054,
137 	0xfffff000,
138 	0x00000058,
139 	0xfff80000,
140 	0x0000005c,
141 	0xffffe000,
142 	0x00000060,
143 	0xfffff800,
144 	0x00000064,
145 	0xfffff000,
146 	0x00000068,
147 	0xfff80000,
148 	0x0000006c,
149 	0xffffe000,
150 	0x000200c0,
151 	0x00010492,
152 	0x00000000,
153 	0x0001051b,
154 	0x00000000,
155 	0x000e00c3,
156 	0x0000001c,
157 	0xffffff00,
158 	0x00000020,
159 	0x00000000,
160 	0x00000048,
161 	0xffffff00,
162 	0x0000004c,
163 	0x00000000,
164 	0x00000024,
165 	0xfff80000,
166 	0x00000050,
167 	0xfff80000,
168 	0x00000080,
169 	0xffff0000,
170 	0x00000084,
171 	0xffffe000,
172 	0x00000074,
173 	0xfccc0000,
174 	0x00000078,
175 	0x00000000,
176 	0x0000007c,
177 	0x00000000,
178 	0x00000010,
179 	0xffffff00,
180 	0x00000014,
181 	0x00000000,
182 	0x00000018,
183 	0x00000000,
184 	0x00000800,
185 };
186 
187 static uint32_t gt215_ce_code[] = {
188 /* 0x0000: main */
189 	0x04fe04bd,
190 	0x3517f000,
191 	0xf10010fe,
192 	0xf1040017,
193 	0xf0fff327,
194 	0x12d00023,
195 	0x0c25f0c0,
196 	0xf40012d0,
197 	0x17f11031,
198 	0x27f01200,
199 	0x0012d003,
200 /* 0x002f: spin */
201 	0xf40031f4,
202 	0x0ef40028,
203 /* 0x0035: ih */
204 	0x8001cffd,
205 	0xf40812c4,
206 	0x21f4060b,
207 /* 0x0041: ih_no_chsw */
208 	0x0412c472,
209 	0xf4060bf4,
210 /* 0x004a: ih_no_cmd */
211 	0x11c4c321,
212 	0x4001d00c,
213 /* 0x0052: swctx */
214 	0x47f101f8,
215 	0x4bfe7700,
216 	0x0007fe00,
217 	0xf00204b9,
218 	0x01f40643,
219 	0x0604fa09,
220 /* 0x006b: swctx_load */
221 	0xfa060ef4,
222 /* 0x006e: swctx_done */
223 	0x03f80504,
224 /* 0x0072: chsw */
225 	0x27f100f8,
226 	0x23cf1400,
227 	0x1e3fc800,
228 	0xf4170bf4,
229 	0x21f40132,
230 	0x1e3af052,
231 	0xf00023d0,
232 	0x24d00147,
233 /* 0x0093: chsw_no_unload */
234 	0xcf00f880,
235 	0x3dc84023,
236 	0x220bf41e,
237 	0xf40131f4,
238 	0x57f05221,
239 	0x0367f004,
240 /* 0x00a8: chsw_load_ctx_dma */
241 	0xa07856bc,
242 	0xb6018068,
243 	0x87d00884,
244 	0x0162b600,
245 /* 0x00bb: chsw_finish_load */
246 	0xf0f018f4,
247 	0x23d00237,
248 /* 0x00c3: dispatch */
249 	0xf100f880,
250 	0xcf190037,
251 	0x33cf4032,
252 	0xff24e400,
253 	0x1024b607,
254 	0x010057f1,
255 	0x74bd64bd,
256 /* 0x00dc: dispatch_loop */
257 	0x58005658,
258 	0x50b60157,
259 	0x0446b804,
260 	0xbb4d08f4,
261 	0x47b80076,
262 	0x0f08f404,
263 	0xb60276bb,
264 	0x57bb0374,
265 	0xdf0ef400,
266 /* 0x0100: dispatch_valid_mthd */
267 	0xb60246bb,
268 	0x45bb0344,
269 	0x01459800,
270 	0xb00453fd,
271 	0x1bf40054,
272 	0x00455820,
273 	0xb0014658,
274 	0x1bf40064,
275 	0x00538009,
276 /* 0x0127: dispatch_cmd */
277 	0xf4300ef4,
278 	0x55f90132,
279 	0xf40c01f4,
280 /* 0x0132: dispatch_invalid_bitfield */
281 	0x25f0250e,
282 /* 0x0135: dispatch_illegal_mthd */
283 	0x0125f002,
284 /* 0x0138: dispatch_error */
285 	0x100047f1,
286 	0xd00042d0,
287 	0x27f04043,
288 	0x0002d040,
289 /* 0x0148: hostirq_wait */
290 	0xf08002cf,
291 	0x24b04024,
292 	0xf71bf400,
293 /* 0x0154: dispatch_done */
294 	0x1d0027f1,
295 	0xd00137f0,
296 	0x00f80023,
297 /* 0x0160: cmd_nop */
298 /* 0x0162: cmd_pm_trigger */
299 	0x27f100f8,
300 	0x34bd2200,
301 	0xd00233f0,
302 	0x00f80023,
303 /* 0x0170: cmd_dma */
304 	0x012842b7,
305 	0xf00145b6,
306 	0x43801e39,
307 	0x0040b701,
308 	0x0644b606,
309 	0xf80043d0,
310 /* 0x0189: cmd_exec_set_format */
311 	0xf030f400,
312 	0xb00001b0,
313 	0x01b00101,
314 	0x0301b002,
315 	0xc71d0498,
316 	0x50b63045,
317 	0x3446c701,
318 	0xc70160b6,
319 	0x70b63847,
320 	0x0232f401,
321 	0x94bd84bd,
322 /* 0x01b4: ncomp_loop */
323 	0xb60f4ac4,
324 	0xb4bd0445,
325 /* 0x01bc: bpc_loop */
326 	0xf404a430,
327 	0xa5ff0f18,
328 	0x00cbbbc0,
329 	0xf40231f4,
330 /* 0x01ce: cmp_c0 */
331 	0x1bf4220e,
332 	0x10c7f00c,
333 	0xf400cbbb,
334 /* 0x01da: cmp_c1 */
335 	0xa430160e,
336 	0x0c18f406,
337 	0xbb14c7f0,
338 	0x0ef400cb,
339 /* 0x01e9: cmp_zero */
340 	0x80c7f107,
341 /* 0x01ed: bpc_next */
342 	0x01c83800,
343 	0xb60180b6,
344 	0xb5b801b0,
345 	0xc308f404,
346 	0xb80190b6,
347 	0x08f40497,
348 	0x0065fdb2,
349 	0x98110680,
350 	0x68fd2008,
351 	0x0502f400,
352 /* 0x0216: dst_xcnt */
353 	0x75fd64bd,
354 	0x1c078000,
355 	0xf10078fd,
356 	0xb6081057,
357 	0x56d00654,
358 	0x4057d000,
359 	0x080050b7,
360 	0xb61c0698,
361 	0x64b60162,
362 	0x11079808,
363 	0xfd0172b6,
364 	0x56d00567,
365 	0x0050b700,
366 	0x0060b401,
367 	0xb40056d0,
368 	0x56d00160,
369 	0x0260b440,
370 	0xb48056d0,
371 	0x56d00360,
372 	0x0050b7c0,
373 	0x1e069804,
374 	0x980056d0,
375 	0x56d01f06,
376 	0x1030f440,
377 /* 0x0276: cmd_exec_set_surface_tiled */
378 	0x579800f8,
379 	0x6879c70a,
380 	0xb66478c7,
381 	0x77c70280,
382 	0x0e76b060,
383 	0xf0091bf4,
384 	0x0ef40477,
385 /* 0x0291: xtile64 */
386 	0x027cf00f,
387 	0xfd1170b6,
388 	0x77f00947,
389 /* 0x029d: xtileok */
390 	0x0f5a9806,
391 	0xfd115b98,
392 	0xb7f000ab,
393 	0x04b7bb01,
394 	0xff01b2b6,
395 	0xa7bbc4ab,
396 	0x105d9805,
397 	0xbb01e7f0,
398 	0xe2b604e8,
399 	0xb4deff01,
400 	0xb605d8bb,
401 	0xef9401e0,
402 	0x02ebbb0c,
403 	0xf005fefd,
404 	0x60b7026c,
405 	0x64b60208,
406 	0x006fd008,
407 	0xbb04b7bb,
408 	0x5f9800cb,
409 	0x115b980b,
410 	0xf000fbfd,
411 	0xb7bb01b7,
412 	0x01b2b604,
413 	0xbb00fbbb,
414 	0xf0f905f7,
415 	0xf00c5f98,
416 	0xb8bb01b7,
417 	0x01b2b604,
418 	0xbb00fbbb,
419 	0xf0f905f8,
420 	0xb60078bb,
421 	0xb7f00282,
422 	0x04b8bb01,
423 	0x9804b9bb,
424 	0xe7f00e58,
425 	0x04e9bb01,
426 	0xff01e2b6,
427 	0xf7bbf48e,
428 	0x00cfbb04,
429 	0xbb0079bb,
430 	0xf0fc0589,
431 	0xd9fd90fc,
432 	0x00adbb00,
433 	0xfd0089fd,
434 	0xa8bb008f,
435 	0x04a7bb00,
436 	0xbb0192b6,
437 	0x69d00497,
438 	0x08579880,
439 	0xbb075898,
440 	0x7abb00ac,
441 	0x0081b600,
442 	0xfd1084b6,
443 	0x62b7058b,
444 	0x67d00600,
445 	0x0060b700,
446 	0x0068d004,
447 /* 0x0382: cmd_exec_set_surface_linear */
448 	0x6cf000f8,
449 	0x0260b702,
450 	0x0864b602,
451 	0xd0085798,
452 	0x60b70067,
453 	0x57980400,
454 	0x1074b607,
455 	0xb70067d0,
456 	0x98040060,
457 	0x67d00957,
458 /* 0x03ab: cmd_exec_wait */
459 	0xf900f800,
460 	0xf110f900,
461 	0xb6080007,
462 /* 0x03b6: loop */
463 	0x01cf0604,
464 	0x0114f000,
465 	0xfcfa1bf4,
466 	0xf800fc10,
467 /* 0x03c5: cmd_exec_query */
468 	0x0d34c800,
469 	0xf5701bf4,
470 	0xf103ab21,
471 	0xb6080c47,
472 	0x05980644,
473 	0x0450b605,
474 	0xd00045d0,
475 	0x57f04040,
476 	0x8045d00c,
477 	0x040040b7,
478 	0xb6040598,
479 	0x45d01054,
480 	0x0040b700,
481 	0x0057f105,
482 	0x0153f00b,
483 	0xf10045d0,
484 	0xb6404057,
485 	0x53f10154,
486 	0x45d08080,
487 	0x1057f140,
488 	0x1253f111,
489 	0x8045d013,
490 	0x151457f1,
491 	0x171653f1,
492 	0xf1c045d0,
493 	0xf0260157,
494 	0x47f10153,
495 	0x44b60800,
496 	0x0045d006,
497 /* 0x0438: query_counter */
498 	0x03ab21f5,
499 	0x080c47f1,
500 	0x980644b6,
501 	0x45d00505,
502 	0x4040d000,
503 	0xd00457f0,
504 	0x40b78045,
505 	0x05980400,
506 	0x1054b604,
507 	0xb70045d0,
508 	0xf1050040,
509 	0xd0030057,
510 	0x57f10045,
511 	0x53f11110,
512 	0x45d01312,
513 	0x06059840,
514 	0x050040b7,
515 	0xf10045d0,
516 	0xf0260157,
517 	0x47f10153,
518 	0x44b60800,
519 	0x0045d006,
520 /* 0x0492: cmd_exec */
521 	0x21f500f8,
522 	0x3fc803ab,
523 	0x0e0bf400,
524 	0x018921f5,
525 	0x020047f1,
526 /* 0x04a7: cmd_exec_no_format */
527 	0xf11e0ef4,
528 	0xb6081067,
529 	0x77f00664,
530 	0x11078001,
531 	0x981c0780,
532 	0x67d02007,
533 	0x4067d000,
534 /* 0x04c2: cmd_exec_init_src_surface */
535 	0x32f444bd,
536 	0xc854bd02,
537 	0x0bf4043f,
538 	0x8221f50a,
539 	0x0a0ef403,
540 /* 0x04d4: src_tiled */
541 	0x027621f5,
542 /* 0x04db: cmd_exec_init_dst_surface */
543 	0xf40749f0,
544 	0x57f00231,
545 	0x083fc82c,
546 	0xf50a0bf4,
547 	0xf4038221,
548 /* 0x04ee: dst_tiled */
549 	0x21f50a0e,
550 	0x49f00276,
551 /* 0x04f5: cmd_exec_kick */
552 	0x0057f108,
553 	0x0654b608,
554 	0xd0210698,
555 	0x67f04056,
556 	0x0063f141,
557 	0x0546fd44,
558 	0xc80054d0,
559 	0x0bf40c3f,
560 	0xc521f507,
561 /* 0x0519: cmd_exec_done */
562 /* 0x051b: cmd_wrcache_flush */
563 	0xf100f803,
564 	0xbd220027,
565 	0x0133f034,
566 	0xf80023d0,
567 	0x00000000,
568 	0x00000000,
569 	0x00000000,
570 	0x00000000,
571 	0x00000000,
572 	0x00000000,
573 	0x00000000,
574 	0x00000000,
575 	0x00000000,
576 	0x00000000,
577 	0x00000000,
578 	0x00000000,
579 	0x00000000,
580 	0x00000000,
581 	0x00000000,
582 	0x00000000,
583 	0x00000000,
584 	0x00000000,
585 	0x00000000,
586 	0x00000000,
587 	0x00000000,
588 	0x00000000,
589 	0x00000000,
590 	0x00000000,
591 	0x00000000,
592 	0x00000000,
593 	0x00000000,
594 	0x00000000,
595 	0x00000000,
596 	0x00000000,
597 	0x00000000,
598 	0x00000000,
599 	0x00000000,
600 	0x00000000,
601 	0x00000000,
602 	0x00000000,
603 	0x00000000,
604 	0x00000000,
605 	0x00000000,
606 	0x00000000,
607 	0x00000000,
608 	0x00000000,
609 	0x00000000,
610 	0x00000000,
611 	0x00000000,
612 	0x00000000,
613 	0x00000000,
614 	0x00000000,
615 	0x00000000,
616 	0x00000000,
617 	0x00000000,
618 	0x00000000,
619 	0x00000000,
620 	0x00000000,
621 };
622