drm/nvc0/gr: rebuild fuc with latest envyas

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Ben Skeggs 2012-09-06 13:09:22 +10:00
parent cd8c14b407
commit d66b9d9a68
4 changed files with 176 additions and 21 deletions

View File

@ -24,7 +24,7 @@
*/ */
/* To build: /* To build:
* m4 nvc0_grgpc.fuc | envyas -a -w -m fuc -V nva3 -o nvc0_grgpc.fuc.h * m4 gpcnvc0.fuc | envyas -a -w -m fuc -V fuc3 -o gpcnvc0.fuc.h
*/ */
/* TODO /* TODO
@ -33,7 +33,7 @@
*/ */
.section #nvc0_grgpc_data .section #nvc0_grgpc_data
include(`nvc0_graph.fuc') include(`nvc0.fuc')
gpc_id: .b32 0 gpc_id: .b32 0
gpc_mmio_list_head: .b32 0 gpc_mmio_list_head: .b32 0
gpc_mmio_list_tail: .b32 0 gpc_mmio_list_tail: .b32 0
@ -209,11 +209,11 @@ nvd9_tpc_mmio_tail:
.section #nvc0_grgpc_code .section #nvc0_grgpc_code
bra #init bra #init
define(`include_code') define(`include_code')
include(`nvc0_graph.fuc') include(`nvc0.fuc')
// reports an exception to the host // reports an exception to the host
// //
// In: $r15 error code (see nvc0_graph.fuc) // In: $r15 error code (see nvc0.fuc)
// //
error: error:
push $r14 push $r14

View File

@ -1,11 +1,19 @@
static uint32_t nvc0_grgpc_data[] = { uint32_t nvc0_grgpc_data[] = {
0x00000000, /* 0x0000: gpc_id */
0x00000000, 0x00000000,
0x00000000, /* 0x0004: gpc_mmio_list_head */
0x00000000, 0x00000000,
0x00000000, /* 0x0008: gpc_mmio_list_tail */
0x00000000, 0x00000000,
0x00000000, /* 0x000c: tpc_count */
0x00000000,
/* 0x0010: tpc_mask */
0x00000000,
/* 0x0014: tpc_mmio_list_head */
0x00000000,
/* 0x0018: tpc_mmio_list_tail */
0x00000000,
/* 0x001c: cmd_queue */
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
@ -24,6 +32,7 @@ static uint32_t nvc0_grgpc_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
/* 0x0064: chipsets */
0x000000c0, 0x000000c0,
0x012800c8, 0x012800c8,
0x01e40194, 0x01e40194,
@ -49,6 +58,7 @@ static uint32_t nvc0_grgpc_data[] = {
0x0194012c, 0x0194012c,
0x025401f8, 0x025401f8,
0x00000000, 0x00000000,
/* 0x00c8: nvc0_gpc_mmio_head */
0x00000380, 0x00000380,
0x14000400, 0x14000400,
0x20000450, 0x20000450,
@ -73,7 +83,10 @@ static uint32_t nvc0_grgpc_data[] = {
0x00000c8c, 0x00000c8c,
0x08001000, 0x08001000,
0x00001014, 0x00001014,
/* 0x0128: nvc0_gpc_mmio_tail */
0x00000c6c, 0x00000c6c,
/* 0x012c: nvc1_gpc_mmio_tail */
/* 0x012c: nvd9_gpc_mmio_head */
0x00000380, 0x00000380,
0x04000400, 0x04000400,
0x0800040c, 0x0800040c,
@ -100,6 +113,8 @@ static uint32_t nvc0_grgpc_data[] = {
0x00000c8c, 0x00000c8c,
0x08001000, 0x08001000,
0x00001014, 0x00001014,
/* 0x0194: nvd9_gpc_mmio_tail */
/* 0x0194: nvc0_tpc_mmio_head */
0x00000018, 0x00000018,
0x0000003c, 0x0000003c,
0x00000048, 0x00000048,
@ -120,11 +135,16 @@ static uint32_t nvc0_grgpc_data[] = {
0x4c000644, 0x4c000644,
0x00000698, 0x00000698,
0x04000750, 0x04000750,
/* 0x01e4: nvc0_tpc_mmio_tail */
0x00000758, 0x00000758,
0x000002c4, 0x000002c4,
0x000006e0, 0x000006e0,
/* 0x01f0: nvcf_tpc_mmio_tail */
0x000004bc, 0x000004bc,
/* 0x01f4: nvc3_tpc_mmio_tail */
0x00000544, 0x00000544,
/* 0x01f8: nvc1_tpc_mmio_tail */
/* 0x01f8: nvd9_tpc_mmio_head */
0x00000018, 0x00000018,
0x0000003c, 0x0000003c,
0x00000048, 0x00000048,
@ -150,14 +170,16 @@ static uint32_t nvc0_grgpc_data[] = {
0x08000750, 0x08000750,
}; };
static uint32_t nvc0_grgpc_code[] = { uint32_t nvc0_grgpc_code[] = {
0x03060ef5, 0x03060ef5,
/* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802ec,
/* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
0x0880b600, 0x0880b600,
@ -165,6 +187,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x90b6018f, 0x90b6018f,
0x0f94f001, 0x0f94f001,
0xf801d980, 0xf801d980,
/* 0x0039: queue_get */
0x0131f400, 0x0131f400,
0x9800d898, 0x9800d898,
0x89b801d9, 0x89b801d9,
@ -176,37 +199,46 @@ static uint32_t nvc0_grgpc_code[] = {
0x80b6019f, 0x80b6019f,
0x0f84f001, 0x0f84f001,
0xf400d880, 0xf400d880,
/* 0x0066: queue_get_done */
0x00f80132, 0x00f80132,
/* 0x0068: nv_rd32 */
0x0728b7f1, 0x0728b7f1,
0xb906b4b6, 0xb906b4b6,
0xc9f002ec, 0xc9f002ec,
0x00bcd01f, 0x00bcd01f,
/* 0x0078: nv_rd32_wait */
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010321f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
0x06b4b607, 0x06b4b607,
0xb980bfd0, 0xb980bfd0,
0xc9f002ec, 0xc9f002ec,
0x1ec9f01f, 0x1ec9f01f,
/* 0x00a3: nv_wr32_wait */
0xcf00bcd0, 0xcf00bcd0,
0xccc800bc, 0xccc800bc,
0xfa1bf41f, 0xfa1bf41f,
/* 0x00ae: watchdog_reset */
0x87f100f8, 0x87f100f8,
0x84b60430, 0x84b60430,
0x1ff9f006, 0x1ff9f006,
0xf8008fd0, 0xf8008fd0,
/* 0x00bd: watchdog_clear */
0x3087f100, 0x3087f100,
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */
0x3c87f100, 0x3c87f100,
0x0684b608, 0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d000, 0x0089d000,
0x081887f1, 0x081887f1,
0xd00684b6, 0xd00684b6,
/* 0x00e2: wait_done_wait_donez */
0x87f1008a, 0x87f1008a,
0x84b60400, 0x84b60400,
0x0088cf06, 0x0088cf06,
@ -215,6 +247,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x84b6085c, 0x84b6085c,
0xf094bd06, 0xf094bd06,
0x89d00099, 0x89d00099,
/* 0x0103: wait_doneo */
0xf100f800, 0xf100f800,
0xb6083c87, 0xb6083c87,
0x94bd0684, 0x94bd0684,
@ -222,6 +255,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x87f10089, 0x87f10089,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_done_wait_doneo */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
@ -230,6 +264,8 @@ static uint32_t nvc0_grgpc_code[] = {
0xbd0684b6, 0xbd0684b6,
0x0099f094, 0x0099f094,
0xf80089d0, 0xf80089d0,
/* 0x013d: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */
0x9894bd00, 0x9894bd00,
0x85b600e8, 0x85b600e8,
0x0180b61a, 0x0180b61a,
@ -238,6 +274,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x04efb804, 0x04efb804,
0xb9eb1bf4, 0xb9eb1bf4,
0x00f8029f, 0x00f8029f,
/* 0x015c: mmctx_xfer */
0x083c87f1, 0x083c87f1,
0xbd0684b6, 0xbd0684b6,
0x0199f094, 0x0199f094,
@ -247,9 +284,11 @@ static uint32_t nvc0_grgpc_code[] = {
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
@ -257,6 +296,8 @@ static uint32_t nvc0_grgpc_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
@ -265,34 +306,42 @@ static uint32_t nvc0_grgpc_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */
0x87f1fa1b, 0x87f1fa1b,
0x84b6085c, 0x84b6085c,
0xf094bd06, 0xf094bd06,
0x89d00199, 0x89d00199,
/* 0x0207: strand_wait */
0xf900f800, 0xf900f800,
0x02a7f0a0, 0x02a7f0a0,
0xfcc921f4, 0xfcc921f4,
/* 0x0213: strand_pre */
0xf100f8a0, 0xf100f8a0,
0xf04afc87, 0xf04afc87,
0x97f00283, 0x97f00283,
0x0089d00c, 0x0089d00c,
0x020721f5, 0x020721f5,
/* 0x0226: strand_post */
0x87f100f8, 0x87f100f8,
0x83f04afc, 0x83f04afc,
0x0d97f002, 0x0d97f002,
0xf50089d0, 0xf50089d0,
0xf8020721, 0xf8020721,
/* 0x0239: strand_set */
0xfca7f100, 0xfca7f100,
0x02a3f04f, 0x02a3f04f,
0x0500aba2, 0x0500aba2,
@ -303,6 +352,7 @@ static uint32_t nvc0_grgpc_code[] = {
0xf000aed0, 0xf000aed0,
0xbcd00ac7, 0xbcd00ac7,
0x0721f500, 0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802, 0xf100f802,
0xb6083c87, 0xb6083c87,
0x94bd0684, 0x94bd0684,
@ -325,6 +375,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
@ -338,12 +389,14 @@ static uint32_t nvc0_grgpc_code[] = {
0x94bd0684, 0x94bd0684,
0xd00399f0, 0xd00399f0,
0x00f80089, 0x00f80089,
/* 0x02ec: error */
0xe7f1e0f9, 0xe7f1e0f9,
0xe3f09814, 0xe3f09814,
0x8d21f440, 0x8d21f440,
0x041ce0b7, 0x041ce0b7,
0xf401f7f0, 0xf401f7f0,
0xe0fc8d21, 0xe0fc8d21,
/* 0x0306: init */
0x04bd00f8, 0x04bd00f8,
0xf10004fe, 0xf10004fe,
0xf0120017, 0xf0120017,
@ -366,11 +419,13 @@ static uint32_t nvc0_grgpc_code[] = {
0x27f10002, 0x27f10002,
0x24b60800, 0x24b60800,
0x0022cf06, 0x0022cf06,
/* 0x035f: init_find_chipset */
0xb65817f0, 0xb65817f0,
0x13980c10, 0x13980c10,
0x0432b800, 0x0432b800,
0xb00b0bf4, 0xb00b0bf4,
0x1bf40034, 0x1bf40034,
/* 0x0373: init_context */
0xf100f8f1, 0xf100f8f1,
0xb6080027, 0xb6080027,
0x22cf0624, 0x22cf0624,
@ -407,6 +462,7 @@ static uint32_t nvc0_grgpc_code[] = {
0x0010b740, 0x0010b740,
0xf024bd08, 0xf024bd08,
0x12d01f29, 0x12d01f29,
/* 0x0401: main */
0x0031f400, 0x0031f400,
0xf00028f4, 0xf00028f4,
0x21f41cd7, 0x21f41cd7,
@ -419,9 +475,11 @@ static uint32_t nvc0_grgpc_code[] = {
0xfe051efd, 0xfe051efd,
0x21f50018, 0x21f50018,
0x0ef404c3, 0x0ef404c3,
/* 0x0431: main_not_ctx_xfer */
0x10ef94d3, 0x10ef94d3,
0xf501f5f0, 0xf501f5f0,
0xf402ec21, 0xf402ec21,
/* 0x043e: ih */
0x80f9c60e, 0x80f9c60e,
0xf90188fe, 0xf90188fe,
0xf990f980, 0xf990f980,
@ -436,30 +494,36 @@ static uint32_t nvc0_grgpc_code[] = {
0xb0b70421, 0xb0b70421,
0xe7f00400, 0xe7f00400,
0x00bed001, 0x00bed001,
/* 0x0474: ih_no_fifo */
0xfc400ad0, 0xfc400ad0,
0xfce0fcf0, 0xfce0fcf0,
0xfcb0fcd0, 0xfcb0fcd0,
0xfc90fca0, 0xfc90fca0,
0x0088fe80, 0x0088fe80,
0x32f480fc, 0x32f480fc,
/* 0x048f: hub_barrier_done */
0xf001f800, 0xf001f800,
0x0e9801f7, 0x0e9801f7,
0x04febb00, 0x04febb00,
0x9418e7f1, 0x9418e7f1,
0xf440e3f0, 0xf440e3f0,
0x00f88d21, 0x00f88d21,
/* 0x04a4: ctx_redswitch */
0x0614e7f1, 0x0614e7f1,
0xf006e4b6, 0xf006e4b6,
0xefd020f7, 0xefd020f7,
0x08f7f000, 0x08f7f000,
/* 0x04b4: ctx_redswitch_delay */
0xf401f2b6, 0xf401f2b6,
0xf7f1fd1b, 0xf7f1fd1b,
0xefd00a20, 0xefd00a20,
/* 0x04c3: ctx_xfer */
0xf100f800, 0xf100f800,
0xb60a0417, 0xb60a0417,
0x1fd00614, 0x1fd00614,
0x0711f400, 0x0711f400,
0x04a421f5, 0x04a421f5,
/* 0x04d4: ctx_xfer_not_load */
0x4afc17f1, 0x4afc17f1,
0xf00213f0, 0xf00213f0,
0x12d00c27, 0x12d00c27,
@ -489,11 +553,13 @@ static uint32_t nvc0_grgpc_code[] = {
0x5c21f508, 0x5c21f508,
0x0721f501, 0x0721f501,
0x0601f402, 0x0601f402,
/* 0x054b: ctx_xfer_post */
0xf11412f4, 0xf11412f4,
0xf04afc17, 0xf04afc17,
0x27f00213, 0x27f00213,
0x0012d00d, 0x0012d00d,
0x020721f5, 0x020721f5,
/* 0x055c: ctx_xfer_done */
0x048f21f5, 0x048f21f5,
0x000000f8, 0x000000f8,
0x00000000, 0x00000000,

View File

@ -24,11 +24,11 @@
*/ */
/* To build: /* To build:
* m4 nvc0_grhub.fuc | envyas -a -w -m fuc -V nva3 -o nvc0_grhub.fuc.h * m4 hubnvc0.fuc | envyas -a -w -m fuc -V fuc3 -o hubnvc0.fuc.h
*/ */
.section #nvc0_grhub_data .section #nvc0_grhub_data
include(`nvc0_graph.fuc') include(`nvc0.fuc')
gpc_count: .b32 0 gpc_count: .b32 0
rop_count: .b32 0 rop_count: .b32 0
cmd_queue: queue_init cmd_queue: queue_init
@ -161,11 +161,11 @@ xfer_data: .b32 0
.section #nvc0_grhub_code .section #nvc0_grhub_code
bra #init bra #init
define(`include_code') define(`include_code')
include(`nvc0_graph.fuc') include(`nvc0.fuc')
// reports an exception to the host // reports an exception to the host
// //
// In: $r15 error code (see nvc0_graph.fuc) // In: $r15 error code (see nvc0.fuc)
// //
error: error:
push $r14 push $r14

View File

@ -1,6 +1,9 @@
static uint32_t nvc0_grhub_data[] = { uint32_t nvc0_grhub_data[] = {
0x00000000, /* 0x0000: gpc_count */
0x00000000, 0x00000000,
/* 0x0004: rop_count */
0x00000000,
/* 0x0008: cmd_queue */
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
@ -19,9 +22,13 @@ static uint32_t nvc0_grhub_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
/* 0x0050: hub_mmio_list_head */
0x00000000, 0x00000000,
/* 0x0054: hub_mmio_list_tail */
0x00000000, 0x00000000,
/* 0x0058: ctx_current */
0x00000000, 0x00000000,
/* 0x005c: chipsets */
0x000000c0, 0x000000c0,
0x013c00a0, 0x013c00a0,
0x000000c1, 0x000000c1,
@ -39,6 +46,7 @@ static uint32_t nvc0_grhub_data[] = {
0x000000d9, 0x000000d9,
0x01dc0140, 0x01dc0140,
0x00000000, 0x00000000,
/* 0x00a0: nvc0_hub_mmio_head */
0x0417e91c, 0x0417e91c,
0x04400204, 0x04400204,
0x28404004, 0x28404004,
@ -78,7 +86,10 @@ static uint32_t nvc0_grhub_data[] = {
0x08408800, 0x08408800,
0x0c408900, 0x0c408900,
0x00408980, 0x00408980,
/* 0x013c: nvc0_hub_mmio_tail */
0x044064c0, 0x044064c0,
/* 0x0140: nvc1_hub_mmio_tail */
/* 0x0140: nvd9_hub_mmio_head */
0x0417e91c, 0x0417e91c,
0x04400204, 0x04400204,
0x24404004, 0x24404004,
@ -118,6 +129,7 @@ static uint32_t nvc0_grhub_data[] = {
0x08408800, 0x08408800,
0x0c408900, 0x0c408900,
0x00408980, 0x00408980,
/* 0x01dc: nvd9_hub_mmio_tail */
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
@ -127,7 +139,10 @@ static uint32_t nvc0_grhub_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
/* 0x0200: chan_data */
/* 0x0200: chan_mmio_count */
0x00000000, 0x00000000,
/* 0x0204: chan_mmio_address */
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
@ -191,17 +206,20 @@ static uint32_t nvc0_grhub_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
/* 0x0300: xfer_data */
0x00000000, 0x00000000,
}; };
static uint32_t nvc0_grhub_code[] = { uint32_t nvc0_grhub_code[] = {
0x03090ef5, 0x03090ef5,
/* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802ec,
/* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
0x0880b600, 0x0880b600,
@ -209,6 +227,7 @@ static uint32_t nvc0_grhub_code[] = {
0x90b6018f, 0x90b6018f,
0x0f94f001, 0x0f94f001,
0xf801d980, 0xf801d980,
/* 0x0039: queue_get */
0x0131f400, 0x0131f400,
0x9800d898, 0x9800d898,
0x89b801d9, 0x89b801d9,
@ -220,37 +239,46 @@ static uint32_t nvc0_grhub_code[] = {
0x80b6019f, 0x80b6019f,
0x0f84f001, 0x0f84f001,
0xf400d880, 0xf400d880,
/* 0x0066: queue_get_done */
0x00f80132, 0x00f80132,
/* 0x0068: nv_rd32 */
0x0728b7f1, 0x0728b7f1,
0xb906b4b6, 0xb906b4b6,
0xc9f002ec, 0xc9f002ec,
0x00bcd01f, 0x00bcd01f,
/* 0x0078: nv_rd32_wait */
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010321f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
0x06b4b607, 0x06b4b607,
0xb980bfd0, 0xb980bfd0,
0xc9f002ec, 0xc9f002ec,
0x1ec9f01f, 0x1ec9f01f,
/* 0x00a3: nv_wr32_wait */
0xcf00bcd0, 0xcf00bcd0,
0xccc800bc, 0xccc800bc,
0xfa1bf41f, 0xfa1bf41f,
/* 0x00ae: watchdog_reset */
0x87f100f8, 0x87f100f8,
0x84b60430, 0x84b60430,
0x1ff9f006, 0x1ff9f006,
0xf8008fd0, 0xf8008fd0,
/* 0x00bd: watchdog_clear */
0x3087f100, 0x3087f100,
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */
0x3c87f100, 0x3c87f100,
0x0684b608, 0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d000, 0x0089d000,
0x081887f1, 0x081887f1,
0xd00684b6, 0xd00684b6,
/* 0x00e2: wait_done_wait_donez */
0x87f1008a, 0x87f1008a,
0x84b60400, 0x84b60400,
0x0088cf06, 0x0088cf06,
@ -259,6 +287,7 @@ static uint32_t nvc0_grhub_code[] = {
0x84b6085c, 0x84b6085c,
0xf094bd06, 0xf094bd06,
0x89d00099, 0x89d00099,
/* 0x0103: wait_doneo */
0xf100f800, 0xf100f800,
0xb6083c87, 0xb6083c87,
0x94bd0684, 0x94bd0684,
@ -266,6 +295,7 @@ static uint32_t nvc0_grhub_code[] = {
0x87f10089, 0x87f10089,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_done_wait_doneo */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
@ -274,6 +304,8 @@ static uint32_t nvc0_grhub_code[] = {
0xbd0684b6, 0xbd0684b6,
0x0099f094, 0x0099f094,
0xf80089d0, 0xf80089d0,
/* 0x013d: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */
0x9894bd00, 0x9894bd00,
0x85b600e8, 0x85b600e8,
0x0180b61a, 0x0180b61a,
@ -282,6 +314,7 @@ static uint32_t nvc0_grhub_code[] = {
0x04efb804, 0x04efb804,
0xb9eb1bf4, 0xb9eb1bf4,
0x00f8029f, 0x00f8029f,
/* 0x015c: mmctx_xfer */
0x083c87f1, 0x083c87f1,
0xbd0684b6, 0xbd0684b6,
0x0199f094, 0x0199f094,
@ -291,9 +324,11 @@ static uint32_t nvc0_grhub_code[] = {
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
@ -301,6 +336,8 @@ static uint32_t nvc0_grhub_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
@ -309,34 +346,42 @@ static uint32_t nvc0_grhub_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */
0x87f1fa1b, 0x87f1fa1b,
0x84b6085c, 0x84b6085c,
0xf094bd06, 0xf094bd06,
0x89d00199, 0x89d00199,
/* 0x0207: strand_wait */
0xf900f800, 0xf900f800,
0x02a7f0a0, 0x02a7f0a0,
0xfcc921f4, 0xfcc921f4,
/* 0x0213: strand_pre */
0xf100f8a0, 0xf100f8a0,
0xf04afc87, 0xf04afc87,
0x97f00283, 0x97f00283,
0x0089d00c, 0x0089d00c,
0x020721f5, 0x020721f5,
/* 0x0226: strand_post */
0x87f100f8, 0x87f100f8,
0x83f04afc, 0x83f04afc,
0x0d97f002, 0x0d97f002,
0xf50089d0, 0xf50089d0,
0xf8020721, 0xf8020721,
/* 0x0239: strand_set */
0xfca7f100, 0xfca7f100,
0x02a3f04f, 0x02a3f04f,
0x0500aba2, 0x0500aba2,
@ -347,6 +392,7 @@ static uint32_t nvc0_grhub_code[] = {
0xf000aed0, 0xf000aed0,
0xbcd00ac7, 0xbcd00ac7,
0x0721f500, 0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802, 0xf100f802,
0xb6083c87, 0xb6083c87,
0x94bd0684, 0x94bd0684,
@ -369,6 +415,7 @@ static uint32_t nvc0_grhub_code[] = {
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
@ -382,6 +429,7 @@ static uint32_t nvc0_grhub_code[] = {
0x94bd0684, 0x94bd0684,
0xd00399f0, 0xd00399f0,
0x00f80089, 0x00f80089,
/* 0x02ec: error */
0xe7f1e0f9, 0xe7f1e0f9,
0xe4b60814, 0xe4b60814,
0x00efd006, 0x00efd006,
@ -389,6 +437,7 @@ static uint32_t nvc0_grhub_code[] = {
0xf006e4b6, 0xf006e4b6,
0xefd001f7, 0xefd001f7,
0xf8e0fc00, 0xf8e0fc00,
/* 0x0309: init */
0xfe04bd00, 0xfe04bd00,
0x07fe0004, 0x07fe0004,
0x0017f100, 0x0017f100,
@ -429,11 +478,13 @@ static uint32_t nvc0_grhub_code[] = {
0x080027f1, 0x080027f1,
0xcf0624b6, 0xcf0624b6,
0xf7f00022, 0xf7f00022,
/* 0x03a9: init_find_chipset */
0x08f0b654, 0x08f0b654,
0xb800f398, 0xb800f398,
0x0bf40432, 0x0bf40432,
0x0034b00b, 0x0034b00b,
0xf8f11bf4, 0xf8f11bf4,
/* 0x03bd: init_context */
0x0017f100, 0x0017f100,
0x02fe5801, 0x02fe5801,
0xf003ff58, 0xf003ff58,
@ -454,6 +505,7 @@ static uint32_t nvc0_grhub_code[] = {
0x001fbb02, 0x001fbb02,
0xf1000398, 0xf1000398,
0xf0200047, 0xf0200047,
/* 0x040e: init_gpc */
0x4ea05043, 0x4ea05043,
0x1fb90804, 0x1fb90804,
0x8d21f402, 0x8d21f402,
@ -467,6 +519,7 @@ static uint32_t nvc0_grhub_code[] = {
0xf7f00100, 0xf7f00100,
0x8d21f402, 0x8d21f402,
0x08004ea0, 0x08004ea0,
/* 0x0440: init_gpc_wait */
0xc86821f4, 0xc86821f4,
0x0bf41fff, 0x0bf41fff,
0x044ea0fa, 0x044ea0fa,
@ -479,6 +532,7 @@ static uint32_t nvc0_grhub_code[] = {
0xb74021d0, 0xb74021d0,
0xbd080020, 0xbd080020,
0x1f19f014, 0x1f19f014,
/* 0x0473: main */
0xf40021d0, 0xf40021d0,
0x28f40031, 0x28f40031,
0x08d7f000, 0x08d7f000,
@ -517,6 +571,7 @@ static uint32_t nvc0_grhub_code[] = {
0x94bd0684, 0x94bd0684,
0xd00699f0, 0xd00699f0,
0x0ef40089, 0x0ef40089,
/* 0x0509: chsw_prev_no_next */
0xb920f931, 0xb920f931,
0x32f40212, 0x32f40212,
0x0232f401, 0x0232f401,
@ -524,10 +579,12 @@ static uint32_t nvc0_grhub_code[] = {
0x17f120fc, 0x17f120fc,
0x14b60b00, 0x14b60b00,
0x0012d006, 0x0012d006,
/* 0x0527: chsw_no_prev */
0xc8130ef4, 0xc8130ef4,
0x0bf41f23, 0x0bf41f23,
0x0131f40d, 0x0131f40d,
0xf50232f4, 0xf50232f4,
/* 0x0537: chsw_done */
0xf1082921, 0xf1082921,
0xb60b0c17, 0xb60b0c17,
0x27f00614, 0x27f00614,
@ -536,10 +593,12 @@ static uint32_t nvc0_grhub_code[] = {
0xbd0684b6, 0xbd0684b6,
0x0499f094, 0x0499f094,
0xf50089d0, 0xf50089d0,
/* 0x0557: main_not_ctx_switch */
0xb0ff200e, 0xb0ff200e,
0x1bf401e4, 0x1bf401e4,
0x02f2b90d, 0x02f2b90d,
0x07b521f5, 0x07b521f5,
/* 0x0567: main_not_ctx_chan */
0xb0420ef4, 0xb0420ef4,
0x1bf402e4, 0x1bf402e4,
0x3c87f12e, 0x3c87f12e,
@ -553,14 +612,17 @@ static uint32_t nvc0_grhub_code[] = {
0xf094bd06, 0xf094bd06,
0x89d00799, 0x89d00799,
0x110ef400, 0x110ef400,
/* 0x0598: main_not_ctx_save */
0xf010ef94, 0xf010ef94,
0x21f501f5, 0x21f501f5,
0x0ef502ec, 0x0ef502ec,
/* 0x05a6: main_done */
0x17f1fed1, 0x17f1fed1,
0x14b60820, 0x14b60820,
0xf024bd06, 0xf024bd06,
0x12d01f29, 0x12d01f29,
0xbe0ef500, 0xbe0ef500,
/* 0x05b9: ih */
0xfe80f9fe, 0xfe80f9fe,
0x80f90188, 0x80f90188,
0xa0f990f9, 0xa0f990f9,
@ -574,16 +636,19 @@ static uint32_t nvc0_grhub_code[] = {
0x21f400bf, 0x21f400bf,
0x00b0b704, 0x00b0b704,
0x01e7f004, 0x01e7f004,
/* 0x05ef: ih_no_fifo */
0xe400bed0, 0xe400bed0,
0xf40100ab, 0xf40100ab,
0xd7f00d0b, 0xd7f00d0b,
0x01e7f108, 0x01e7f108,
0x0421f440, 0x0421f440,
/* 0x0600: ih_no_ctxsw */
0x0104b7f1, 0x0104b7f1,
0xabffb0bd, 0xabffb0bd,
0x0d0bf4b4, 0x0d0bf4b4,
0x0c1ca7f1, 0x0c1ca7f1,
0xd006a4b6, 0xd006a4b6,
/* 0x0616: ih_no_other */
0x0ad000ab, 0x0ad000ab,
0xfcf0fc40, 0xfcf0fc40,
0xfcd0fce0, 0xfcd0fce0,
@ -591,32 +656,40 @@ static uint32_t nvc0_grhub_code[] = {
0xfe80fc90, 0xfe80fc90,
0x80fc0088, 0x80fc0088,
0xf80032f4, 0xf80032f4,
/* 0x0631: ctx_4160s */
0x60e7f101, 0x60e7f101,
0x40e3f041, 0x40e3f041,
0xf401f7f0, 0xf401f7f0,
/* 0x063e: ctx_4160s_wait */
0x21f48d21, 0x21f48d21,
0x04ffc868, 0x04ffc868,
0xf8fa0bf4, 0xf8fa0bf4,
/* 0x0649: ctx_4160c */
0x60e7f100, 0x60e7f100,
0x40e3f041, 0x40e3f041,
0x21f4f4bd, 0x21f4f4bd,
/* 0x0657: ctx_4170s */
0xf100f88d, 0xf100f88d,
0xf04170e7, 0xf04170e7,
0xf5f040e3, 0xf5f040e3,
0x8d21f410, 0x8d21f410,
/* 0x0666: ctx_4170w */
0xe7f100f8, 0xe7f100f8,
0xe3f04170, 0xe3f04170,
0x6821f440, 0x6821f440,
0xf410f4f0, 0xf410f4f0,
0x00f8f31b, 0x00f8f31b,
/* 0x0678: ctx_redswitch */
0x0614e7f1, 0x0614e7f1,
0xf106e4b6, 0xf106e4b6,
0xd00270f7, 0xd00270f7,
0xf7f000ef, 0xf7f000ef,
/* 0x0689: ctx_redswitch_delay */
0x01f2b608, 0x01f2b608,
0xf1fd1bf4, 0xf1fd1bf4,
0xd00770f7, 0xd00770f7,
0x00f800ef, 0x00f800ef,
/* 0x0698: ctx_86c */
0x086ce7f1, 0x086ce7f1,
0xd006e4b6, 0xd006e4b6,
0xe7f100ef, 0xe7f100ef,
@ -625,6 +698,7 @@ static uint32_t nvc0_grhub_code[] = {
0xa86ce7f1, 0xa86ce7f1,
0xf441e3f0, 0xf441e3f0,
0x00f88d21, 0x00f88d21,
/* 0x06b8: ctx_load */
0x083c87f1, 0x083c87f1,
0xbd0684b6, 0xbd0684b6,
0x0599f094, 0x0599f094,
@ -639,6 +713,7 @@ static uint32_t nvc0_grhub_code[] = {
0x0614b60a, 0x0614b60a,
0xd00747f0, 0xd00747f0,
0x14d00012, 0x14d00012,
/* 0x06f1: ctx_chan_wait_0 */
0x4014cf40, 0x4014cf40,
0xf41f44f0, 0xf41f44f0,
0x32d0fa1b, 0x32d0fa1b,
@ -688,6 +763,7 @@ static uint32_t nvc0_grhub_code[] = {
0xbd0684b6, 0xbd0684b6,
0x0599f094, 0x0599f094,
0xf80089d0, 0xf80089d0,
/* 0x07b5: ctx_chan */
0x3121f500, 0x3121f500,
0xb821f506, 0xb821f506,
0x0ca7f006, 0x0ca7f006,
@ -695,39 +771,48 @@ static uint32_t nvc0_grhub_code[] = {
0xb60a1017, 0xb60a1017,
0x27f00614, 0x27f00614,
0x0012d005, 0x0012d005,
/* 0x07d0: ctx_chan_wait */
0xfd0012cf, 0xfd0012cf,
0x1bf40522, 0x1bf40522,
0x4921f5fa, 0x4921f5fa,
/* 0x07df: ctx_mmio_exec */
0x9800f806, 0x9800f806,
0x27f18103, 0x27f18103,
0x24b60a04, 0x24b60a04,
0x0023d006, 0x0023d006,
/* 0x07ee: ctx_mmio_loop */
0x34c434bd, 0x34c434bd,
0x0f1bf4ff, 0x0f1bf4ff,
0x030057f1, 0x030057f1,
0xfa0653f0, 0xfa0653f0,
0x03f80535, 0x03f80535,
/* 0x0800: ctx_mmio_pull */
0x98c04e98, 0x98c04e98,
0x21f4c14f, 0x21f4c14f,
0x0830b68d, 0x0830b68d,
0xf40112b6, 0xf40112b6,
/* 0x0812: ctx_mmio_done */
0x0398df1b, 0x0398df1b,
0x0023d016, 0x0023d016,
0xf1800080, 0xf1800080,
0xf0020017, 0xf0020017,
0x01fa0613, 0x01fa0613,
0xf803f806, 0xf803f806,
/* 0x0829: ctx_xfer */
0x0611f400, 0x0611f400,
/* 0x082f: ctx_xfer_pre */
0xf01102f4, 0xf01102f4,
0x21f510f7, 0x21f510f7,
0x21f50698, 0x21f50698,
0x11f40631, 0x11f40631,
/* 0x083d: ctx_xfer_pre_load */
0x02f7f01c, 0x02f7f01c,
0x065721f5, 0x065721f5,
0x066621f5, 0x066621f5,
0x067821f5, 0x067821f5,
0x21f5f4bd, 0x21f5f4bd,
0x21f50657, 0x21f50657,
/* 0x0856: ctx_xfer_exec */
0x019806b8, 0x019806b8,
0x1427f116, 0x1427f116,
0x0624b604, 0x0624b604,
@ -762,9 +847,11 @@ static uint32_t nvc0_grhub_code[] = {
0x0a1017f1, 0x0a1017f1,
0xf00614b6, 0xf00614b6,
0x12d00527, 0x12d00527,
/* 0x08dd: ctx_xfer_post_save_wait */
0x0012cf00, 0x0012cf00,
0xf40522fd, 0xf40522fd,
0x02f4fa1b, 0x02f4fa1b,
/* 0x08e9: ctx_xfer_post */
0x02f7f032, 0x02f7f032,
0x065721f5, 0x065721f5,
0x21f5f4bd, 0x21f5f4bd,
@ -776,7 +863,9 @@ static uint32_t nvc0_grhub_code[] = {
0x11fd8001, 0x11fd8001,
0x070bf405, 0x070bf405,
0x07df21f5, 0x07df21f5,
/* 0x0914: ctx_xfer_no_post_mmio */
0x064921f5, 0x064921f5,
/* 0x0918: ctx_xfer_done */
0x000000f8, 0x000000f8,
0x00000000, 0x00000000,
0x00000000, 0x00000000,