Commit e1b22bc1 authored by Ben Skeggs's avatar Ben Skeggs

drm/nvc0-/gr: fiddle some magic around strand init

Fixes HUB_INIT timeout on GK110/GK208 when not using NVIDIA's ucode.
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 96616b4c
......@@ -134,6 +134,13 @@ init:
// context size calculation, reserve first 256 bytes for use by fuc
mov $r1 256
//
mov $r15 2
call(ctx_4170s)
call(ctx_4170w)
mov $r15 0x10
call(ctx_86c)
// calculate size of mmio context data
ld b32 $r14 D[$r0 + #hub_mmio_list_head]
ld b32 $r15 D[$r0 + #hub_mmio_list_tail]
......@@ -196,6 +203,12 @@ init:
sub b32 $r3 1
bra ne #init_gpc
//
mov $r15 0
call(ctx_86c)
mov $r15 0
call(ctx_4170s)
// save context size, and tell host we're ready
nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_VAL(1), 0, $r1)
clear b32 $r1
......@@ -414,9 +427,9 @@ ctx_redswitch:
// In: $r15 value to set to (0x00/0x10 are used)
//
ctx_86c:
nv_iowr(0x40986c, 0, $r15)
nv_iowr(NV_PGRAPH_FECS_UNK86C, 0, $r15)
nv_wr32(0x408a14, $r15)
nv_wr32(0x41a86c, $r15)
nv_wr32(NV_PGRAPH_GPCX_GPCCS_UNK86C, $r15)
ret
// In: $r15 NV_PGRAPH_FECS_MEM_CMD_*
......
......@@ -478,7 +478,7 @@ uint32_t nvc0_grhub_code[] = {
0xf0120007,
0x02d00003,
0xf104bd00,
0xfe06a817,
0xfe06c817,
0x24bd0010,
0x070007f1,
0xd00003f0,
......@@ -527,48 +527,56 @@ uint32_t nvc0_grhub_code[] = {
0x03f00400,
0x0001d001,
0x17f104bd,
0x0e980100,
0x010f9800,
0x015021f5,
0xf1081495,
0xf0c00007,
0x04d00103,
0xf104bd00,
0xf0c10007,
0x04d00103,
0xb704bd00,
0xbb130030,
0xf5b6001f,
0x0007f102,
0x0103f0d3,
0xbd000fd0,
0x0815b604,
0xb60110b6,
0x1fb90814,
0xd321f502,
0x001fbb02,
0xf1020398,
0xf0200047,
/* 0x04e2: init_gpc */
0x4ea05043,
0x1fb90804,
0x9d21f402,
0x010c4ea0,
0x21f4f4bd,
0x044ea09d,
0x9d21f401,
0x01004ea0,
0xf402f7f0,
0xf7f00100,
0x9d21f502,
0xaf21f507,
0x10f7f007,
0x07fc21f5,
0x98000e98,
0x21f5010f,
0x14950150,
0x0007f108,
0x0103f0c0,
0xbd0004d0,
0x0007f104,
0x0103f0c1,
0xbd0004d0,
0x0030b704,
0x001fbb13,
0xf102f5b6,
0xf0d30007,
0x0fd00103,
0xb604bd00,
0x10b60815,
0x0814b601,
0xf5021fb9,
0xbb02d321,
0x0398001f,
0x0047f102,
0x5043f020,
/* 0x04f4: init_gpc */
0x08044ea0,
0xf4021fb9,
0x4ea09d21,
/* 0x050a: init_gpc_wait */
0x21f40800,
0x1fffc868,
0xa0fa0bf4,
0xf408044e,
0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf4bd010c,
0xa09d21f4,
0xf401044e,
0x4ea09d21,
0xf7f00100,
0x9d21f402,
0x08004ea0,
/* 0x051c: init_gpc_wait */
0xc86821f4,
0x0bf41fff,
0x044ea0fa,
0x6821f408,
0xb7001fbb,
0xb6800040,
0x1bf40132,
0x00f7f0be,
0x07fc21f5,
0xf500f7f0,
0xf1079d21,
0xf0010007,
0x01d00203,
0xbd04bd00,
......@@ -576,7 +584,7 @@ uint32_t nvc0_grhub_code[] = {
0x080007f1,
0xd00203f0,
0x04bd0001,
/* 0x0544: main */
/* 0x0564: main */
0xf40031f4,
0xd7f00028,
0x3921f410,
......@@ -602,7 +610,7 @@ uint32_t nvc0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x31f40132,
0xb721f502,
0xd021f502,
0xf094bd09,
0x07f10799,
0x03f01700,
......@@ -613,27 +621,27 @@ uint32_t nvc0_grhub_code[] = {
0x0203f00f,
0xbd0009d0,
0x0131f404,
0x09b721f5,
0x09d021f5,
0x99f094bd,
0x0007f106,
0x0203f017,
0xbd0009d0,
0x330ef404,
/* 0x05ec: chsw_prev_no_next */
/* 0x060c: chsw_prev_no_next */
0x12b920f9,
0x0132f402,
0xf50232f4,
0xfc09b721,
0xfc09d021,
0x0007f120,
0x0203f0c0,
0xbd0002d0,
0x130ef404,
/* 0x060c: chsw_no_prev */
/* 0x062c: chsw_no_prev */
0xf41f23c8,
0x31f40d0b,
0x0232f401,
0x09b721f5,
/* 0x061c: chsw_done */
0x09d021f5,
/* 0x063c: chsw_done */
0xf10127f0,
0xf0c30007,
0x02d00203,
......@@ -643,12 +651,12 @@ uint32_t nvc0_grhub_code[] = {
0xd00203f0,
0x04bd0009,
0xff080ef5,
/* 0x0640: main_not_ctx_switch */
/* 0x0660: main_not_ctx_switch */
0xf401e4b0,
0xf2b90d1b,
0x4021f502,
0x6021f502,
0x460ef409,
/* 0x0650: main_not_ctx_chan */
/* 0x0670: main_not_ctx_chan */
0xf402e4b0,
0x94bd321b,
0xf10799f0,
......@@ -656,24 +664,24 @@ uint32_t nvc0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x32f40132,
0xb721f502,
0xd021f502,
0xf094bd09,
0x07f10799,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x0685: main_not_ctx_save */
/* 0x06a5: main_not_ctx_save */
0x10ef9411,
0xf501f5f0,
0xf5037e21,
/* 0x0693: main_done */
/* 0x06b3: main_done */
0xbdfeb50e,
0x1f29f024,
0x080007f1,
0xd00203f0,
0x04bd0002,
0xfea00ef5,
/* 0x06a8: ih */
/* 0x06c8: ih */
0x88fe80f9,
0xf980f901,
0xf9a0f990,
......@@ -694,19 +702,19 @@ uint32_t nvc0_grhub_code[] = {
0x07f101e7,
0x03f01d00,
0x000ed000,
/* 0x06fa: ih_no_fifo */
/* 0x071a: ih_no_fifo */
0xabe404bd,
0x0bf40100,
0x10d7f00d,
0x4001e7f1,
/* 0x070b: ih_no_ctxsw */
/* 0x072b: ih_no_ctxsw */
0xf10421f4,
0xbd0104b7,
0xb4abffb0,
0xf10f0bf4,
0xf0070007,
0x0bd00303,
/* 0x0723: ih_no_other */
/* 0x0743: ih_no_other */
0xf104bd00,
0xf0010007,
0x0ad00003,
......@@ -716,36 +724,36 @@ uint32_t nvc0_grhub_code[] = {
0xfc90fca0,
0x0088fe80,
0x32f480fc,
/* 0x0747: ctx_4160s */
/* 0x0767: ctx_4160s */
0xf001f800,
0xffb901f7,
0x60e7f102,
0x40e3f041,
/* 0x0757: ctx_4160s_wait */
/* 0x0777: ctx_4160s_wait */
0xf19d21f4,
0xf04160e7,
0x21f440e3,
0x02ffb968,
0xf404ffc8,
0x00f8f00b,
/* 0x076c: ctx_4160c */
/* 0x078c: ctx_4160c */
0xffb9f4bd,
0x60e7f102,
0x40e3f041,
0xf89d21f4,
/* 0x077d: ctx_4170s */
/* 0x079d: ctx_4170s */
0x10f5f000,
0xf102ffb9,
0xf04170e7,
0x21f440e3,
/* 0x078f: ctx_4170w */
/* 0x07af: ctx_4170w */
0xf100f89d,
0xf04170e7,
0x21f440e3,
0x02ffb968,
0xf410f4f0,
0x00f8f01b,
/* 0x07a4: ctx_redswitch */
/* 0x07c4: ctx_redswitch */
0x0200e7f1,
0xf040e5f0,
0xe5f020e5,
......@@ -753,7 +761,7 @@ uint32_t nvc0_grhub_code[] = {
0x0103f085,
0xbd000ed0,
0x08f7f004,
/* 0x07c0: ctx_redswitch_delay */
/* 0x07e0: ctx_redswitch_delay */
0xf401f2b6,
0xe5f1fd1b,
0xe5f10400,
......@@ -761,7 +769,7 @@ uint32_t nvc0_grhub_code[] = {
0x03f08500,
0x000ed001,
0x00f804bd,
/* 0x07dc: ctx_86c */
/* 0x07fc: ctx_86c */
0x1b0007f1,
0xd00203f0,
0x04bd000f,
......@@ -772,16 +780,16 @@ uint32_t nvc0_grhub_code[] = {
0xa86ce7f1,
0xf441e3f0,
0x00f89d21,
/* 0x0804: ctx_mem */
/* 0x0824: ctx_mem */
0x840007f1,
0xd00203f0,
0x04bd000f,
/* 0x0810: ctx_mem_wait */
/* 0x0830: ctx_mem_wait */
0x8400f7f1,
0xcf02f3f0,
0xfffd00ff,
0xf31bf405,
/* 0x0822: ctx_load */
/* 0x0842: ctx_load */
0x94bd00f8,
0xf10599f0,
0xf00f0007,
......@@ -799,7 +807,7 @@ uint32_t nvc0_grhub_code[] = {
0x02d00203,
0xf004bd00,
0x21f507f7,
0x07f10804,
0x07f10824,
0x03f0c000,
0x0002d002,
0x0bfe04bd,
......@@ -854,122 +862,114 @@ uint32_t nvc0_grhub_code[] = {
0x03f01700,
0x0009d002,
0x00f804bd,
/* 0x0940: ctx_chan */
0x074721f5,
0x082221f5,
/* 0x0960: ctx_chan */
0x076721f5,
0x084221f5,
0xf40ca7f0,
0x17f1d021,
0x14b60a10,
0x05f7f006,
0x080421f5,
0x076c21f5,
/* 0x0962: ctx_mmio_exec */
0x039800f8,
0x0007f141,
0x0203f081,
0xbd0003d0,
/* 0x0973: ctx_mmio_loop */
0xc434bd04,
0x1bf4ff34,
0x0057f10f,
0x0653f002,
0xf80535fa,
/* 0x0985: ctx_mmio_pull */
0x804e9803,
0xf4814f98,
0x30b69d21,
0x0112b608,
/* 0x0997: ctx_mmio_done */
0x98df1bf4,
0x07f11603,
0xf7f0d021,
0x2421f505,
0x8c21f508,
/* 0x097b: ctx_mmio_exec */
0x9800f807,
0x07f14103,
0x03f08100,
0x0003d002,
0x008004bd,
0x0017f140,
0x0613f001,
0xf80601fa,
/* 0x09b7: ctx_xfer */
0xf000f803,
0x07f104e7,
0x03f00200,
0x000ed003,
/* 0x09c6: ctx_xfer_idle */
0xe7f104bd,
0xe3f00000,
0x00eecf03,
0x2000e4f1,
0xf4f21bf4,
0x02f40611,
/* 0x09dd: ctx_xfer_pre */
0x10f7f011,
0x07dc21f5,
0x074721f5,
/* 0x09eb: ctx_xfer_pre_load */
0xf01c11f4,
0x21f502f7,
0x21f5077d,
0x21f5078f,
0xf4bd07a4,
0x077d21f5,
0x082221f5,
/* 0x0a04: ctx_xfer_exec */
0xbd160198,
0x0007f124,
0x0103f005,
0xbd0002d0,
0x021fb904,
0xa500e7f1,
0xf441e3f0,
0xfcf09d21,
0x022cf001,
0xfd0124b6,
0xffb905f2,
0x04e7f102,
0x34bd04bd,
/* 0x098c: ctx_mmio_loop */
0xf4ff34c4,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x099e: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb69d21f4,
0x12b60830,
0xdf1bf401,
/* 0x09b0: ctx_mmio_done */
0xf1160398,
0xf0810007,
0x03d00203,
0x8004bd00,
0x17f14000,
0x13f00100,
0x0601fa06,
0x00f803f8,
/* 0x09d0: ctx_xfer */
0xf104e7f0,
0xf0020007,
0x0ed00303,
/* 0x09df: ctx_xfer_idle */
0xf104bd00,
0xf00000e7,
0xeecf03e3,
0x00e4f100,
0xf21bf420,
0xf40611f4,
/* 0x09f6: ctx_xfer_pre */
0xf7f01102,
0xfc21f510,
0x6721f507,
0x1c11f407,
/* 0x0a04: ctx_xfer_pre_load */
0xf502f7f0,
0xf5079d21,
0xf507af21,
0xbd07c421,
0x9d21f5f4,
0x4221f507,
/* 0x0a1d: ctx_xfer_exec */
0x16019808,
0x07f124bd,
0x03f00500,
0x0002d001,
0x1fb904bd,
0x00e7f102,
0x41e3f0a5,
0xf59d21f4,
0xbd026a21,
0xfc07f124,
0x0203f047,
0xbd0002d0,
0x012cf004,
0xf10320b6,
0xf04afc07,
0x02d00203,
0xf004bd00,
0xa5f001ac,
0x00b7f006,
0x98000c98,
0xe7f0010d,
0x6f21f500,
0x08a7f001,
0x011021f5,
0x025e21f5,
0xf01301f4,
0x21f40ca7,
0x05f7f0d0,
0x080421f5,
/* 0x0a93: ctx_xfer_post */
0xf03202f4,
0x21f502f7,
0xf4bd077d,
0x07dc21f5,
0x027f21f5,
0x078f21f5,
0x21f5f4bd,
0x11f4077d,
0x40019810,
0xf40511fd,
0x21f5070b,
/* 0x0abe: ctx_xfer_no_post_mmio */
0x21f50962,
/* 0x0ac2: ctx_xfer_done */
0x00f8076c,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0xf09d21f4,
0x2cf001fc,
0x0124b602,
0xb905f2fd,
0xe7f102ff,
0xe3f0a504,
0x9d21f441,
0x026a21f5,
0x07f124bd,
0x03f047fc,
0x0002d002,
0x2cf004bd,
0x0320b601,
0x4afc07f1,
0xd00203f0,
0x04bd0002,
0xf001acf0,
0xb7f006a5,
0x000c9800,
0xf0010d98,
0x21f500e7,
0xa7f0016f,
0x1021f508,
0x5e21f501,
0x1301f402,
0xf40ca7f0,
0xf7f0d021,
0x2421f505,
0x3202f408,
/* 0x0aac: ctx_xfer_post */
0xf502f7f0,
0xbd079d21,
0xfc21f5f4,
0x7f21f507,
0xaf21f502,
0xf5f4bd07,
0xf4079d21,
0x01981011,
0x0511fd40,
0xf5070bf4,
/* 0x0ad7: ctx_xfer_no_post_mmio */
0xf5097b21,
/* 0x0adb: ctx_xfer_done */
0xf8078c21,
0x00000000,
0x00000000,
0x00000000,
......
......@@ -478,7 +478,7 @@ uint32_t nvd7_grhub_code[] = {
0xf0120007,
0x02d00003,
0xf104bd00,
0xfe06a817,
0xfe06c817,
0x24bd0010,
0x070007f1,
0xd00003f0,
......@@ -527,48 +527,56 @@ uint32_t nvd7_grhub_code[] = {
0x03f00400,
0x0001d001,
0x17f104bd,
0x0e980100,
0x010f9800,
0x015021f5,
0xf1081495,
0xf0c00007,
0x04d00103,
0xf104bd00,
0xf0c10007,
0x04d00103,
0xb704bd00,
0xbb130030,
0xf5b6001f,
0x0007f102,
0x0103f0d3,
0xbd000fd0,
0x0815b604,
0xb60110b6,
0x1fb90814,
0xd321f502,
0x001fbb02,
0xf1020398,
0xf0200047,
/* 0x04e2: init_gpc */
0x4ea05043,
0x1fb90804,
0x9d21f402,
0x010c4ea0,
0x21f4f4bd,
0x044ea09d,
0x9d21f401,
0x01004ea0,
0xf402f7f0,
0xf7f00100,
0x9d21f502,
0xaf21f507,
0x10f7f007,
0x07fc21f5,
0x98000e98,
0x21f5010f,
0x14950150,
0x0007f108,
0x0103f0c0,
0xbd0004d0,
0x0007f104,
0x0103f0c1,
0xbd0004d0,
0x0030b704,
0x001fbb13,
0xf102f5b6,
0xf0d30007,
0x0fd00103,
0xb604bd00,
0x10b60815,
0x0814b601,
0xf5021fb9,
0xbb02d321,
0x0398001f,
0x0047f102,
0x5043f020,
/* 0x04f4: init_gpc */
0x08044ea0,
0xf4021fb9,
0x4ea09d21,
/* 0x050a: init_gpc_wait */
0x21f40800,
0x1fffc868,
0xa0fa0bf4,
0xf408044e,
0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf4bd010c,
0xa09d21f4,
0xf401044e,
0x4ea09d21,
0xf7f00100,
0x9d21f402,
0x08004ea0,
/* 0x051c: init_gpc_wait */
0xc86821f4,
0x0bf41fff,
0x044ea0fa,
0x6821f408,
0xb7001fbb,
0xb6800040,
0x1bf40132,
0x00f7f0be,
0x07fc21f5,
0xf500f7f0,
0xf1079d21,
0xf0010007,
0x01d00203,
0xbd04bd00,
......@@ -576,7 +584,7 @@ uint32_t nvd7_grhub_code[] = {
0x080007f1,
0xd00203f0,
0x04bd0001,
/* 0x0544: main */
/* 0x0564: main */
0xf40031f4,
0xd7f00028,
0x3921f410,
......@@ -602,7 +610,7 @@ uint32_t nvd7_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x31f40132,
0xb721f502,
0xd021f502,
0xf094bd09,
0x07f10799,
0x03f01700,
......@@ -613,27 +621,27 @@ uint32_t nvd7_grhub_code[] = {
0x0203f00f,
0xbd0009d0,
0x0131f404,
0x09b721f5,
0x09d021f5,
0x99f094bd,
0x0007f106,
0x0203f017,
0xbd0009d0,
0x330ef404,
/* 0x05ec: chsw_prev_no_next */
/* 0x060c: chsw_prev_no_next */
0x12b920f9,
0x0132f402,
0xf50232f4,
0xfc09b721,
0xfc09d021,
0x0007f120,
0x0203f0c0,
0xbd0002d0,
0x130ef404,
/* 0x060c: chsw_no_prev */
/* 0x062c: chsw_no_prev */
0xf41f23c8,
0x31f40d0b,
0x0232f401,
0x09b721f5,
/* 0x061c: chsw_done */
0x09d021f5,
/* 0x063c: chsw_done */
0xf10127f0,
0xf0c30007,
0x02d00203,
......@@ -643,12 +651,12 @@ uint32_t nvd7_grhub_code[] = {
0xd00203f0,
0x04bd0009,
0xff080ef5,
/* 0x0640: main_not_ctx_switch */
/* 0x0660: main_not_ctx_switch */
0xf401e4b0,
0xf2b90d1b,
0x4021f502,
0x6021f502,
0x460ef409,
/* 0x0650: main_not_ctx_chan */
/* 0x0670: main_not_ctx_chan */
0xf402e4b0,
0x94bd321b,
0xf10799f0,
......@@ -656,24 +664,24 @@ uint32_t nvd7_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x32f40132,
0xb721f502,
0xd021f502,
0xf094bd09,
0x07f10799,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x0685: main_not_ctx_save */
/* 0x06a5: main_not_ctx_save */
0x10ef9411,
0xf501f5f0,
0xf5037e21,
/* 0x0693: main_done */
/* 0x06b3: main_done */
0xbdfeb50e,
0x1f29f024,
0x080007f1,
0xd00203f0,
0x04bd0002,
0xfea00ef5,
/* 0x06a8: ih */
/* 0x06c8: ih */
0x88fe80f9,
0xf980f901,
0xf9a0f990,
......@@ -694,19 +702,19 @@ uint32_t nvd7_grhub_code[] = {
0x07f101e7,
0x03f01d00,
0x000ed000,
/* 0x06fa: ih_no_fifo */
/* 0x071a: ih_no_fifo */
0xabe404bd,
0x0bf40100,
0x10d7f00d,
0x4001e7f1,
/* 0x070b: ih_no_ctxsw */
/* 0x072b: ih_no_ctxsw */
0xf10421f4,
0xbd0104b7,
0xb4abffb0,
0xf10f0bf4,
0xf0070007,
0x0bd00303,
/* 0x0723: ih_no_other */
/* 0x0743: ih_no_other */
0xf104bd00,
0xf0010007,
0x0ad00003,
......@@ -716,36 +724,36 @@ uint32_t nvd7_grhub_code[] = {
0xfc90fca0,
0x0088fe80,
0x32f480fc,
/* 0x0747: ctx_4160s */
/* 0x0767: ctx_4160s */
0xf001f800,
0xffb901f7,
0x60e7f102,
0x40e3f041,
/* 0x0757: ctx_4160s_wait */
/* 0x0777: ctx_4160s_wait */
0xf19d21f4,
0xf04160e7,
0x21f440e3,
0x02ffb968,
0xf404ffc8,
0x00f8f00b,
/* 0x076c: ctx_4160c */
/* 0x078c: ctx_4160c */
0xffb9f4bd,
0x60e7f102,
0x40e3f041,
0xf89d21f4,
/* 0x077d: ctx_4170s */
/* 0x079d: ctx_4170s */
0x10f5f000,
0xf102ffb9,
0xf04170e7,
0x21f440e3,
/* 0x078f: ctx_4170w */
/* 0x07af: ctx_4170w */
0xf100f89d,
0xf04170e7,
0x21f440e3,
0x02ffb968,
0xf410f4f0,
0x00f8f01b,
/* 0x07a4: ctx_redswitch */
/* 0x07c4: ctx_redswitch */
0x0200e7f1,
0xf040e5f0,
0xe5f020e5,
......@@ -753,7 +761,7 @@ uint32_t nvd7_grhub_code[] = {
0x0103f085,
0xbd000ed0,
0x08f7f004,
/* 0x07c0: ctx_redswitch_delay */
/* 0x07e0: ctx_redswitch_delay */
0xf401f2b6,
0xe5f1fd1b,
0xe5f10400,
......@@ -761,7 +769,7 @@ uint32_t nvd7_grhub_code[] = {
0x03f08500,
0x000ed001,
0x00f804bd,
/* 0x07dc: ctx_86c */
/* 0x07fc: ctx_86c */
0x1b0007f1,
0xd00203f0,
0x04bd000f,
......@@ -772,16 +780,16 @@ uint32_t nvd7_grhub_code[] = {
0xa86ce7f1,
0xf441e3f0,
0x00f89d21,
/* 0x0804: ctx_mem */
/* 0x0824: ctx_mem */
0x840007f1,
0xd00203f0,
0x04bd000f,
/* 0x0810: ctx_mem_wait */
/* 0x0830: ctx_mem_wait */
0x8400f7f1,
0xcf02f3f0,
0xfffd00ff,
0xf31bf405,
/* 0x0822: ctx_load */
/* 0x0842: ctx_load */
0x94bd00f8,
0xf10599f0,
0xf00f0007,
......@@ -799,7 +807,7 @@ uint32_t nvd7_grhub_code[] = {
0x02d00203,
0xf004bd00,
0x21f507f7,
0x07f10804,
0x07f10824,
0x03f0c000,
0x0002d002,
0x0bfe04bd,
......@@ -854,122 +862,114 @@ uint32_t nvd7_grhub_code[] = {
0x03f01700,
0x0009d002,
0x00f804bd,
/* 0x0940: ctx_chan */
0x074721f5,
0x082221f5,
/* 0x0960: ctx_chan */
0x076721f5,
0x084221f5,
0xf40ca7f0,
0x17f1d021,
0x14b60a10,
0x05f7f006,
0x080421f5,
0x076c21f5,
/* 0x0962: ctx_mmio_exec */
0x039800f8,
0x0007f141,
0x0203f081,
0xbd0003d0,
/* 0x0973: ctx_mmio_loop */
0xc434bd04,
0x1bf4ff34,
0x0057f10f,
0x0653f002,
0xf80535fa,
/* 0x0985: ctx_mmio_pull */
0x804e9803,
0xf4814f98,
0x30b69d21,
0x0112b608,
/* 0x0997: ctx_mmio_done */
0x98df1bf4,
0x07f11603,
0xf7f0d021,
0x2421f505,
0x8c21f508,
/* 0x097b: ctx_mmio_exec */
0x9800f807,
0x07f14103,
0x03f08100,
0x0003d002,
0x008004bd,
0x0017f140,
0x0613f001,
0xf80601fa,
/* 0x09b7: ctx_xfer */
0xf000f803,
0x07f104e7,
0x03f00200,
0x000ed003,
/* 0x09c6: ctx_xfer_idle */
0xe7f104bd,
0xe3f00000,
0x00eecf03,
0x2000e4f1,
0xf4f21bf4,
0x02f40611,
/* 0x09dd: ctx_xfer_pre */
0x10f7f011,
0x07dc21f5,
0x074721f5,
/* 0x09eb: ctx_xfer_pre_load */
0xf01c11f4,
0x21f502f7,
0x21f5077d,
0x21f5078f,
0xf4bd07a4,
0x077d21f5,
0x082221f5,
/* 0x0a04: ctx_xfer_exec */
0xbd160198,
0x0007f124,
0x0103f005,
0xbd0002d0,
0x021fb904,
0xa500e7f1,
0xf441e3f0,
0xfcf09d21,
0x022cf001,
0xfd0124b6,
0xffb905f2,
0x04e7f102,
0x34bd04bd,
/* 0x098c: ctx_mmio_loop */
0xf4ff34c4,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x099e: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb69d21f4,
0x12b60830,
0xdf1bf401,
/* 0x09b0: ctx_mmio_done */
0xf1160398,
0xf0810007,
0x03d00203,
0x8004bd00,
0x17f14000,
0x13f00100,
0x0601fa06,
0x00f803f8,
/* 0x09d0: ctx_xfer */
0xf104e7f0,
0xf0020007,
0x0ed00303,
/* 0x09df: ctx_xfer_idle */
0xf104bd00,
0xf00000e7,
0xeecf03e3,
0x00e4f100,
0xf21bf420,
0xf40611f4,
/* 0x09f6: ctx_xfer_pre */
0xf7f01102,
0xfc21f510,
0x6721f507,
0x1c11f407,
/* 0x0a04: ctx_xfer_pre_load */
0xf502f7f0,
0xf5079d21,
0xf507af21,
0xbd07c421,
0x9d21f5f4,
0x4221f507,
/* 0x0a1d: ctx_xfer_exec */
0x16019808,
0x07f124bd,
0x03f00500,
0x0002d001,
0x1fb904bd,
0x00e7f102,
0x41e3f0a5,
0xf59d21f4,
0xbd026a21,
0xfc07f124,
0x0203f047,
0xbd0002d0,
0x012cf004,
0xf10320b6,
0xf04afc07,
0x02d00203,
0xf004bd00,
0xa5f001ac,
0x00b7f006,
0x98000c98,
0xe7f0010d,
0x6f21f500,
0x08a7f001,
0x011021f5,
0x025e21f5,
0xf01301f4,
0x21f40ca7,
0x05f7f0d0,
0x080421f5,
/* 0x0a93: ctx_xfer_post */
0xf03202f4,
0x21f502f7,
0xf4bd077d,
0x07dc21f5,
0x027f21f5,
0x078f21f5,
0x21f5f4bd,
0x11f4077d,
0x40019810,
0xf40511fd,
0x21f5070b,
/* 0x0abe: ctx_xfer_no_post_mmio */
0x21f50962,
/* 0x0ac2: ctx_xfer_done */
0x00f8076c,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0xf09d21f4,
0x2cf001fc,
0x0124b602,
0xb905f2fd,
0xe7f102ff,
0xe3f0a504,
0x9d21f441,
0x026a21f5,
0x07f124bd,
0x03f047fc,
0x0002d002,
0x2cf004bd,
0x0320b601,
0x4afc07f1,
0xd00203f0,
0x04bd0002,
0xf001acf0,
0xb7f006a5,
0x000c9800,
0xf0010d98,
0x21f500e7,
0xa7f0016f,
0x1021f508,
0x5e21f501,
0x1301f402,
0xf40ca7f0,
0xf7f0d021,
0x2421f505,
0x3202f408,
/* 0x0aac: ctx_xfer_post */
0xf502f7f0,
0xbd079d21,
0xfc21f5f4,
0x7f21f507,
0xaf21f502,
0xf5f4bd07,
0xf4079d21,
0x01981011,
0x0511fd40,
0xf5070bf4,
/* 0x0ad7: ctx_xfer_no_post_mmio */
0xf5097b21,
/* 0x0adb: ctx_xfer_done */
0xf8078c21,
0x00000000,
0x00000000,
0x00000000,
......
......@@ -478,7 +478,7 @@ uint32_t nve0_grhub_code[] = {
0xf0120007,
0x02d00003,
0xf104bd00,
0xfe06a817,
0xfe06c817,
0x24bd0010,
0x070007f1,
0xd00003f0,
......@@ -527,48 +527,56 @@ uint32_t nve0_grhub_code[] = {
0x03f00400,
0x0001d001,
0x17f104bd,
0x0e980100,
0x010f9800,
0x015021f5,
0xf1081495,
0xf0c00007,
0x04d00103,
0xf104bd00,
0xf0c10007,
0x04d00103,
0xb704bd00,
0xbb130030,
0xf5b6001f,
0x0007f102,
0x0103f0d3,
0xbd000fd0,
0x0815b604,
0xb60110b6,
0x1fb90814,
0xd321f502,
0x001fbb02,
0xf1020398,
0xf0200047,
/* 0x04e2: init_gpc */
0x4ea05043,
0x1fb90804,
0x9d21f402,
0x010c4ea0,
0x21f4f4bd,
0x044ea09d,
0x9d21f401,
0x01004ea0,
0xf402f7f0,
0xf7f00100,
0x6721f502,
0x7921f507,
0x10f7f007,
0x07c621f5,
0x98000e98,
0x21f5010f,
0x14950150,
0x0007f108,
0x0103f0c0,
0xbd0004d0,
0x0007f104,
0x0103f0c1,
0xbd0004d0,
0x0030b704,
0x001fbb13,
0xf102f5b6,
0xf0d30007,
0x0fd00103,
0xb604bd00,
0x10b60815,
0x0814b601,
0xf5021fb9,
0xbb02d321,
0x0398001f,
0x0047f102,
0x5043f020,
/* 0x04f4: init_gpc */
0x08044ea0,
0xf4021fb9,
0x4ea09d21,
0xf4bd010c,
0xa09d21f4,
0xf401044e,
0x4ea09d21,
/* 0x050a: init_gpc_wait */
0x21f40800,
0x1fffc868,
0xa0fa0bf4,
0xf408044e,
0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf7f00100,
0x9d21f402,
0x08004ea0,
/* 0x051c: init_gpc_wait */
0xc86821f4,
0x0bf41fff,
0x044ea0fa,
0x6821f408,
0xb7001fbb,
0xb6800040,
0x1bf40132,
0x00f7f0be,
0x07c621f5,
0xf500f7f0,
0xf1076721,
0xf0010007,
0x01d00203,
0xbd04bd00,
......@@ -576,7 +584,7 @@ uint32_t nve0_grhub_code[] = {
0x080007f1,
0xd00203f0,
0x04bd0001,
/* 0x0544: main */
/* 0x0564: main */
0xf40031f4,
0xd7f00028,
0x3921f410,
......@@ -602,7 +610,7 @@ uint32_t nve0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x31f40132,
0x7921f502,
0x9221f502,
0xf094bd09,
0x07f10799,
0x03f01700,
......@@ -613,27 +621,27 @@ uint32_t nve0_grhub_code[] = {
0x0203f00f,
0xbd0009d0,
0x0131f404,
0x097921f5,
0x099221f5,
0x99f094bd,
0x0007f106,
0x0203f017,
0xbd0009d0,
0x330ef404,
/* 0x05ec: chsw_prev_no_next */
/* 0x060c: chsw_prev_no_next */
0x12b920f9,
0x0132f402,
0xf50232f4,
0xfc097921,
0xfc099221,
0x0007f120,
0x0203f0c0,
0xbd0002d0,
0x130ef404,
/* 0x060c: chsw_no_prev */
/* 0x062c: chsw_no_prev */
0xf41f23c8,
0x31f40d0b,
0x0232f401,
0x097921f5,
/* 0x061c: chsw_done */
0x099221f5,
/* 0x063c: chsw_done */
0xf10127f0,
0xf0c30007,
0x02d00203,
......@@ -643,12 +651,12 @@ uint32_t nve0_grhub_code[] = {
0xd00203f0,
0x04bd0009,
0xff080ef5,
/* 0x0640: main_not_ctx_switch */
/* 0x0660: main_not_ctx_switch */
0xf401e4b0,
0xf2b90d1b,
0x0a21f502,
0x2a21f502,
0x460ef409,
/* 0x0650: main_not_ctx_chan */
/* 0x0670: main_not_ctx_chan */
0xf402e4b0,
0x94bd321b,
0xf10799f0,
......@@ -656,24 +664,24 @@ uint32_t nve0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x32f40132,
0x7921f502,
0x9221f502,
0xf094bd09,
0x07f10799,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x0685: main_not_ctx_save */
/* 0x06a5: main_not_ctx_save */
0x10ef9411,
0xf501f5f0,
0xf5037e21,
/* 0x0693: main_done */
/* 0x06b3: main_done */
0xbdfeb50e,
0x1f29f024,
0x080007f1,
0xd00203f0,
0x04bd0002,
0xfea00ef5,
/* 0x06a8: ih */
/* 0x06c8: ih */
0x88fe80f9,
0xf980f901,
0xf9a0f990,
......@@ -694,19 +702,19 @@ uint32_t nve0_grhub_code[] = {
0x07f101e7,
0x03f01d00,
0x000ed000,
/* 0x06fa: ih_no_fifo */
/* 0x071a: ih_no_fifo */
0xabe404bd,
0x0bf40100,
0x10d7f00d,
0x4001e7f1,
/* 0x070b: ih_no_ctxsw */
/* 0x072b: ih_no_ctxsw */
0xf10421f4,
0xbd0104b7,
0xb4abffb0,
0xf10f0bf4,
0xf0070007,
0x0bd00303,
/* 0x0723: ih_no_other */
/* 0x0743: ih_no_other */
0xf104bd00,
0xf0010007,
0x0ad00003,
......@@ -716,19 +724,19 @@ uint32_t nve0_grhub_code[] = {
0xfc90fca0,
0x0088fe80,
0x32f480fc,
/* 0x0747: ctx_4170s */
/* 0x0767: ctx_4170s */
0xf001f800,
0xffb910f5,
0x70e7f102,
0x40e3f041,
0xf89d21f4,
/* 0x0759: ctx_4170w */
/* 0x0779: ctx_4170w */
0x70e7f100,
0x40e3f041,
0xb96821f4,
0xf4f002ff,
0xf01bf410,
/* 0x076e: ctx_redswitch */
/* 0x078e: ctx_redswitch */
0xe7f100f8,
0xe5f00200,
0x20e5f040,
......@@ -736,7 +744,7 @@ uint32_t nve0_grhub_code[] = {
0xf0850007,
0x0ed00103,
0xf004bd00,
/* 0x078a: ctx_redswitch_delay */
/* 0x07aa: ctx_redswitch_delay */
0xf2b608f7,
0xfd1bf401,
0x0400e5f1,
......@@ -744,7 +752,7 @@ uint32_t nve0_grhub_code[] = {
0x850007f1,
0xd00103f0,
0x04bd000e,
/* 0x07a6: ctx_86c */
/* 0x07c6: ctx_86c */
0x07f100f8,
0x03f01b00,
0x000fd002,
......@@ -755,17 +763,17 @@ uint32_t nve0_grhub_code[] = {
0xe7f102ff,
0xe3f0a86c,
0x9d21f441,
/* 0x07ce: ctx_mem */
/* 0x07ee: ctx_mem */
0x07f100f8,
0x03f08400,
0x000fd002,
/* 0x07da: ctx_mem_wait */
/* 0x07fa: ctx_mem_wait */
0xf7f104bd,
0xf3f08400,
0x00ffcf02,
0xf405fffd,
0x00f8f31b,
/* 0x07ec: ctx_load */
/* 0x080c: ctx_load */
0x99f094bd,
0x0007f105,
0x0203f00f,
......@@ -782,7 +790,7 @@ uint32_t nve0_grhub_code[] = {
0x0203f083,
0xbd0002d0,
0x07f7f004,
0x07ce21f5,
0x07ee21f5,
0xc00007f1,
0xd00203f0,
0x04bd0002,
......@@ -837,119 +845,111 @@ uint32_t nve0_grhub_code[] = {
0x170007f1,
0xd00203f0,
0x04bd0009,
/* 0x090a: ctx_chan */
/* 0x092a: ctx_chan */
0x21f500f8,
0xa7f007ec,
0xa7f0080c,
0xd021f40c,
0x0a1017f1,
0xf00614b6,
0x21f505f7,
0x00f807ce,
/* 0x0924: ctx_mmio_exec */
0xf1410398,
0xf0810007,
0x03d00203,
0xbd04bd00,
/* 0x0935: ctx_mmio_loop */
0xff34c434,
0xf10f1bf4,
0xf0020057,
0x35fa0653,
/* 0x0947: ctx_mmio_pull */
0x9803f805,
0x4f98804e,
0x9d21f481,
0xb60830b6,
0x1bf40112,
/* 0x0959: ctx_mmio_done */
0x160398df,
0xf505f7f0,
0xf807ee21,
/* 0x093d: ctx_mmio_exec */
0x41039800,
0x810007f1,
0xd00203f0,
0x04bd0003,
0xf1400080,
0xf0010017,
0x01fa0613,
0xf803f806,
/* 0x0979: ctx_xfer */
0x04e7f000,
0x020007f1,
0xd00303f0,
0x04bd000e,
/* 0x0988: ctx_xfer_idle */
0x0000e7f1,
0xcf03e3f0,
0xe4f100ee,
0x1bf42000,
0x0611f4f2,
/* 0x099f: ctx_xfer_pre */
0xf00d02f4,
0x21f510f7,
0x11f407a6,
/* 0x09a9: ctx_xfer_pre_load */
0x02f7f01c,
0x074721f5,
0x075921f5,
0x076e21f5,
0x21f5f4bd,
0x21f50747,
/* 0x09c2: ctx_xfer_exec */
0x019807ec,
0xf124bd16,
0xf0050007,
0x02d00103,
0xb904bd00,
0xe7f1021f,
0xe3f0a500,
0x9d21f441,
0xf001fcf0,
0x24b6022c,
0x05f2fd01,
0xf102ffb9,
0xf0a504e7,
/* 0x094e: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x0960: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b69d,
0xf40112b6,
/* 0x0972: ctx_mmio_done */
0x0398df1b,
0x0007f116,
0x0203f081,
0xbd0003d0,
0x40008004,
0x010017f1,
0xfa0613f0,
0x03f80601,
/* 0x0992: ctx_xfer */
0xe7f000f8,
0x0007f104,
0x0303f002,
0xbd000ed0,
/* 0x09a1: ctx_xfer_idle */
0x00e7f104,
0x03e3f000,
0xf100eecf,
0xf42000e4,
0x11f4f21b,
0x0d02f406,
/* 0x09b8: ctx_xfer_pre */
0xf510f7f0,
0xf407c621,
/* 0x09c2: ctx_xfer_pre_load */
0xf7f01c11,
0x6721f502,
0x7921f507,
0x8e21f507,
0xf5f4bd07,
0xf5076721,
/* 0x09db: ctx_xfer_exec */
0x98080c21,
0x24bd1601,
0x050007f1,
0xd00103f0,
0x04bd0002,
0xf1021fb9,
0xf0a500e7,
0x21f441e3,
0x6a21f59d,
0xf124bd02,
0xf047fc07,
0x02d00203,
0xf004bd00,
0x20b6012c,
0xfc07f103,
0x0203f04a,
0xbd0002d0,
0x01acf004,
0xf006a5f0,
0x0c9800b7,
0x010d9800,
0xf500e7f0,
0xf0016f21,
0x21f508a7,
0x21f50110,
0x01f4025e,
0x0ca7f013,
0xf0d021f4,
0x21f505f7,
0x02f407ce,
/* 0x0a51: ctx_xfer_post */
0x02f7f02e,
0x074721f5,
0x21f5f4bd,
0x21f507a6,
0x21f5027f,
0xf4bd0759,
0x074721f5,
0x981011f4,
0x11fd4001,
0x070bf405,
0x092421f5,
/* 0x0a7c: ctx_xfer_no_post_mmio */
/* 0x0a7c: ctx_xfer_done */
0x000000f8,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x01fcf09d,
0xb6022cf0,
0xf2fd0124,
0x02ffb905,
0xa504e7f1,
0xf441e3f0,
0x21f59d21,
0x24bd026a,
0x47fc07f1,
0xd00203f0,
0x04bd0002,
0xb6012cf0,
0x07f10320,
0x03f04afc,
0x0002d002,
0xacf004bd,
0x06a5f001,
0x9800b7f0,
0x0d98000c,
0x00e7f001,
0x016f21f5,
0xf508a7f0,
0xf5011021,
0xf4025e21,
0xa7f01301,
0xd021f40c,
0xf505f7f0,
0xf407ee21,
/* 0x0a6a: ctx_xfer_post */
0xf7f02e02,
0x6721f502,
0xf5f4bd07,
0xf507c621,
0xf5027f21,
0xbd077921,
0x6721f5f4,
0x1011f407,
0xfd400198,
0x0bf40511,
0x3d21f507,
/* 0x0a95: ctx_xfer_no_post_mmio */
/* 0x0a95: ctx_xfer_done */
0x0000f809,
0x00000000,
0x00000000,
0x00000000,
......
......@@ -478,7 +478,7 @@ uint32_t nvf0_grhub_code[] = {
0xf0120007,
0x02d00003,
0xf104bd00,
0xfe06a817,
0xfe06c817,
0x24bd0010,
0x070007f1,
0xd00003f0,
......@@ -527,48 +527,56 @@ uint32_t nvf0_grhub_code[] = {
0x03f00400,
0x0001d001,
0x17f104bd,
0x0e980100,
0x010f9800,
0x015021f5,
0xf1081495,
0xf0c00007,
0x04d00103,
0xf104bd00,
0xf0c10007,
0x04d00103,
0xb704bd00,
0xbb130030,
0xf5b6001f,
0x0007f102,
0x0103f0d3,
0xbd000fd0,
0x0815b604,
0xb60110b6,
0x1fb90814,
0xd321f502,
0x001fbb02,
0xf1020398,
0xf0200047,
/* 0x04e2: init_gpc */
0x4ea05043,
0x1fb90804,
0x9d21f402,
0x010c4ea0,
0x21f4f4bd,
0x044ea09d,
0x9d21f401,
0x01004ea0,
0xf402f7f0,
0xf7f00100,
0x6721f502,
0x7921f507,
0x10f7f007,
0x07c621f5,
0x98000e98,
0x21f5010f,
0x14950150,
0x0007f108,
0x0103f0c0,
0xbd0004d0,
0x0007f104,
0x0103f0c1,
0xbd0004d0,
0x0030b704,
0x001fbb13,
0xf102f5b6,
0xf0d30007,
0x0fd00103,
0xb604bd00,
0x10b60815,
0x0814b601,
0xf5021fb9,
0xbb02d321,
0x0398001f,
0x0047f102,
0x5043f020,
/* 0x04f4: init_gpc */
0x08044ea0,
0xf4021fb9,
0x4ea09d21,
0xf4bd010c,
0xa09d21f4,
0xf401044e,
0x4ea09d21,
/* 0x050a: init_gpc_wait */
0x21f40800,
0x1fffc868,
0xa0fa0bf4,
0xf408044e,
0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf7f00100,
0x9d21f402,
0x08004ea0,
/* 0x051c: init_gpc_wait */
0xc86821f4,
0x0bf41fff,
0x044ea0fa,
0x6821f408,
0xb7001fbb,
0xb6800040,
0x1bf40132,
0x00f7f0be,
0x07c621f5,
0xf500f7f0,
0xf1076721,
0xf0010007,
0x01d00203,
0xbd04bd00,
......@@ -576,7 +584,7 @@ uint32_t nvf0_grhub_code[] = {
0x300007f1,
0xd00203f0,
0x04bd0001,
/* 0x0544: main */
/* 0x0564: main */
0xf40031f4,
0xd7f00028,
0x3921f410,
......@@ -602,7 +610,7 @@ uint32_t nvf0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x31f40132,
0x7921f502,
0x9221f502,
0xf094bd09,
0x07f10799,
0x03f01700,
......@@ -613,27 +621,27 @@ uint32_t nvf0_grhub_code[] = {
0x0203f037,
0xbd0009d0,
0x0131f404,
0x097921f5,
0x099221f5,
0x99f094bd,
0x0007f106,
0x0203f017,
0xbd0009d0,
0x330ef404,
/* 0x05ec: chsw_prev_no_next */
/* 0x060c: chsw_prev_no_next */
0x12b920f9,
0x0132f402,
0xf50232f4,
0xfc097921,
0xfc099221,
0x0007f120,
0x0203f0c0,
0xbd0002d0,
0x130ef404,
/* 0x060c: chsw_no_prev */
/* 0x062c: chsw_no_prev */
0xf41f23c8,
0x31f40d0b,
0x0232f401,
0x097921f5,
/* 0x061c: chsw_done */
0x099221f5,
/* 0x063c: chsw_done */
0xf10127f0,
0xf0c30007,
0x02d00203,
......@@ -643,12 +651,12 @@ uint32_t nvf0_grhub_code[] = {
0xd00203f0,
0x04bd0009,
0xff080ef5,
/* 0x0640: main_not_ctx_switch */
/* 0x0660: main_not_ctx_switch */
0xf401e4b0,
0xf2b90d1b,
0x0a21f502,
0x2a21f502,
0x460ef409,
/* 0x0650: main_not_ctx_chan */
/* 0x0670: main_not_ctx_chan */
0xf402e4b0,
0x94bd321b,
0xf10799f0,
......@@ -656,24 +664,24 @@ uint32_t nvf0_grhub_code[] = {
0x09d00203,
0xf404bd00,
0x32f40132,
0x7921f502,
0x9221f502,
0xf094bd09,
0x07f10799,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x0685: main_not_ctx_save */
/* 0x06a5: main_not_ctx_save */
0x10ef9411,
0xf501f5f0,
0xf5037e21,
/* 0x0693: main_done */
/* 0x06b3: main_done */
0xbdfeb50e,
0x1f29f024,
0x300007f1,
0xd00203f0,
0x04bd0002,
0xfea00ef5,
/* 0x06a8: ih */
/* 0x06c8: ih */
0x88fe80f9,
0xf980f901,
0xf9a0f990,
......@@ -694,19 +702,19 @@ uint32_t nvf0_grhub_code[] = {
0x07f101e7,
0x03f01d00,
0x000ed000,
/* 0x06fa: ih_no_fifo */
/* 0x071a: ih_no_fifo */
0xabe404bd,
0x0bf40100,
0x10d7f00d,
0x4001e7f1,
/* 0x070b: ih_no_ctxsw */
/* 0x072b: ih_no_ctxsw */
0xf10421f4,
0xbd0104b7,
0xb4abffb0,
0xf10f0bf4,
0xf0070007,
0x0bd00303,
/* 0x0723: ih_no_other */
/* 0x0743: ih_no_other */
0xf104bd00,
0xf0010007,
0x0ad00003,
......@@ -716,19 +724,19 @@ uint32_t nvf0_grhub_code[] = {
0xfc90fca0,
0x0088fe80,
0x32f480fc,
/* 0x0747: ctx_4170s */
/* 0x0767: ctx_4170s */
0xf001f800,
0xffb910f5,
0x70e7f102,
0x40e3f041,
0xf89d21f4,
/* 0x0759: ctx_4170w */
/* 0x0779: ctx_4170w */
0x70e7f100,
0x40e3f041,
0xb96821f4,
0xf4f002ff,
0xf01bf410,
/* 0x076e: ctx_redswitch */
/* 0x078e: ctx_redswitch */
0xe7f100f8,
0xe5f00200,
0x20e5f040,
......@@ -736,7 +744,7 @@ uint32_t nvf0_grhub_code[] = {
0xf0850007,
0x0ed00103,
0xf004bd00,
/* 0x078a: ctx_redswitch_delay */
/* 0x07aa: ctx_redswitch_delay */
0xf2b608f7,
0xfd1bf401,
0x0400e5f1,
......@@ -744,28 +752,28 @@ uint32_t nvf0_grhub_code[] = {
0x850007f1,
0xd00103f0,
0x04bd000e,
/* 0x07a6: ctx_86c */
/* 0x07c6: ctx_86c */
0x07f100f8,
0x03f01b00,
0x03f02300,
0x000fd002,
0xffb904bd,
0x14e7f102,
0x40e3f08a,
0xb99d21f4,
0xe7f102ff,
0xe3f0a86c,
0xe3f0a88c,
0x9d21f441,
/* 0x07ce: ctx_mem */
/* 0x07ee: ctx_mem */
0x07f100f8,
0x03f08400,
0x000fd002,
/* 0x07da: ctx_mem_wait */
/* 0x07fa: ctx_mem_wait */
0xf7f104bd,
0xf3f08400,
0x00ffcf02,
0xf405fffd,
0x00f8f31b,
/* 0x07ec: ctx_load */
/* 0x080c: ctx_load */
0x99f094bd,
0x0007f105,
0x0203f037,
......@@ -782,7 +790,7 @@ uint32_t nvf0_grhub_code[] = {
0x0203f083,
0xbd0002d0,
0x07f7f004,
0x07ce21f5,
0x07ee21f5,
0xc00007f1,
0xd00203f0,
0x04bd0002,
......@@ -837,119 +845,111 @@ uint32_t nvf0_grhub_code[] = {
0x170007f1,
0xd00203f0,
0x04bd0009,
/* 0x090a: ctx_chan */
/* 0x092a: ctx_chan */
0x21f500f8,
0xa7f007ec,
0xa7f0080c,
0xd021f40c,
0x0a1017f1,
0xf00614b6,
0x21f505f7,
0x00f807ce,
/* 0x0924: ctx_mmio_exec */
0xf1410398,
0xf0810007,
0x03d00203,
0xbd04bd00,
/* 0x0935: ctx_mmio_loop */
0xff34c434,
0xf10f1bf4,
0xf0020057,
0x35fa0653,
/* 0x0947: ctx_mmio_pull */
0x9803f805,
0x4f98804e,
0x9d21f481,
0xb60830b6,
0x1bf40112,
/* 0x0959: ctx_mmio_done */
0x160398df,
0xf505f7f0,
0xf807ee21,
/* 0x093d: ctx_mmio_exec */
0x41039800,
0x810007f1,
0xd00203f0,
0x04bd0003,
0xf1400080,
0xf0010017,
0x01fa0613,
0xf803f806,
/* 0x0979: ctx_xfer */
0x04e7f000,
0x020007f1,
0xd00303f0,
0x04bd000e,
/* 0x0988: ctx_xfer_idle */
0x0000e7f1,
0xcf03e3f0,
0xe4f100ee,
0x1bf42000,
0x0611f4f2,
/* 0x099f: ctx_xfer_pre */
0xf00d02f4,
0x21f510f7,
0x11f407a6,
/* 0x09a9: ctx_xfer_pre_load */
0x02f7f01c,
0x074721f5,
0x075921f5,
0x076e21f5,
0x21f5f4bd,
0x21f50747,
/* 0x09c2: ctx_xfer_exec */
0x019807ec,
0xf124bd16,
0xf0050007,
0x02d00103,
0xb904bd00,
0xe7f1021f,
0xe3f0a500,
0x9d21f441,
0xf001fcf0,
0x24b6022c,
0x05f2fd01,
0xf102ffb9,
0xf0a504e7,
/* 0x094e: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x0960: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b69d,
0xf40112b6,
/* 0x0972: ctx_mmio_done */
0x0398df1b,
0x0007f116,
0x0203f081,
0xbd0003d0,
0x40008004,
0x010017f1,
0xfa0613f0,
0x03f80601,
/* 0x0992: ctx_xfer */
0xe7f000f8,
0x0007f104,
0x0303f002,
0xbd000ed0,
/* 0x09a1: ctx_xfer_idle */
0x00e7f104,
0x03e3f000,
0xf100eecf,
0xf42000e4,
0x11f4f21b,
0x0d02f406,
/* 0x09b8: ctx_xfer_pre */
0xf510f7f0,
0xf407c621,
/* 0x09c2: ctx_xfer_pre_load */
0xf7f01c11,
0x6721f502,
0x7921f507,
0x8e21f507,
0xf5f4bd07,
0xf5076721,
/* 0x09db: ctx_xfer_exec */
0x98080c21,
0x24bd1601,
0x050007f1,
0xd00103f0,
0x04bd0002,
0xf1021fb9,
0xf0a500e7,
0x21f441e3,
0x6a21f59d,
0xf124bd02,
0xf047fc07,
0x02d00203,
0xf004bd00,
0x20b6012c,
0xfc07f103,
0x0203f04a,
0xbd0002d0,
0x01acf004,
0xf006a5f0,
0x0c9800b7,
0x010d9800,
0xf500e7f0,
0xf0016f21,
0x21f508a7,
0x21f50110,
0x01f4025e,
0x0ca7f013,
0xf0d021f4,
0x21f505f7,
0x02f407ce,
/* 0x0a51: ctx_xfer_post */
0x02f7f02e,
0x074721f5,
0x21f5f4bd,
0x21f507a6,
0x21f5027f,
0xf4bd0759,
0x074721f5,
0x981011f4,
0x11fd4001,
0x070bf405,
0x092421f5,
/* 0x0a7c: ctx_xfer_no_post_mmio */
/* 0x0a7c: ctx_xfer_done */
0x000000f8,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x01fcf09d,
0xb6022cf0,
0xf2fd0124,
0x02ffb905,
0xa504e7f1,
0xf441e3f0,
0x21f59d21,
0x24bd026a,
0x47fc07f1,
0xd00203f0,
0x04bd0002,
0xb6012cf0,
0x07f10320,
0x03f04afc,
0x0002d002,
0xacf004bd,
0x06a5f001,
0x9800b7f0,
0x0d98000c,
0x00e7f001,
0x016f21f5,
0xf508a7f0,
0xf5011021,
0xf4025e21,
0xa7f01301,
0xd021f40c,
0xf505f7f0,
0xf407ee21,
/* 0x0a6a: ctx_xfer_post */
0xf7f02e02,
0x6721f502,
0xf5f4bd07,
0xf507c621,
0xf5027f21,
0xbd077921,
0x6721f5f4,
0x1011f407,
0xfd400198,
0x0bf40511,
0x3d21f507,
/* 0x0a95: ctx_xfer_no_post_mmio */
/* 0x0a95: ctx_xfer_done */
0x0000f809,
0x00000000,
0x00000000,
0x00000000,
......
......@@ -80,9 +80,11 @@
#define NV_PGRAPH_FECS_CC_SCRATCH_VAL(n) ((n) * 4 + 0x409800)
#define NV_PGRAPH_FECS_CC_SCRATCH_SET(n) ((n) * 4 + 0x409820)
#define NV_PGRAPH_FECS_CC_SCRATCH_CLR(n) ((n) * 4 + 0x409840)
#define NV_PGRAPH_FECS_UNK86C 0x40986c
#else
#define NV_PGRAPH_FECS_CC_SCRATCH_VAL(n) ((n) * 4 + 0x409800)
#define NV_PGRAPH_FECS_CC_SCRATCH_CLR(n) ((n) * 4 + 0x409840)
#define NV_PGRAPH_FECS_UNK86C 0x40988c
#define NV_PGRAPH_FECS_CC_SCRATCH_SET(n) ((n) * 4 + 0x4098c0)
#endif
#define NV_PGRAPH_FECS_STRANDS_CNT 0x409880
......@@ -142,9 +144,11 @@
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_VAL(n) ((n) * 4 + 0x41a800)
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_SET(n) ((n) * 4 + 0x41a820)
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_CLR(n) ((n) * 4 + 0x41a840)
#define NV_PGRAPH_GPCX_GPCCS_UNK86C 0x41a86c
#else
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_VAL(n) ((n) * 4 + 0x41a800)
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_CLR(n) ((n) * 4 + 0x41a840)
#define NV_PGRAPH_GPCX_GPCCS_UNK86C 0x41a88c
#define NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_SET(n) ((n) * 4 + 0x41a8c0)
#endif
#define NV_PGRAPH_GPCX_GPCCS_STRAND_SELECT 0x41a91c
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment