Merge tag 'drm-next-2019-07-19' of git://anongit.freedesktop.org/drm/drm
[sfrench/cifs-2.6.git] / drivers / gpu / drm / nouveau / nvkm / engine / gr / fuc / gpcgm107.fuc5.h
1 /* SPDX-License-Identifier: MIT */
2 static uint32_t gm107_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 gm107_grgpc_code[] = {
45         0x03410ef5,
46 /* 0x0004: queue_put */
47         0x9800d898,
48         0x86f001d9,
49         0xf489a408,
50         0x020f0b1b,
51         0x0002f87e,
52 /* 0x001a: queue_put_next */
53         0x98c400f8,
54         0x0384b607,
55         0xb6008dbb,
56         0x8eb50880,
57         0x018fb500,
58         0xf00190b6,
59         0xd9b50f94,
60 /* 0x0037: queue_get */
61         0xf400f801,
62         0xd8980131,
63         0x01d99800,
64         0x0bf489a4,
65         0x0789c421,
66         0xbb0394b6,
67         0x90b6009d,
68         0x009e9808,
69         0xb6019f98,
70         0x84f00180,
71         0x00d8b50f,
72 /* 0x0063: queue_get_done */
73         0xf80132f4,
74 /* 0x0065: nv_rd32 */
75         0xf0ecb200,
76         0x00801fc9,
77         0x0cf601ca,
78 /* 0x0073: nv_rd32_wait */
79         0x8c04bd00,
80         0xcf01ca00,
81         0xccc800cc,
82         0xf61bf41f,
83         0xec7e060a,
84         0x008f0000,
85         0xffcf01cb,
86 /* 0x008f: nv_wr32 */
87         0x8000f800,
88         0xf601cc00,
89         0x04bd000f,
90         0xc9f0ecb2,
91         0x1ec9f01f,
92         0x01ca0080,
93         0xbd000cf6,
94 /* 0x00a9: nv_wr32_wait */
95         0xca008c04,
96         0x00cccf01,
97         0xf41fccc8,
98         0x00f8f61b,
99 /* 0x00b8: wait_donez */
100         0x99f094bd,
101         0x37008000,
102         0x0009f602,
103         0x008004bd,
104         0x0af60206,
105 /* 0x00cf: wait_donez_ne */
106         0x8804bd00,
107         0xcf010000,
108         0x8aff0088,
109         0xf61bf488,
110         0x99f094bd,
111         0x17008000,
112         0x0009f602,
113         0x00f804bd,
114 /* 0x00ec: wait_doneo */
115         0x99f094bd,
116         0x37008000,
117         0x0009f602,
118         0x008004bd,
119         0x0af60206,
120 /* 0x0103: wait_doneo_e */
121         0x8804bd00,
122         0xcf010000,
123         0x8aff0088,
124         0xf60bf488,
125         0x99f094bd,
126         0x17008000,
127         0x0009f602,
128         0x00f804bd,
129 /* 0x0120: mmctx_size */
130 /* 0x0122: nv_mmctx_size_loop */
131         0xe89894bd,
132         0x1a85b600,
133         0xb60180b6,
134         0x98bb0284,
135         0x04e0b600,
136         0x1bf4efa4,
137         0xf89fb2ec,
138 /* 0x013d: mmctx_xfer */
139         0xf094bd00,
140         0x00800199,
141         0x09f60237,
142         0xbd04bd00,
143         0x05bbfd94,
144         0x800f0bf4,
145         0xf601c400,
146         0x04bd000b,
147 /* 0x015f: mmctx_base_disabled */
148         0xfd0099f0,
149         0x0bf405ee,
150         0xc6008018,
151         0x000ef601,
152         0x008004bd,
153         0x0ff601c7,
154         0xf004bd00,
155 /* 0x017a: mmctx_multi_disabled */
156         0xabc80199,
157         0x10b4b600,
158         0xc80cb9f0,
159         0xe4b601ae,
160         0x05befd11,
161         0x01c50080,
162         0xbd000bf6,
163 /* 0x0195: mmctx_exec_loop */
164 /* 0x0195: mmctx_wait_free */
165         0xc5008e04,
166         0x00eecf01,
167         0xf41fe4f0,
168         0xce98f60b,
169         0x05e9fd00,
170         0x01c80080,
171         0xbd000ef6,
172         0x04c0b604,
173         0x1bf4cda4,
174         0x02abc8df,
175 /* 0x01bf: mmctx_fini_wait */
176         0x8b1c1bf4,
177         0xcf01c500,
178         0xb4f000bb,
179         0x10b4b01f,
180         0x0af31bf4,
181         0x00b87e05,
182         0x250ef400,
183 /* 0x01d8: mmctx_stop */
184         0xb600abc8,
185         0xb9f010b4,
186         0x12b9f00c,
187         0x01c50080,
188         0xbd000bf6,
189 /* 0x01ed: mmctx_stop_wait */
190         0xc5008b04,
191         0x00bbcf01,
192         0xf412bbc8,
193 /* 0x01fa: mmctx_done */
194         0x94bdf61b,
195         0x800199f0,
196         0xf6021700,
197         0x04bd0009,
198 /* 0x020a: strand_wait */
199         0xa0f900f8,
200         0xb87e020a,
201         0xa0fc0000,
202 /* 0x0216: strand_pre */
203         0x0c0900f8,
204         0x024afc80,
205         0xbd0009f6,
206         0x020a7e04,
207 /* 0x0227: strand_post */
208         0x0900f800,
209         0x4afc800d,
210         0x0009f602,
211         0x0a7e04bd,
212         0x00f80002,
213 /* 0x0238: strand_set */
214         0xfc800f0c,
215         0x0cf6024f,
216         0x0c04bd00,
217         0x4afc800b,
218         0x000cf602,
219         0xfc8004bd,
220         0x0ef6024f,
221         0x0c04bd00,
222         0x4afc800a,
223         0x000cf602,
224         0x0a7e04bd,
225         0x00f80002,
226 /* 0x0268: strand_ctx_init */
227         0x99f094bd,
228         0x37008003,
229         0x0009f602,
230         0x167e04bd,
231         0x030e0002,
232         0x0002387e,
233         0xfc80c4bd,
234         0x0cf60247,
235         0x0c04bd00,
236         0x4afc8001,
237         0x000cf602,
238         0x0a7e04bd,
239         0x0c920002,
240         0x46fc8001,
241         0x000cf602,
242         0x020c04bd,
243         0x024afc80,
244         0xbd000cf6,
245         0x020a7e04,
246         0x02277e00,
247         0x42008800,
248         0x20008902,
249         0x0099cf02,
250 /* 0x02c7: ctx_init_strand_loop */
251         0xf608fe95,
252         0x8ef6008e,
253         0x808acf40,
254         0xb606a5b6,
255         0xeabb01a0,
256         0x0480b600,
257         0xf40192b6,
258         0xe4b6e81b,
259         0xf2efbc08,
260         0x99f094bd,
261         0x17008003,
262         0x0009f602,
263         0x00f804bd,
264 /* 0x02f8: error */
265         0xffb2e0f9,
266         0x4098148e,
267         0x00008f7e,
268         0xffb2010f,
269         0x409c1c8e,
270         0x00008f7e,
271         0x00f8e0fc,
272 /* 0x0314: tpc_strand_wait */
273         0x94bd90f9,
274         0x800a99f0,
275         0xf6023700,
276         0x04bd0009,
277 /* 0x0324: tpc_strand_busy */
278         0x033f0089,
279         0xb30099cf,
280         0xbdf90094,
281         0x0a99f094,
282         0x02170080,
283         0xbd0009f6,
284         0xf890fc04,
285 /* 0x0341: init */
286         0x4104bd00,
287         0x11cf4200,
288         0x0911e700,
289         0x0814b601,
290         0x020014fe,
291         0x12004002,
292         0xbd0002f6,
293         0x05ad4104,
294         0x400010fe,
295         0x00f60700,
296         0x0204bd00,
297         0x04004004,
298         0xbd0002f6,
299         0x1031f404,
300         0x01820082,
301         0x030022cf,
302         0x1f24f001,
303         0xb60432bb,
304         0x02b50132,
305         0x0603b505,
306         0x01860082,
307         0xb50022cf,
308         0x24b60402,
309         0xc900800f,
310         0x0002f601,
311         0x308e04bd,
312         0xe5f0500c,
313         0xbd24bd01,
314 /* 0x03b3: init_unk_loop */
315         0x7e44bd34,
316         0xb0000065,
317         0x0bf400f6,
318         0xbb010f0e,
319         0x4ffd04f2,
320         0x0130b605,
321 /* 0x03c8: init_unk_next */
322         0xb60120b6,
323         0x26b004e0,
324         0xe21bf402,
325 /* 0x03d4: init_unk_done */
326         0xb50703b5,
327         0x00820804,
328         0x22cf0201,
329         0x9534bd00,
330         0x00800825,
331         0x05f601c0,
332         0x8004bd00,
333         0xf601c100,
334         0x04bd0005,
335         0x98000e98,
336         0x207e010f,
337         0x2fbb0001,
338         0x003fbb00,
339         0x98010e98,
340         0x207e020f,
341         0x0e980001,
342         0x00effd05,
343         0xbb002ebb,
344         0x0e98003e,
345         0x030f9802,
346         0x0001207e,
347         0xfd070e98,
348         0x2ebb00ef,
349         0x003ebb00,
350         0x800235b6,
351         0xf601d300,
352         0x04bd0003,
353         0xb60825b6,
354         0x20b60635,
355         0x0130b601,
356         0xb60824b6,
357         0x2fb20834,
358         0x0002687e,
359         0xbb002fbb,
360         0x3f0f003f,
361         0x501d608e,
362         0xb201e5f0,
363         0x008f7eff,
364         0x8e0c0f00,
365         0xf0501da8,
366         0xffb201e5,
367         0x00008f7e,
368         0x0003147e,
369         0x608e3f0f,
370         0xe5f0501d,
371         0x7effb201,
372         0x0f00008f,
373         0x1d9c8e00,
374         0x01e5f050,
375         0x8f7effb2,
376         0x010f0000,
377         0x0003147e,
378         0x501da88e,
379         0xb201e5f0,
380         0x008f7eff,
381         0x8eff0f00,
382         0xf0501d98,
383         0xffb201e5,
384         0x00008f7e,
385         0xa88e020f,
386         0xe5f0501d,
387         0x7effb201,
388         0x7e00008f,
389         0x98000314,
390         0x00850504,
391         0x55f05040,
392 /* 0x04dd: tpc_strand_init_tpc_loop */
393         0x705eb801,
394         0x657e0005,
395         0xf6b20000,
396 /* 0x04ea: tpc_strand_init_idx_loop */
397         0x5eb874bd,
398         0xb2000560,
399         0x008f7e7f,
400         0x885eb800,
401         0x2f950005,
402         0x008f7e08,
403         0x8c5eb800,
404         0x2f950005,
405         0x008f7e08,
406         0x905eb800,
407         0x657e0005,
408         0xf5b60000,
409         0x01f0b606,
410         0xbb08f4b6,
411         0x3fbb002f,
412         0x0170b600,
413         0xf40162b6,
414         0x50b7bf1b,
415         0x42b60800,
416         0xa81bf401,
417         0x608e3f0f,
418         0xe5f0501d,
419         0x7effb201,
420         0x0f00008f,
421         0x1da88e0d,
422         0x01e5f050,
423         0x8f7effb2,
424         0x147e0000,
425         0x00800003,
426         0x03f60201,
427         0xbd04bd00,
428         0x1f29f024,
429         0x02300080,
430         0xbd0002f6,
431 /* 0x0571: wait */
432         0x0028f404,
433 /* 0x0577: main */
434         0x0d0031f4,
435         0x00377e24,
436         0xf401f400,
437         0xf404e4b0,
438         0x81fe1d18,
439         0xbd060201,
440         0x0412fd20,
441         0xfd01e4b6,
442         0x18fe051e,
443         0x06487e00,
444         0xda0ef400,
445 /* 0x05a0: main_not_ctx_xfer */
446         0xf010ef94,
447         0xf87e01f5,
448         0x0ef40002,
449 /* 0x05ad: ih */
450         0xf900f9cd,
451         0x0188fe80,
452         0x90f980f9,
453         0xb0f9a0f9,
454         0xe0f9d0f9,
455         0x04bdf0f9,
456         0xcf02004a,
457         0xabc400aa,
458         0x1f0bf404,
459         0x004e240d,
460         0x00eecf1a,
461         0xcf19004f,
462         0x047e00ff,
463         0x010e0000,
464         0xf61d0040,
465         0x04bd000e,
466 /* 0x05ec: ih_no_fifo */
467         0xf6010040,
468         0x04bd000a,
469         0xe0fcf0fc,
470         0xb0fcd0fc,
471         0x90fca0fc,
472         0x88fe80fc,
473         0xfc80fc00,
474         0x0032f400,
475 /* 0x060e: hub_barrier_done */
476         0x010f01f8,
477         0xbb040e98,
478         0xffb204fe,
479         0x4094188e,
480         0x00008f7e,
481 /* 0x0622: ctx_redswitch */
482         0x200f00f8,
483         0x01850080,
484         0xbd000ff6,
485 /* 0x062f: ctx_redswitch_delay */
486         0xb6080e04,
487         0x1bf401e2,
488         0x00f5f1fd,
489         0x00f5f108,
490         0x85008002,
491         0x000ff601,
492         0x00f804bd,
493 /* 0x0648: ctx_xfer */
494         0x02810080,
495         0xbd000ff6,
496         0x1dc48e04,
497         0x01e5f050,
498         0x8f7effb2,
499         0x11f40000,
500         0x06227e07,
501 /* 0x0665: ctx_xfer_not_load */
502         0x02167e00,
503         0x8024bd00,
504         0xf60247fc,
505         0x04bd0002,
506         0xb6012cf0,
507         0xfc800320,
508         0x02f6024a,
509         0x0f04bd00,
510         0x1da88e0c,
511         0x01e5f050,
512         0x8f7effb2,
513         0x147e0000,
514         0x3f0f0003,
515         0x501d608e,
516         0xb201e5f0,
517         0x008f7eff,
518         0x8e000f00,
519         0xf0501d9c,
520         0xffb201e5,
521         0x00008f7e,
522         0x147e010f,
523         0xfcf00003,
524         0x03f0b601,
525         0x501da88e,
526         0xb201e5f0,
527         0x008f7eff,
528         0x01acf000,
529         0x8b02a5f0,
530         0x98500000,
531         0xc4b6040c,
532         0x00bcbb0f,
533         0x98000c98,
534         0x000e010d,
535         0x00013d7e,
536         0x8b01acf0,
537         0x98504000,
538         0xc4b6040c,
539         0x00bcbb0f,
540         0x98010c98,
541         0x0f98020d,
542         0x08004e06,
543         0x00013d7e,
544         0xf001acf0,
545         0x008b04a5,
546         0x0c985030,
547         0x0fc4b604,
548         0x9800bcbb,
549         0x0d98020c,
550         0x080f9803,
551         0x7e02004e,
552         0x7e00013d,
553         0x7e00020a,
554         0xf4000314,
555         0x12f40601,
556 /* 0x073d: ctx_xfer_post */
557         0x02277e1a,
558         0x8e0d0f00,
559         0xf0501da8,
560         0xffb201e5,
561         0x00008f7e,
562         0x0003147e,
563 /* 0x0754: ctx_xfer_done */
564         0x00060e7e,
565         0x000000f8,
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 };