xref: /linux/drivers/gpu/drm/nouveau/nvkm/engine/ce/fuc/gf100.fuc3.h (revision 307797159ac25fe5a2048bf5c6a5718298edca57)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 static uint32_t gf100_ce_data[] = {
3 /* 0x0000: ctx_object */
4 	0x00000000,
5 /* 0x0004: ctx_query_address_high */
6 	0x00000000,
7 /* 0x0008: ctx_query_address_low */
8 	0x00000000,
9 /* 0x000c: ctx_query_counter */
10 	0x00000000,
11 /* 0x0010: ctx_src_address_high */
12 	0x00000000,
13 /* 0x0014: ctx_src_address_low */
14 	0x00000000,
15 /* 0x0018: ctx_src_pitch */
16 	0x00000000,
17 /* 0x001c: ctx_src_tile_mode */
18 	0x00000000,
19 /* 0x0020: ctx_src_xsize */
20 	0x00000000,
21 /* 0x0024: ctx_src_ysize */
22 	0x00000000,
23 /* 0x0028: ctx_src_zsize */
24 	0x00000000,
25 /* 0x002c: ctx_src_zoff */
26 	0x00000000,
27 /* 0x0030: ctx_src_xoff */
28 	0x00000000,
29 /* 0x0034: ctx_src_yoff */
30 	0x00000000,
31 /* 0x0038: ctx_src_cpp */
32 	0x00000000,
33 /* 0x003c: ctx_dst_address_high */
34 	0x00000000,
35 /* 0x0040: ctx_dst_address_low */
36 	0x00000000,
37 /* 0x0044: ctx_dst_pitch */
38 	0x00000000,
39 /* 0x0048: ctx_dst_tile_mode */
40 	0x00000000,
41 /* 0x004c: ctx_dst_xsize */
42 	0x00000000,
43 /* 0x0050: ctx_dst_ysize */
44 	0x00000000,
45 /* 0x0054: ctx_dst_zsize */
46 	0x00000000,
47 /* 0x0058: ctx_dst_zoff */
48 	0x00000000,
49 /* 0x005c: ctx_dst_xoff */
50 	0x00000000,
51 /* 0x0060: ctx_dst_yoff */
52 	0x00000000,
53 /* 0x0064: ctx_dst_cpp */
54 	0x00000000,
55 /* 0x0068: ctx_format */
56 	0x00000000,
57 /* 0x006c: ctx_swz_const0 */
58 	0x00000000,
59 /* 0x0070: ctx_swz_const1 */
60 	0x00000000,
61 /* 0x0074: ctx_xcnt */
62 	0x00000000,
63 /* 0x0078: ctx_ycnt */
64 	0x00000000,
65 	0x00000000,
66 	0x00000000,
67 	0x00000000,
68 	0x00000000,
69 	0x00000000,
70 	0x00000000,
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 /* 0x0100: dispatch_table */
99 	0x00010000,
100 	0x00000000,
101 	0x00000000,
102 	0x00010040,
103 	0x0001019f,
104 	0x00000000,
105 	0x00010050,
106 	0x000101a1,
107 	0x00000000,
108 	0x00070080,
109 	0x0000001c,
110 	0xfffff000,
111 	0x00000020,
112 	0xfff80000,
113 	0x00000024,
114 	0xffffe000,
115 	0x00000028,
116 	0xfffff800,
117 	0x0000002c,
118 	0xfffff000,
119 	0x00000030,
120 	0xfff80000,
121 	0x00000034,
122 	0xffffe000,
123 	0x00070088,
124 	0x00000048,
125 	0xfffff000,
126 	0x0000004c,
127 	0xfff80000,
128 	0x00000050,
129 	0xffffe000,
130 	0x00000054,
131 	0xfffff800,
132 	0x00000058,
133 	0xfffff000,
134 	0x0000005c,
135 	0xfff80000,
136 	0x00000060,
137 	0xffffe000,
138 	0x000200c0,
139 	0x000104b8,
140 	0x00000000,
141 	0x00010541,
142 	0x00000000,
143 	0x000e00c3,
144 	0x00000010,
145 	0xffffff00,
146 	0x00000014,
147 	0x00000000,
148 	0x0000003c,
149 	0xffffff00,
150 	0x00000040,
151 	0x00000000,
152 	0x00000018,
153 	0xfff80000,
154 	0x00000044,
155 	0xfff80000,
156 	0x00000074,
157 	0xffff0000,
158 	0x00000078,
159 	0xffffe000,
160 	0x00000068,
161 	0xfccc0000,
162 	0x0000006c,
163 	0x00000000,
164 	0x00000070,
165 	0x00000000,
166 	0x00000004,
167 	0xffffff00,
168 	0x00000008,
169 	0x00000000,
170 	0x0000000c,
171 	0x00000000,
172 	0x00000800,
173 };
174 
175 static uint32_t gf100_ce_code[] = {
176 /* 0x0000: main */
177 	0x04fe04bd,
178 	0x3517f000,
179 	0xf10010fe,
180 	0xf1040017,
181 	0xf0fff327,
182 	0x12d00023,
183 	0x0c25f0c0,
184 	0xf40012d0,
185 	0x17f11031,
186 	0x27f01200,
187 	0x0012d003,
188 /* 0x002f: spin */
189 	0xf40031f4,
190 	0x0ef40028,
191 /* 0x0035: ih */
192 	0x8001cffd,
193 	0xf40812c4,
194 	0x21f4060b,
195 /* 0x0041: ih_no_chsw */
196 	0x0412c4ca,
197 	0xf5070bf4,
198 /* 0x004b: ih_no_cmd */
199 	0xc4010221,
200 	0x01d00c11,
201 /* 0x0053: swctx */
202 	0xf101f840,
203 	0xfe770047,
204 	0x47f1004b,
205 	0x44cf2100,
206 	0x0144f000,
207 	0xb60444b6,
208 	0xf7f13040,
209 	0xf4b6061c,
210 	0x1457f106,
211 	0x00f5d101,
212 	0xb6043594,
213 	0x57fe0250,
214 	0x0145fe00,
215 	0x010052b7,
216 	0x00ff67f1,
217 	0x56fd60bd,
218 	0x0253f004,
219 	0xf80545fa,
220 	0x0053f003,
221 	0xd100e7f0,
222 	0x549800fe,
223 	0x0845b600,
224 	0xb6015698,
225 	0x46fd1864,
226 	0x0047fe05,
227 	0xf00204b9,
228 	0x01f40643,
229 	0x0604fa09,
230 /* 0x00c3: swctx_load */
231 	0xfa060ef4,
232 /* 0x00c6: swctx_done */
233 	0x03f80504,
234 /* 0x00ca: chsw */
235 	0x27f100f8,
236 	0x23cf1400,
237 	0x1e3fc800,
238 	0xf4170bf4,
239 	0x21f40132,
240 	0x1e3af053,
241 	0xf00023d0,
242 	0x24d00147,
243 /* 0x00eb: chsw_no_unload */
244 	0xcf00f880,
245 	0x3dc84023,
246 	0x090bf41e,
247 	0xf40131f4,
248 /* 0x00fa: chsw_finish_load */
249 	0x37f05321,
250 	0x8023d002,
251 /* 0x0102: dispatch */
252 	0x37f100f8,
253 	0x32cf1900,
254 	0x0033cf40,
255 	0x07ff24e4,
256 	0xf11024b6,
257 	0xbd010057,
258 /* 0x011b: dispatch_loop */
259 	0x5874bd64,
260 	0x57580056,
261 	0x0450b601,
262 	0xf40446b8,
263 	0x76bb4d08,
264 	0x0447b800,
265 	0xbb0f08f4,
266 	0x74b60276,
267 	0x0057bb03,
268 /* 0x013f: dispatch_valid_mthd */
269 	0xbbdf0ef4,
270 	0x44b60246,
271 	0x0045bb03,
272 	0xfd014598,
273 	0x54b00453,
274 	0x201bf400,
275 	0x58004558,
276 	0x64b00146,
277 	0x091bf400,
278 	0xf4005380,
279 /* 0x0166: dispatch_cmd */
280 	0x32f4300e,
281 	0xf455f901,
282 	0x0ef40c01,
283 /* 0x0171: dispatch_invalid_bitfield */
284 	0x0225f025,
285 /* 0x0174: dispatch_illegal_mthd */
286 /* 0x0177: dispatch_error */
287 	0xf10125f0,
288 	0xd0100047,
289 	0x43d00042,
290 	0x4027f040,
291 /* 0x0187: hostirq_wait */
292 	0xcf0002d0,
293 	0x24f08002,
294 	0x0024b040,
295 /* 0x0193: dispatch_done */
296 	0xf1f71bf4,
297 	0xf01d0027,
298 	0x23d00137,
299 /* 0x019f: cmd_nop */
300 	0xf800f800,
301 /* 0x01a1: cmd_pm_trigger */
302 	0x0027f100,
303 	0xf034bd22,
304 	0x23d00233,
305 /* 0x01af: cmd_exec_set_format */
306 	0xf400f800,
307 	0x01b0f030,
308 	0x0101b000,
309 	0xb00201b0,
310 	0x04980301,
311 	0x3045c71a,
312 	0xc70150b6,
313 	0x60b63446,
314 	0x3847c701,
315 	0xf40170b6,
316 	0x84bd0232,
317 /* 0x01da: ncomp_loop */
318 	0x4ac494bd,
319 	0x0445b60f,
320 /* 0x01e2: bpc_loop */
321 	0xa430b4bd,
322 	0x0f18f404,
323 	0xbbc0a5ff,
324 	0x31f400cb,
325 	0x220ef402,
326 /* 0x01f4: cmp_c0 */
327 	0xf00c1bf4,
328 	0xcbbb10c7,
329 	0x160ef400,
330 /* 0x0200: cmp_c1 */
331 	0xf406a430,
332 	0xc7f00c18,
333 	0x00cbbb14,
334 /* 0x020f: cmp_zero */
335 	0xf1070ef4,
336 /* 0x0213: bpc_next */
337 	0x380080c7,
338 	0x80b601c8,
339 	0x01b0b601,
340 	0xf404b5b8,
341 	0x90b6c308,
342 	0x0497b801,
343 	0xfdb208f4,
344 	0x06800065,
345 	0x1d08980e,
346 	0xf40068fd,
347 	0x64bd0502,
348 /* 0x023c: dst_xcnt */
349 	0x800075fd,
350 	0x78fd1907,
351 	0x1057f100,
352 	0x0654b608,
353 	0xd00056d0,
354 	0x50b74057,
355 	0x06980800,
356 	0x0162b619,
357 	0x980864b6,
358 	0x72b60e07,
359 	0x0567fd01,
360 	0xb70056d0,
361 	0xb4010050,
362 	0x56d00060,
363 	0x0160b400,
364 	0xb44056d0,
365 	0x56d00260,
366 	0x0360b480,
367 	0xb7c056d0,
368 	0x98040050,
369 	0x56d01b06,
370 	0x1c069800,
371 	0xf44056d0,
372 	0x00f81030,
373 /* 0x029c: cmd_exec_set_surface_tiled */
374 	0xc7075798,
375 	0x78c76879,
376 	0x0380b664,
377 	0xb06077c7,
378 	0x1bf40e76,
379 	0x0477f009,
380 /* 0x02b7: xtile64 */
381 	0xf00f0ef4,
382 	0x70b6027c,
383 	0x0947fd11,
384 /* 0x02c3: xtileok */
385 	0x980677f0,
386 	0x5b980c5a,
387 	0x00abfd0e,
388 	0xbb01b7f0,
389 	0xb2b604b7,
390 	0xc4abff01,
391 	0x9805a7bb,
392 	0xe7f00d5d,
393 	0x04e8bb01,
394 	0xff01e2b6,
395 	0xd8bbb4de,
396 	0x01e0b605,
397 	0xbb0cef94,
398 	0xfefd02eb,
399 	0x026cf005,
400 	0x020860b7,
401 	0xd00864b6,
402 	0xb7bb006f,
403 	0x00cbbb04,
404 	0x98085f98,
405 	0xfbfd0e5b,
406 	0x01b7f000,
407 	0xb604b7bb,
408 	0xfbbb01b2,
409 	0x05f7bb00,
410 	0x5f98f0f9,
411 	0x01b7f009,
412 	0xb604b8bb,
413 	0xfbbb01b2,
414 	0x05f8bb00,
415 	0x78bbf0f9,
416 	0x0282b600,
417 	0xbb01b7f0,
418 	0xb9bb04b8,
419 	0x0b589804,
420 	0xbb01e7f0,
421 	0xe2b604e9,
422 	0xf48eff01,
423 	0xbb04f7bb,
424 	0x79bb00cf,
425 	0x0589bb00,
426 	0x90fcf0fc,
427 	0xbb00d9fd,
428 	0x89fd00ad,
429 	0x008ffd00,
430 	0xbb00a8bb,
431 	0x92b604a7,
432 	0x0497bb01,
433 	0x988069d0,
434 	0x58980557,
435 	0x00acbb04,
436 	0xb6007abb,
437 	0x84b60081,
438 	0x058bfd10,
439 	0x060062b7,
440 	0xb70067d0,
441 	0xd0040060,
442 	0x00f80068,
443 /* 0x03a8: cmd_exec_set_surface_linear */
444 	0xb7026cf0,
445 	0xb6020260,
446 	0x57980864,
447 	0x0067d005,
448 	0x040060b7,
449 	0xb6045798,
450 	0x67d01074,
451 	0x0060b700,
452 	0x06579804,
453 	0xf80067d0,
454 /* 0x03d1: cmd_exec_wait */
455 	0xf900f900,
456 	0x0007f110,
457 	0x0604b608,
458 /* 0x03dc: loop */
459 	0xf00001cf,
460 	0x1bf40114,
461 	0xfc10fcfa,
462 /* 0x03eb: cmd_exec_query */
463 	0xc800f800,
464 	0x1bf40d34,
465 	0xd121f570,
466 	0x0c47f103,
467 	0x0644b608,
468 	0xb6020598,
469 	0x45d00450,
470 	0x4040d000,
471 	0xd00c57f0,
472 	0x40b78045,
473 	0x05980400,
474 	0x1054b601,
475 	0xb70045d0,
476 	0xf1050040,
477 	0xf00b0057,
478 	0x45d00153,
479 	0x4057f100,
480 	0x0154b640,
481 	0x808053f1,
482 	0xf14045d0,
483 	0xf1111057,
484 	0xd0131253,
485 	0x57f18045,
486 	0x53f11514,
487 	0x45d01716,
488 	0x0157f1c0,
489 	0x0153f026,
490 	0x080047f1,
491 	0xd00644b6,
492 /* 0x045e: query_counter */
493 	0x21f50045,
494 	0x47f103d1,
495 	0x44b6080c,
496 	0x02059806,
497 	0xd00045d0,
498 	0x57f04040,
499 	0x8045d004,
500 	0x040040b7,
501 	0xb6010598,
502 	0x45d01054,
503 	0x0040b700,
504 	0x0057f105,
505 	0x0045d003,
506 	0x111057f1,
507 	0x131253f1,
508 	0x984045d0,
509 	0x40b70305,
510 	0x45d00500,
511 	0x0157f100,
512 	0x0153f026,
513 	0x080047f1,
514 	0xd00644b6,
515 	0x00f80045,
516 /* 0x04b8: cmd_exec */
517 	0x03d121f5,
518 	0xf4003fc8,
519 	0x21f50e0b,
520 	0x47f101af,
521 	0x0ef40200,
522 /* 0x04cd: cmd_exec_no_format */
523 	0x1067f11e,
524 	0x0664b608,
525 	0x800177f0,
526 	0x07800e07,
527 	0x1d079819,
528 	0xd00067d0,
529 	0x44bd4067,
530 /* 0x04e8: cmd_exec_init_src_surface */
531 	0xbd0232f4,
532 	0x043fc854,
533 	0xf50a0bf4,
534 	0xf403a821,
535 /* 0x04fa: src_tiled */
536 	0x21f50a0e,
537 	0x49f0029c,
538 /* 0x0501: cmd_exec_init_dst_surface */
539 	0x0231f407,
540 	0xc82c57f0,
541 	0x0bf4083f,
542 	0xa821f50a,
543 	0x0a0ef403,
544 /* 0x0514: dst_tiled */
545 	0x029c21f5,
546 /* 0x051b: cmd_exec_kick */
547 	0xf10849f0,
548 	0xb6080057,
549 	0x06980654,
550 	0x4056d01e,
551 	0xf14167f0,
552 	0xfd440063,
553 	0x54d00546,
554 	0x0c3fc800,
555 	0xf5070bf4,
556 /* 0x053f: cmd_exec_done */
557 	0xf803eb21,
558 /* 0x0541: cmd_wrcache_flush */
559 	0x0027f100,
560 	0xf034bd22,
561 	0x23d00133,
562 	0x0000f800,
563 	0x00000000,
564 	0x00000000,
565 	0x00000000,
566 	0x00000000,
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 };
608