Commit 60a4acd7 authored by Ben Skeggs's avatar Ben Skeggs

drm/nvf0-/gr: ctxsw scratch reg count got bumped to 16

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent f8adeb82
...@@ -149,13 +149,9 @@ watchdog_clear: ...@@ -149,13 +149,9 @@ watchdog_clear:
// //
wait_donez: wait_donez:
trace_set(T_WAIT); trace_set(T_WAIT);
mov $r8 0x818 nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_VAL(6), 0, $r10)
shl b32 $r8 6
iowr I[$r8 + 0x000] $r10
wait_donez_ne: wait_donez_ne:
mov $r8 0x400 nv_iord($r8, NV_PGRAPH_FECS_SIGNAL, 0)
shl b32 $r8 6
iord $r8 I[$r8 + 0x000]
xbit $r8 $r8 $r10 xbit $r8 $r8 $r10
bra ne #wait_donez_ne bra ne #wait_donez_ne
trace_clr(T_WAIT) trace_clr(T_WAIT)
......
...@@ -141,9 +141,7 @@ init: ...@@ -141,9 +141,7 @@ init:
#endif #endif
// initialise context base, and size tracking // initialise context base, and size tracking
mov $r2 0x800 nv_iord($r2, NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_VAL(1), 0)
shl b32 $r2 6
iord $r2 I[$r2 + 0x100] // CC_SCRATCH[1], initial base
clear b32 $r3 // track GPC context size here clear b32 $r3 // track GPC context size here
// set mmctx base addresses now so we don't have to do it later, // set mmctx base addresses now so we don't have to do it later,
...@@ -198,13 +196,10 @@ init: ...@@ -198,13 +196,10 @@ init:
add b32 $r3 $r15 add b32 $r3 $r15
// save context size, and tell HUB we're done // save context size, and tell HUB we're done
mov $r1 0x800 nv_iowr(NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_VAL(1), 0, $r3)
shl b32 $r1 6
iowr I[$r1 + 0x100] $r3 // CC_SCRATCH[1] = context size
add b32 $r1 0x800
clear b32 $r2 clear b32 $r2
bset $r2 31 bset $r2 31
iowr I[$r1 + 0x000] $r2 // CC_SCRATCH[0] |= 0x80000000 nv_iowr(NV_PGRAPH_GPCX_GPCCS_CC_SCRATCH_SET(0), 0, $r2)
// Main program loop, very simple, sleeps until woken up by the interrupt // Main program loop, very simple, sleeps until woken up by the interrupt
// handler, pulls a command from the queue and executes its handler // handler, pulls a command from the queue and executes its handler
...@@ -249,6 +244,7 @@ ih: ...@@ -249,6 +244,7 @@ ih:
push $r13 push $r13
push $r14 push $r14
push $r15 push $r15
clear b32 $r0
// incoming fifo command? // incoming fifo command?
iord $r10 I[$r0 + 0x200] // INTR iord $r10 I[$r0 + 0x200] // INTR
......
...@@ -37,14 +37,14 @@ uint32_t nvc0_grgpc_data[] = { ...@@ -37,14 +37,14 @@ uint32_t nvc0_grgpc_data[] = {
}; };
uint32_t nvc0_grgpc_code[] = { uint32_t nvc0_grgpc_code[] = {
0x03060ef5, 0x03180ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -76,7 +76,7 @@ uint32_t nvc0_grgpc_code[] = { ...@@ -76,7 +76,7 @@ uint32_t nvc0_grgpc_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -98,63 +98,66 @@ uint32_t nvc0_grgpc_code[] = { ...@@ -98,63 +98,66 @@ uint32_t nvc0_grgpc_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -162,8 +165,8 @@ uint32_t nvc0_grgpc_code[] = { ...@@ -162,8 +165,8 @@ uint32_t nvc0_grgpc_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -172,76 +175,77 @@ uint32_t nvc0_grgpc_code[] = { ...@@ -172,76 +175,77 @@ uint32_t nvc0_grgpc_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -250,175 +254,171 @@ uint32_t nvc0_grgpc_code[] = { ...@@ -250,175 +254,171 @@ uint32_t nvc0_grgpc_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0xe0f900f8,
0xe3f09814, 0x9814e7f1,
0x8d21f440, 0xf440e3f0,
0x041ce0b7, 0xe0b78d21,
0xf401f7f0, 0xf7f0041c,
0xe0fc8d21, 0x8d21f401,
/* 0x0306: init */ 0x00f8e0fc,
0x04bd00f8, /* 0x0318: init */
0xf10004fe, 0x04fe04bd,
0xf0120017, 0x0017f100,
0x12d00227, 0x0227f012,
0x0d17f100, 0xf10012d0,
0x0010fe04, 0xfe042617,
0x040017f1, 0x17f10010,
0xf0c010d0, 0x10d00400,
0x12d00427, 0x0427f0c0,
0x1031f400, 0xf40012d0,
0x060817f1, 0x17f11031,
0xcf0614b6, 0x14b60608,
0x37f00012, 0x0012cf06,
0x1f24f001, 0xf00137f0,
0xb60432bb, 0x32bb1f24,
0x02800132, 0x0132b604,
0x06038005, 0x80050280,
0x040010b7, 0x10b70603,
0x800012cf, 0x12cf0400,
0x27f10402, 0x04028000,
0x24b60800, 0x010027f1,
0x4022cf06, 0xcf0223f0,
0x47f134bd, 0x34bd0022,
0x44b60700, 0x070047f1,
0x08259506, 0x950644b6,
0xd00045d0, 0x45d00825,
0x0e984045, 0x4045d000,
0x010f9800, 0x98000e98,
0x013d21f5, 0x21f5010f,
0xbb002fbb, 0x2fbb0147,
0x0e98003f, 0x003fbb00,
0x020f9801, 0x98010e98,
0x013d21f5, 0x21f5020f,
0xfd050e98, 0x0e980147,
0x2ebb00ef, 0x00effd05,
0x003ebb00, 0xbb002ebb,
0x130040b7, 0x40b7003e,
0xd00235b6, 0x35b61300,
0x25b60043, 0x0043d002,
0x0635b608, 0xb60825b6,
0xb60120b6, 0x20b60635,
0x24b60130, 0x0130b601,
0x0834b608, 0xb60824b6,
0xf5022fb9, 0x2fb90834,
0xbb026321, 0x7121f502,
0x17f1003f, 0x003fbb02,
0x14b60800, 0x010007f1,
0x4013d006, 0xd00203f0,
0x080010b7, 0x04bd0003,
0x29f024bd, 0x29f024bd,
0x0012d01f, 0x0007f11f,
/* 0x03d0: main */ 0x0203f008,
0xf40031f4, 0xbd0002d0,
0xd7f00028, /* 0x03e9: main */
0x3921f41c, 0x0031f404,
0xb0f401f4, 0xf00028f4,
0x18f404e4, 0x21f41cd7,
0x0181fe1e, 0xf401f439,
0xbd0627f0, 0xf404e4b0,
0x0412fd20, 0x81fe1e18,
0xfd01e4b6, 0x0627f001,
0x18fe051e, 0x12fd20bd,
0x9221f500, 0x01e4b604,
0xd30ef404, 0xfe051efd,
/* 0x0400: main_not_ctx_xfer */ 0x21f50018,
0xf010ef94, 0x0ef404ad,
0x21f501f5, /* 0x0419: main_not_ctx_xfer */
0x0ef402ec, 0x10ef94d3,
/* 0x040d: ih */ 0xf501f5f0,
0xfe80f9c6, 0xf402fe21,
0x80f90188, /* 0x0426: ih */
0xa0f990f9, 0x80f9c60e,
0xd0f9b0f9, 0xf90188fe,
0xf0f9e0f9, 0xf990f980,
0xc4800acf, 0xf9b0f9a0,
0x0bf404ab, 0xf9e0f9d0,
0x00b7f11d, 0xcf04bdf0,
0x1cd7f019, 0xabc4800a,
0xcf40becf, 0x1d0bf404,
0x21f400bf, 0x1900b7f1,
0x00b0b704, 0xcf1cd7f0,
0x01e7f004, 0xbfcf40be,
/* 0x0443: ih_no_fifo */ 0x0421f400,
0xd000bed0, 0x0400b0b7,
0xf0fc400a, 0xd001e7f0,
0xd0fce0fc, /* 0x045e: ih_no_fifo */
0xa0fcb0fc, 0x0ad000be,
0x80fc90fc, 0xfcf0fc40,
0xfc0088fe, 0xfcd0fce0,
0x0032f480, 0xfca0fcb0,
/* 0x045e: hub_barrier_done */ 0xfe80fc90,
0xf7f001f8, 0x80fc0088,
0x040e9801, 0xf80032f4,
0xf104febb, /* 0x0479: hub_barrier_done */
0xf09418e7, 0x01f7f001,
0x21f440e3, 0xbb040e98,
/* 0x0473: ctx_redswitch */ 0xe7f104fe,
0xf100f88d, 0xe3f09418,
0xb60614e7, 0x8d21f440,
0xf7f006e4, /* 0x048e: ctx_redswitch */
0x00efd020, 0xe7f100f8,
/* 0x0483: ctx_redswitch_delay */ 0xe4b60614,
0xb608f7f0, 0x20f7f006,
0x1bf401f2, 0xf000efd0,
0x20f7f1fd, /* 0x049e: ctx_redswitch_delay */
0x00efd00a, 0xf2b608f7,
/* 0x0492: ctx_xfer */ 0xfd1bf401,
0x17f100f8, 0x0a20f7f1,
0x14b60a04, 0xf800efd0,
0x001fd006, /* 0x04ad: ctx_xfer */
0xf50711f4, 0x0417f100,
/* 0x04a3: ctx_xfer_not_load */ 0x0614b60a,
0xf1047321, 0xf4001fd0,
0xf04afc17, 0x21f50711,
0x27f00213, /* 0x04be: ctx_xfer_not_load */
0x0012d00c, 0x17f1048e,
0x020721f5, 0x13f04afc,
0x47fc27f1, 0x0c27f002,
0xd00223f0, 0xf50012d0,
0x2cf00020, 0xf1021521,
0x0320b601, 0xf047fc27,
0xf00012d0, 0x20d00223,
0xa5f001ac, 0x012cf000,
0x00b7f002, 0xd00320b6,
0x9850b3f0, 0xacf00012,
0xc4b6040c, 0x02a5f001,
0x00bcbb0f, 0xf000b7f0,
0x98000c98, 0x0c9850b3,
0xe7f0010d, 0x0fc4b604,
0x5c21f500, 0x9800bcbb,
0x01acf001, 0x0d98000c,
0x4000b7f1, 0x00e7f001,
0x9850b3f0, 0x016621f5,
0xc4b6040c, 0xf101acf0,
0x00bcbb0f, 0xf04000b7,
0x98010c98, 0x0c9850b3,
0x0f98020d, 0x0fc4b604,
0x00e7f106, 0x9800bcbb,
0x5c21f508, 0x0d98010c,
0x0721f501, 0x060f9802,
0x0601f402, 0x0800e7f1,
/* 0x0517: ctx_xfer_post */ 0x016621f5,
0xf11412f4, 0x021521f5,
0xf04afc17, 0xf40601f4,
0x27f00213, /* 0x0532: ctx_xfer_post */
0x0012d00d, 0x17f11412,
0x020721f5, 0x13f04afc,
/* 0x0528: ctx_xfer_done */ 0x0d27f002,
0x045e21f5, 0xf50012d0,
0x000000f8, /* 0x0543: ctx_xfer_done */
0x00000000, 0xf5021521,
0x00000000, 0xf8047921,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -41,14 +41,14 @@ uint32_t nvd7_grgpc_data[] = { ...@@ -41,14 +41,14 @@ uint32_t nvd7_grgpc_data[] = {
}; };
uint32_t nvd7_grgpc_code[] = { uint32_t nvd7_grgpc_code[] = {
0x03060ef5, 0x03180ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -80,7 +80,7 @@ uint32_t nvd7_grgpc_code[] = { ...@@ -80,7 +80,7 @@ uint32_t nvd7_grgpc_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -102,63 +102,66 @@ uint32_t nvd7_grgpc_code[] = { ...@@ -102,63 +102,66 @@ uint32_t nvd7_grgpc_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -166,8 +169,8 @@ uint32_t nvd7_grgpc_code[] = { ...@@ -166,8 +169,8 @@ uint32_t nvd7_grgpc_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -176,76 +179,77 @@ uint32_t nvd7_grgpc_code[] = { ...@@ -176,76 +179,77 @@ uint32_t nvd7_grgpc_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -254,207 +258,203 @@ uint32_t nvd7_grgpc_code[] = { ...@@ -254,207 +258,203 @@ uint32_t nvd7_grgpc_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0xe0f900f8,
0xe3f09814, 0x9814e7f1,
0x8d21f440, 0xf440e3f0,
0x041ce0b7, 0xe0b78d21,
0xf401f7f0, 0xf7f0041c,
0xe0fc8d21, 0x8d21f401,
/* 0x0306: init */ 0x00f8e0fc,
0x04bd00f8, /* 0x0318: init */
0xf10004fe, 0x04fe04bd,
0xf0120017, 0x0017f100,
0x12d00227, 0x0227f012,
0x5717f100, 0xf10012d0,
0x0010fe04, 0xfe047017,
0x040017f1, 0x17f10010,
0xf0c010d0, 0x10d00400,
0x12d00427, 0x0427f0c0,
0x1031f400, 0xf40012d0,
0x060817f1, 0x17f11031,
0xcf0614b6, 0x14b60608,
0x37f00012, 0x0012cf06,
0x1f24f001, 0xf00137f0,
0xb60432bb, 0x32bb1f24,
0x02800132, 0x0132b604,
0x06038005, 0x80050280,
0x040010b7, 0x10b70603,
0x800012cf, 0x12cf0400,
0xe7f10402, 0x04028000,
0xe3f00c30, 0x0c30e7f1,
0xbd24bd50, 0xbd50e3f0,
/* 0x035f: init_unk_loop */ 0xbd34bd24,
0xf444bd34, /* 0x0371: init_unk_loop */
0xf6b06821, 0x6821f444,
0x0f0bf400, 0xf400f6b0,
0xbb01f7f0, 0xf7f00f0b,
0x4ffd04f2, 0x04f2bb01,
0x0130b605, 0xb6054ffd,
/* 0x0374: init_unk_next */ /* 0x0386: init_unk_next */
0xb60120b6, 0x20b60130,
0x26b004e0, 0x04e0b601,
0xe21bf401, 0xf40126b0,
/* 0x0380: init_unk_done */ /* 0x0392: init_unk_done */
0x80070380, 0x0380e21b,
0x27f10804, 0x08048007,
0x24b60800, 0x010027f1,
0x4022cf06, 0xcf0223f0,
0x47f134bd, 0x34bd0022,
0x44b60700, 0x070047f1,
0x08259506, 0x950644b6,
0xd00045d0, 0x45d00825,
0x0e984045, 0x4045d000,
0x010f9800, 0x98000e98,
0x013d21f5, 0x21f5010f,
0xbb002fbb, 0x2fbb0147,
0x0e98003f, 0x003fbb00,
0x020f9801, 0x98010e98,
0x013d21f5, 0x21f5020f,
0xfd050e98, 0x0e980147,
0x00effd05,
0xbb002ebb,
0x0e98003e,
0x030f9802,
0x014721f5,
0xfd070e98,
0x2ebb00ef, 0x2ebb00ef,
0x003ebb00, 0x003ebb00,
0x98020e98, 0x130040b7,
0x21f5030f, 0xd00235b6,
0x0e98013d, 0x25b60043,
0x00effd07, 0x0635b608,
0xbb002ebb, 0xb60120b6,
0x40b7003e, 0x24b60130,
0x35b61300, 0x0834b608,
0x0043d002, 0xf5022fb9,
0xb60825b6, 0xbb027121,
0x20b60635, 0x07f1003f,
0x0130b601, 0x03f00100,
0xb60824b6, 0x0003d002,
0x2fb90834, 0x24bd04bd,
0x6321f502, 0xf11f29f0,
0x003fbb02, 0xf0080007,
0x080017f1, 0x02d00203,
0xd00614b6, /* 0x0433: main */
0x10b74013, 0xf404bd00,
0x24bd0800, 0x28f40031,
0xd01f29f0, 0x24d7f000,
/* 0x041a: main */ 0xf43921f4,
0x31f40012, 0xe4b0f401,
0x0028f400, 0x1e18f404,
0xf424d7f0, 0xf00181fe,
0x01f43921, 0x20bd0627,
0x04e4b0f4, 0xb60412fd,
0xfe1e18f4, 0x1efd01e4,
0x27f00181, 0x0018fe05,
0xfd20bd06, 0x04f721f5,
0xe4b60412, /* 0x0463: main_not_ctx_xfer */
0x051efd01, 0x94d30ef4,
0xf50018fe, 0xf5f010ef,
0xf404dc21, 0xfe21f501,
/* 0x044a: main_not_ctx_xfer */ 0xc60ef402,
0xef94d30e, /* 0x0470: ih */
0x01f5f010, 0x88fe80f9,
0x02ec21f5, 0xf980f901,
/* 0x0457: ih */ 0xf9a0f990,
0xf9c60ef4, 0xf9d0f9b0,
0x0188fe80, 0xbdf0f9e0,
0x90f980f9, 0x800acf04,
0xb0f9a0f9, 0xf404abc4,
0xe0f9d0f9, 0xb7f11d0b,
0x0acff0f9, 0xd7f01900,
0x04abc480, 0x40becf24,
0xf11d0bf4, 0xf400bfcf,
0xf01900b7, 0xb0b70421,
0xbecf24d7, 0xe7f00400,
0x00bfcf40, 0x00bed001,
0xb70421f4, /* 0x04a8: ih_no_fifo */
0xf00400b0, 0xfc400ad0,
0xbed001e7, 0xfce0fcf0,
/* 0x048d: ih_no_fifo */ 0xfcb0fcd0,
0x400ad000, 0xfc90fca0,
0xe0fcf0fc, 0x0088fe80,
0xb0fcd0fc, 0x32f480fc,
0x90fca0fc, /* 0x04c3: hub_barrier_done */
0x88fe80fc, 0xf001f800,
0xf480fc00, 0x0e9801f7,
0x01f80032, 0x04febb04,
/* 0x04a8: hub_barrier_done */ 0x9418e7f1,
0x9801f7f0, 0xf440e3f0,
0xfebb040e, 0x00f88d21,
0x18e7f104, /* 0x04d8: ctx_redswitch */
0x40e3f094, 0x0614e7f1,
0xf88d21f4, 0xf006e4b6,
/* 0x04bd: ctx_redswitch */ 0xefd020f7,
0x14e7f100, 0x08f7f000,
0x06e4b606, /* 0x04e8: ctx_redswitch_delay */
0xd020f7f0, 0xf401f2b6,
0xf7f000ef, 0xf7f1fd1b,
/* 0x04cd: ctx_redswitch_delay */ 0xefd00a20,
0x01f2b608, /* 0x04f7: ctx_xfer */
0xf1fd1bf4, 0xf100f800,
0xd00a20f7, 0xb60a0417,
0x00f800ef, 0x1fd00614,
/* 0x04dc: ctx_xfer */ 0x0711f400,
0x0a0417f1, 0x04d821f5,
0xd00614b6, /* 0x0508: ctx_xfer_not_load */
0x11f4001f,
0xbd21f507,
/* 0x04ed: ctx_xfer_not_load */
0xfc17f104,
0x0213f04a,
0xd00c27f0,
0x21f50012,
0x27f10207,
0x23f047fc,
0x0020d002,
0xb6012cf0,
0x12d00320,
0x01acf000,
0xf002a5f0,
0xb3f000b7,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x010d9800,
0xf500e7f0,
0xf0015c21,
0xb7f101ac,
0xb3f04000,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x020d9801,
0xf1060f98,
0xf50800e7,
0xf0015c21,
0xa5f001ac,
0x00b7f104,
0x50b3f030,
0xb6040c98,
0xbcbb0fc4,
0x020c9800,
0x98030d98,
0xe7f1080f,
0x21f50200,
0x21f5015c,
0x01f40207,
0x1412f406,
/* 0x0588: ctx_xfer_post */
0x4afc17f1, 0x4afc17f1,
0xf00213f0, 0xf00213f0,
0x12d00d27, 0x12d00c27,
0x0721f500, 0x1521f500,
/* 0x0599: ctx_xfer_done */ 0xfc27f102,
0xa821f502, 0x0223f047,
0x0000f804, 0xf00020d0,
0x00000000, 0x20b6012c,
0x00000000, 0x0012d003,
0x00000000, 0xf001acf0,
0x00000000, 0xb7f002a5,
0x00000000, 0x50b3f000,
0x00000000, 0xb6040c98,
0x00000000, 0xbcbb0fc4,
0x000c9800,
0xf0010d98,
0x21f500e7,
0xacf00166,
0x00b7f101,
0x50b3f040,
0xb6040c98,
0xbcbb0fc4,
0x010c9800,
0x98020d98,
0xe7f1060f,
0x21f50800,
0xacf00166,
0x04a5f001,
0x3000b7f1,
0x9850b3f0,
0xc4b6040c,
0x00bcbb0f,
0x98020c98,
0x0f98030d,
0x00e7f108,
0x6621f502,
0x1521f501,
0x0601f402,
/* 0x05a3: ctx_xfer_post */
0xf11412f4,
0xf04afc17,
0x27f00213,
0x0012d00d,
0x021521f5,
/* 0x05b4: ctx_xfer_done */
0x04c321f5,
0x000000f8,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -41,14 +41,14 @@ uint32_t nve0_grgpc_data[] = { ...@@ -41,14 +41,14 @@ uint32_t nve0_grgpc_data[] = {
}; };
uint32_t nve0_grgpc_code[] = { uint32_t nve0_grgpc_code[] = {
0x03060ef5, 0x03180ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -80,7 +80,7 @@ uint32_t nve0_grgpc_code[] = { ...@@ -80,7 +80,7 @@ uint32_t nve0_grgpc_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -102,63 +102,66 @@ uint32_t nve0_grgpc_code[] = { ...@@ -102,63 +102,66 @@ uint32_t nve0_grgpc_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -166,8 +169,8 @@ uint32_t nve0_grgpc_code[] = { ...@@ -166,8 +169,8 @@ uint32_t nve0_grgpc_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -176,76 +179,77 @@ uint32_t nve0_grgpc_code[] = { ...@@ -176,76 +179,77 @@ uint32_t nve0_grgpc_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -254,207 +258,203 @@ uint32_t nve0_grgpc_code[] = { ...@@ -254,207 +258,203 @@ uint32_t nve0_grgpc_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0xe0f900f8,
0xe3f09814, 0x9814e7f1,
0x8d21f440, 0xf440e3f0,
0x041ce0b7, 0xe0b78d21,
0xf401f7f0, 0xf7f0041c,
0xe0fc8d21, 0x8d21f401,
/* 0x0306: init */ 0x00f8e0fc,
0x04bd00f8, /* 0x0318: init */
0xf10004fe, 0x04fe04bd,
0xf0120017, 0x0017f100,
0x12d00227, 0x0227f012,
0x5717f100, 0xf10012d0,
0x0010fe04, 0xfe047017,
0x040017f1, 0x17f10010,
0xf0c010d0, 0x10d00400,
0x12d00427, 0x0427f0c0,
0x1031f400, 0xf40012d0,
0x060817f1, 0x17f11031,
0xcf0614b6, 0x14b60608,
0x37f00012, 0x0012cf06,
0x1f24f001, 0xf00137f0,
0xb60432bb, 0x32bb1f24,
0x02800132, 0x0132b604,
0x06038005, 0x80050280,
0x040010b7, 0x10b70603,
0x800012cf, 0x12cf0400,
0xe7f10402, 0x04028000,
0xe3f00c30, 0x0c30e7f1,
0xbd24bd50, 0xbd50e3f0,
/* 0x035f: init_unk_loop */ 0xbd34bd24,
0xf444bd34, /* 0x0371: init_unk_loop */
0xf6b06821, 0x6821f444,
0x0f0bf400, 0xf400f6b0,
0xbb01f7f0, 0xf7f00f0b,
0x4ffd04f2, 0x04f2bb01,
0x0130b605, 0xb6054ffd,
/* 0x0374: init_unk_next */ /* 0x0386: init_unk_next */
0xb60120b6, 0x20b60130,
0x26b004e0, 0x04e0b601,
0xe21bf401, 0xf40126b0,
/* 0x0380: init_unk_done */ /* 0x0392: init_unk_done */
0x80070380, 0x0380e21b,
0x27f10804, 0x08048007,
0x24b60800, 0x010027f1,
0x4022cf06, 0xcf0223f0,
0x47f134bd, 0x34bd0022,
0x44b60700, 0x070047f1,
0x08259506, 0x950644b6,
0xd00045d0, 0x45d00825,
0x0e984045, 0x4045d000,
0x010f9800, 0x98000e98,
0x013d21f5, 0x21f5010f,
0xbb002fbb, 0x2fbb0147,
0x0e98003f, 0x003fbb00,
0x020f9801, 0x98010e98,
0x013d21f5, 0x21f5020f,
0xfd050e98, 0x0e980147,
0x00effd05,
0xbb002ebb,
0x0e98003e,
0x030f9802,
0x014721f5,
0xfd070e98,
0x2ebb00ef, 0x2ebb00ef,
0x003ebb00, 0x003ebb00,
0x98020e98, 0x130040b7,
0x21f5030f, 0xd00235b6,
0x0e98013d, 0x25b60043,
0x00effd07, 0x0635b608,
0xbb002ebb, 0xb60120b6,
0x40b7003e, 0x24b60130,
0x35b61300, 0x0834b608,
0x0043d002, 0xf5022fb9,
0xb60825b6, 0xbb027121,
0x20b60635, 0x07f1003f,
0x0130b601, 0x03f00100,
0xb60824b6, 0x0003d002,
0x2fb90834, 0x24bd04bd,
0x6321f502, 0xf11f29f0,
0x003fbb02, 0xf0080007,
0x080017f1, 0x02d00203,
0xd00614b6, /* 0x0433: main */
0x10b74013, 0xf404bd00,
0x24bd0800, 0x28f40031,
0xd01f29f0, 0x24d7f000,
/* 0x041a: main */ 0xf43921f4,
0x31f40012, 0xe4b0f401,
0x0028f400, 0x1e18f404,
0xf424d7f0, 0xf00181fe,
0x01f43921, 0x20bd0627,
0x04e4b0f4, 0xb60412fd,
0xfe1e18f4, 0x1efd01e4,
0x27f00181, 0x0018fe05,
0xfd20bd06, 0x04f721f5,
0xe4b60412, /* 0x0463: main_not_ctx_xfer */
0x051efd01, 0x94d30ef4,
0xf50018fe, 0xf5f010ef,
0xf404dc21, 0xfe21f501,
/* 0x044a: main_not_ctx_xfer */ 0xc60ef402,
0xef94d30e, /* 0x0470: ih */
0x01f5f010, 0x88fe80f9,
0x02ec21f5, 0xf980f901,
/* 0x0457: ih */ 0xf9a0f990,
0xf9c60ef4, 0xf9d0f9b0,
0x0188fe80, 0xbdf0f9e0,
0x90f980f9, 0x800acf04,
0xb0f9a0f9, 0xf404abc4,
0xe0f9d0f9, 0xb7f11d0b,
0x0acff0f9, 0xd7f01900,
0x04abc480, 0x40becf24,
0xf11d0bf4, 0xf400bfcf,
0xf01900b7, 0xb0b70421,
0xbecf24d7, 0xe7f00400,
0x00bfcf40, 0x00bed001,
0xb70421f4, /* 0x04a8: ih_no_fifo */
0xf00400b0, 0xfc400ad0,
0xbed001e7, 0xfce0fcf0,
/* 0x048d: ih_no_fifo */ 0xfcb0fcd0,
0x400ad000, 0xfc90fca0,
0xe0fcf0fc, 0x0088fe80,
0xb0fcd0fc, 0x32f480fc,
0x90fca0fc, /* 0x04c3: hub_barrier_done */
0x88fe80fc, 0xf001f800,
0xf480fc00, 0x0e9801f7,
0x01f80032, 0x04febb04,
/* 0x04a8: hub_barrier_done */ 0x9418e7f1,
0x9801f7f0, 0xf440e3f0,
0xfebb040e, 0x00f88d21,
0x18e7f104, /* 0x04d8: ctx_redswitch */
0x40e3f094, 0x0614e7f1,
0xf88d21f4, 0xf006e4b6,
/* 0x04bd: ctx_redswitch */ 0xefd020f7,
0x14e7f100, 0x08f7f000,
0x06e4b606, /* 0x04e8: ctx_redswitch_delay */
0xd020f7f0, 0xf401f2b6,
0xf7f000ef, 0xf7f1fd1b,
/* 0x04cd: ctx_redswitch_delay */ 0xefd00a20,
0x01f2b608, /* 0x04f7: ctx_xfer */
0xf1fd1bf4, 0xf100f800,
0xd00a20f7, 0xb60a0417,
0x00f800ef, 0x1fd00614,
/* 0x04dc: ctx_xfer */ 0x0711f400,
0x0a0417f1, 0x04d821f5,
0xd00614b6, /* 0x0508: ctx_xfer_not_load */
0x11f4001f,
0xbd21f507,
/* 0x04ed: ctx_xfer_not_load */
0xfc17f104,
0x0213f04a,
0xd00c27f0,
0x21f50012,
0x27f10207,
0x23f047fc,
0x0020d002,
0xb6012cf0,
0x12d00320,
0x01acf000,
0xf002a5f0,
0xb3f000b7,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x010d9800,
0xf500e7f0,
0xf0015c21,
0xb7f101ac,
0xb3f04000,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x020d9801,
0xf1060f98,
0xf50800e7,
0xf0015c21,
0xa5f001ac,
0x00b7f104,
0x50b3f030,
0xb6040c98,
0xbcbb0fc4,
0x020c9800,
0x98030d98,
0xe7f1080f,
0x21f50200,
0x21f5015c,
0x01f40207,
0x1412f406,
/* 0x0588: ctx_xfer_post */
0x4afc17f1, 0x4afc17f1,
0xf00213f0, 0xf00213f0,
0x12d00d27, 0x12d00c27,
0x0721f500, 0x1521f500,
/* 0x0599: ctx_xfer_done */ 0xfc27f102,
0xa821f502, 0x0223f047,
0x0000f804, 0xf00020d0,
0x00000000, 0x20b6012c,
0x00000000, 0x0012d003,
0x00000000, 0xf001acf0,
0x00000000, 0xb7f002a5,
0x00000000, 0x50b3f000,
0x00000000, 0xb6040c98,
0x00000000, 0xbcbb0fc4,
0x000c9800,
0xf0010d98,
0x21f500e7,
0xacf00166,
0x00b7f101,
0x50b3f040,
0xb6040c98,
0xbcbb0fc4,
0x010c9800,
0x98020d98,
0xe7f1060f,
0x21f50800,
0xacf00166,
0x04a5f001,
0x3000b7f1,
0x9850b3f0,
0xc4b6040c,
0x00bcbb0f,
0x98020c98,
0x0f98030d,
0x00e7f108,
0x6621f502,
0x1521f501,
0x0601f402,
/* 0x05a3: ctx_xfer_post */
0xf11412f4,
0xf04afc17,
0x27f00213,
0x0012d00d,
0x021521f5,
/* 0x05b4: ctx_xfer_done */
0x04c321f5,
0x000000f8,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -41,14 +41,14 @@ uint32_t nvf0_grgpc_data[] = { ...@@ -41,14 +41,14 @@ uint32_t nvf0_grgpc_data[] = {
}; };
uint32_t nvf0_grgpc_code[] = { uint32_t nvf0_grgpc_code[] = {
0x03060ef5, 0x03180ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -80,7 +80,7 @@ uint32_t nvf0_grgpc_code[] = { ...@@ -80,7 +80,7 @@ uint32_t nvf0_grgpc_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -102,63 +102,66 @@ uint32_t nvf0_grgpc_code[] = { ...@@ -102,63 +102,66 @@ uint32_t nvf0_grgpc_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f03700,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f03700,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf0370007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -166,8 +169,8 @@ uint32_t nvf0_grgpc_code[] = { ...@@ -166,8 +169,8 @@ uint32_t nvf0_grgpc_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -176,76 +179,77 @@ uint32_t nvf0_grgpc_code[] = { ...@@ -176,76 +179,77 @@ uint32_t nvf0_grgpc_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f03700,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -254,207 +258,203 @@ uint32_t nvf0_grgpc_code[] = { ...@@ -254,207 +258,203 @@ uint32_t nvf0_grgpc_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0xe0f900f8,
0xe3f09814, 0x9814e7f1,
0x8d21f440, 0xf440e3f0,
0x041ce0b7, 0xe0b78d21,
0xf401f7f0, 0xf7f0041c,
0xe0fc8d21, 0x8d21f401,
/* 0x0306: init */ 0x00f8e0fc,
0x04bd00f8, /* 0x0318: init */
0xf10004fe, 0x04fe04bd,
0xf0120017, 0x0017f100,
0x12d00227, 0x0227f012,
0x5717f100, 0xf10012d0,
0x0010fe04, 0xfe047017,
0x040017f1, 0x17f10010,
0xf0c010d0, 0x10d00400,
0x12d00427, 0x0427f0c0,
0x1031f400, 0xf40012d0,
0x060817f1, 0x17f11031,
0xcf0614b6, 0x14b60608,
0x37f00012, 0x0012cf06,
0x1f24f001, 0xf00137f0,
0xb60432bb, 0x32bb1f24,
0x02800132, 0x0132b604,
0x06038005, 0x80050280,
0x040010b7, 0x10b70603,
0x800012cf, 0x12cf0400,
0xe7f10402, 0x04028000,
0xe3f00c30, 0x0c30e7f1,
0xbd24bd50, 0xbd50e3f0,
/* 0x035f: init_unk_loop */ 0xbd34bd24,
0xf444bd34, /* 0x0371: init_unk_loop */
0xf6b06821, 0x6821f444,
0x0f0bf400, 0xf400f6b0,
0xbb01f7f0, 0xf7f00f0b,
0x4ffd04f2, 0x04f2bb01,
0x0130b605, 0xb6054ffd,
/* 0x0374: init_unk_next */ /* 0x0386: init_unk_next */
0xb60120b6, 0x20b60130,
0x26b004e0, 0x04e0b601,
0xe21bf402, 0xf40226b0,
/* 0x0380: init_unk_done */ /* 0x0392: init_unk_done */
0x80070380, 0x0380e21b,
0x27f10804, 0x08048007,
0x24b60800, 0x010027f1,
0x4022cf06, 0xcf0223f0,
0x47f134bd, 0x34bd0022,
0x44b60700, 0x070047f1,
0x08259506, 0x950644b6,
0xd00045d0, 0x45d00825,
0x0e984045, 0x4045d000,
0x010f9800, 0x98000e98,
0x013d21f5, 0x21f5010f,
0xbb002fbb, 0x2fbb0147,
0x0e98003f, 0x003fbb00,
0x020f9801, 0x98010e98,
0x013d21f5, 0x21f5020f,
0xfd050e98, 0x0e980147,
0x00effd05,
0xbb002ebb,
0x0e98003e,
0x030f9802,
0x014721f5,
0xfd070e98,
0x2ebb00ef, 0x2ebb00ef,
0x003ebb00, 0x003ebb00,
0x98020e98, 0x130040b7,
0x21f5030f, 0xd00235b6,
0x0e98013d, 0x25b60043,
0x00effd07, 0x0635b608,
0xbb002ebb, 0xb60120b6,
0x40b7003e, 0x24b60130,
0x35b61300, 0x0834b608,
0x0043d002, 0xf5022fb9,
0xb60825b6, 0xbb027121,
0x20b60635, 0x07f1003f,
0x0130b601, 0x03f00100,
0xb60824b6, 0x0003d002,
0x2fb90834, 0x24bd04bd,
0x6321f502, 0xf11f29f0,
0x003fbb02, 0xf0300007,
0x080017f1, 0x02d00203,
0xd00614b6, /* 0x0433: main */
0x10b74013, 0xf404bd00,
0x24bd0800, 0x28f40031,
0xd01f29f0, 0x24d7f000,
/* 0x041a: main */ 0xf43921f4,
0x31f40012, 0xe4b0f401,
0x0028f400, 0x1e18f404,
0xf424d7f0, 0xf00181fe,
0x01f43921, 0x20bd0627,
0x04e4b0f4, 0xb60412fd,
0xfe1e18f4, 0x1efd01e4,
0x27f00181, 0x0018fe05,
0xfd20bd06, 0x04f721f5,
0xe4b60412, /* 0x0463: main_not_ctx_xfer */
0x051efd01, 0x94d30ef4,
0xf50018fe, 0xf5f010ef,
0xf404dc21, 0xfe21f501,
/* 0x044a: main_not_ctx_xfer */ 0xc60ef402,
0xef94d30e, /* 0x0470: ih */
0x01f5f010, 0x88fe80f9,
0x02ec21f5, 0xf980f901,
/* 0x0457: ih */ 0xf9a0f990,
0xf9c60ef4, 0xf9d0f9b0,
0x0188fe80, 0xbdf0f9e0,
0x90f980f9, 0x800acf04,
0xb0f9a0f9, 0xf404abc4,
0xe0f9d0f9, 0xb7f11d0b,
0x0acff0f9, 0xd7f01900,
0x04abc480, 0x40becf24,
0xf11d0bf4, 0xf400bfcf,
0xf01900b7, 0xb0b70421,
0xbecf24d7, 0xe7f00400,
0x00bfcf40, 0x00bed001,
0xb70421f4, /* 0x04a8: ih_no_fifo */
0xf00400b0, 0xfc400ad0,
0xbed001e7, 0xfce0fcf0,
/* 0x048d: ih_no_fifo */ 0xfcb0fcd0,
0x400ad000, 0xfc90fca0,
0xe0fcf0fc, 0x0088fe80,
0xb0fcd0fc, 0x32f480fc,
0x90fca0fc, /* 0x04c3: hub_barrier_done */
0x88fe80fc, 0xf001f800,
0xf480fc00, 0x0e9801f7,
0x01f80032, 0x04febb04,
/* 0x04a8: hub_barrier_done */ 0x9418e7f1,
0x9801f7f0, 0xf440e3f0,
0xfebb040e, 0x00f88d21,
0x18e7f104, /* 0x04d8: ctx_redswitch */
0x40e3f094, 0x0614e7f1,
0xf88d21f4, 0xf006e4b6,
/* 0x04bd: ctx_redswitch */ 0xefd020f7,
0x14e7f100, 0x08f7f000,
0x06e4b606, /* 0x04e8: ctx_redswitch_delay */
0xd020f7f0, 0xf401f2b6,
0xf7f000ef, 0xf7f1fd1b,
/* 0x04cd: ctx_redswitch_delay */ 0xefd00a20,
0x01f2b608, /* 0x04f7: ctx_xfer */
0xf1fd1bf4, 0xf100f800,
0xd00a20f7, 0xb60a0417,
0x00f800ef, 0x1fd00614,
/* 0x04dc: ctx_xfer */ 0x0711f400,
0x0a0417f1, 0x04d821f5,
0xd00614b6, /* 0x0508: ctx_xfer_not_load */
0x11f4001f,
0xbd21f507,
/* 0x04ed: ctx_xfer_not_load */
0xfc17f104,
0x0213f04a,
0xd00c27f0,
0x21f50012,
0x27f10207,
0x23f047fc,
0x0020d002,
0xb6012cf0,
0x12d00320,
0x01acf000,
0xf002a5f0,
0xb3f000b7,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x010d9800,
0xf500e7f0,
0xf0015c21,
0xb7f101ac,
0xb3f04000,
0x040c9850,
0xbb0fc4b6,
0x0c9800bc,
0x020d9801,
0xf1060f98,
0xf50800e7,
0xf0015c21,
0xa5f001ac,
0x00b7f104,
0x50b3f030,
0xb6040c98,
0xbcbb0fc4,
0x020c9800,
0x98030d98,
0xe7f1080f,
0x21f50200,
0x21f5015c,
0x01f40207,
0x1412f406,
/* 0x0588: ctx_xfer_post */
0x4afc17f1, 0x4afc17f1,
0xf00213f0, 0xf00213f0,
0x12d00d27, 0x12d00c27,
0x0721f500, 0x1521f500,
/* 0x0599: ctx_xfer_done */ 0xfc27f102,
0xa821f502, 0x0223f047,
0x0000f804, 0xf00020d0,
0x00000000, 0x20b6012c,
0x00000000, 0x0012d003,
0x00000000, 0xf001acf0,
0x00000000, 0xb7f002a5,
0x00000000, 0x50b3f000,
0x00000000, 0xb6040c98,
0x00000000, 0xbcbb0fc4,
0x000c9800,
0xf0010d98,
0x21f500e7,
0xacf00166,
0x00b7f101,
0x50b3f040,
0xb6040c98,
0xbcbb0fc4,
0x010c9800,
0x98020d98,
0xe7f1060f,
0x21f50800,
0xacf00166,
0x04a5f001,
0x3000b7f1,
0x9850b3f0,
0xc4b6040c,
0x00bcbb0f,
0x98020c98,
0x0f98030d,
0x00e7f108,
0x6621f502,
0x1521f501,
0x0601f402,
/* 0x05a3: ctx_xfer_post */
0xf11412f4,
0xf04afc17,
0x27f00213,
0x0012d00d,
0x021521f5,
/* 0x05b4: ctx_xfer_done */
0x04c321f5,
0x000000f8,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -52,15 +52,9 @@ hub_mmio_list_next: ...@@ -52,15 +52,9 @@ hub_mmio_list_next:
// In: $r15 error code (see nvc0.fuc) // In: $r15 error code (see nvc0.fuc)
// //
error: error:
push $r14 nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_VAL(5), 0, $r15)
mov $r14 0x814
shl b32 $r14 6
iowr I[$r14 + 0x000] $r15 // CC_SCRATCH[5] = error code
mov $r14 0xc1c
shl b32 $r14 6
mov $r15 1 mov $r15 1
iowr I[$r14 + 0x000] $r15 // INTR_UP_SET nv_iowr(NV_PGRAPH_FECS_INTR_UP_SET, 0, $r15)
pop $r14
ret ret
// HUB fuc initialisation, executed by triggering ucode start, will // HUB fuc initialisation, executed by triggering ucode start, will
...@@ -211,13 +205,10 @@ init: ...@@ -211,13 +205,10 @@ init:
bra ne #init_gpc bra ne #init_gpc
// save context size, and tell host we're ready // save context size, and tell host we're ready
mov $r2 0x800 nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_VAL(1), 0, $r1)
shl b32 $r2 6
iowr I[$r2 + 0x100] $r1 // CC_SCRATCH[1] = context size
add b32 $r2 0x800
clear b32 $r1 clear b32 $r1
bset $r1 31 bset $r1 31
iowr I[$r2 + 0x000] $r1 // CC_SCRATCH[0] |= 0x80000000 nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_SET(0), 0, $r1)
// Main program loop, very simple, sleeps until woken up by the interrupt // Main program loop, very simple, sleeps until woken up by the interrupt
// handler, pulls a command from the queue and executes its handler // handler, pulls a command from the queue and executes its handler
...@@ -309,11 +300,9 @@ main: ...@@ -309,11 +300,9 @@ main:
bra #main bra #main
main_done: main_done:
mov $r1 0x820
shl b32 $r1 6
clear b32 $r2 clear b32 $r2
bset $r2 31 bset $r2 31
iowr I[$r1 + 0x000] $r2 // CC_SCRATCH[0] |= 0x80000000 nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_SET(0), 0, $r2)
bra #main bra #main
// interrupt handler // interrupt handler
...@@ -327,6 +316,7 @@ ih: ...@@ -327,6 +316,7 @@ ih:
push $r13 push $r13
push $r14 push $r14
push $r15 push $r15
clear b32 $r0
// incoming fifo command? // incoming fifo command?
iord $r10 I[$r0 + 0x200] // INTR iord $r10 I[$r0 + 0x200] // INTR
......
...@@ -206,14 +206,14 @@ uint32_t nvc0_grhub_data[] = { ...@@ -206,14 +206,14 @@ uint32_t nvc0_grhub_data[] = {
}; };
uint32_t nvc0_grhub_code[] = { uint32_t nvc0_grhub_code[] = {
0x03090ef5, 0x031b0ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -245,7 +245,7 @@ uint32_t nvc0_grhub_code[] = { ...@@ -245,7 +245,7 @@ uint32_t nvc0_grhub_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -267,63 +267,66 @@ uint32_t nvc0_grhub_code[] = { ...@@ -267,63 +267,66 @@ uint32_t nvc0_grhub_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -331,8 +334,8 @@ uint32_t nvc0_grhub_code[] = { ...@@ -331,8 +334,8 @@ uint32_t nvc0_grhub_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -341,76 +344,77 @@ uint32_t nvc0_grhub_code[] = { ...@@ -341,76 +344,77 @@ uint32_t nvc0_grhub_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -419,270 +423,278 @@ uint32_t nvc0_grhub_code[] = { ...@@ -419,270 +423,278 @@ uint32_t nvc0_grhub_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0x07f100f8,
0xe4b60814, 0x03f00500,
0x00efd006, 0x000fd002,
0x0c1ce7f1, 0xf7f004bd,
0xf006e4b6, 0x0007f101,
0xefd001f7, 0x0303f007,
0xf8e0fc00, 0xbd000fd0,
/* 0x0309: init */ /* 0x031b: init */
0xfe04bd00, 0xbd00f804,
0x07fe0004, 0x0004fe04,
0x0017f100, 0xf10007fe,
0x0227f012, 0xf0120017,
0xf10012d0, 0x12d00227,
0xfe058517, 0xb117f100,
0x17f10010, 0x0010fe05,
0x10d00400, 0x040017f1,
0x0437f1c0, 0xf1c010d0,
0x0634b604, 0xb6040437,
0x200327f1, 0x27f10634,
0xf10032d0, 0x32d02003,
0xd0200427,
0x27f10132,
0x32d0200b,
0x0c27f102,
0x0732d020,
0x0c2427f1,
0xb90624b6,
0x23d00003,
0x0427f100, 0x0427f100,
0x0023f087, 0x0132d020,
0xb70012d0, 0x200b27f1,
0xf0010012, 0xf10232d0,
0x12d00427, 0xd0200c27,
0x1031f400, 0x27f10732,
0x9604e7f1, 0x24b60c24,
0xf440e3f0, 0x0003b906,
0xf1c76821, 0xf10023d0,
0x03018090, 0xf0870427,
0x801ff4f0, 0x12d00023,
0x17f0020f, 0x0012b700,
0x041fbb01, 0x0427f001,
0xf10112b6, 0xf40012d0,
0xb6040c27, 0xe7f11031,
0x21d00624, 0xe3f09604,
0x4021d000, 0x6821f440,
0x010017f1, 0x8090f1c7,
0x98000e98, 0xf4f00301,
0x21f5010f, 0x020f801f,
0x37f1013d, 0xbb0117f0,
0x34b60700, 0x12b6041f,
0x08149506, 0x0c27f101,
0xd00034d0, 0x0624b604,
0x30b74034, 0xd00021d0,
0x1fbb1300, 0x17f14021,
0x02f5b600, 0x0e980100,
0xb6003fd0, 0x010f9800,
0x10b60815, 0x014721f5,
0x0814b601, 0x070037f1,
0xf5021fb9, 0x950634b6,
0xbb026321, 0x34d00814,
0x0398001f, 0x4034d000,
0x0047f102, 0x130030b7,
0x5043f020, 0xb6001fbb,
/* 0x03e4: init_gpc */ 0x3fd002f5,
0x08044ea0, 0x0815b600,
0xf4021fb9, 0xb60110b6,
0x4ea08d21, 0x1fb90814,
0xf4bd010c, 0x7121f502,
0xa08d21f4, 0x001fbb02,
0xf401044e, 0xf1020398,
0x4ea08d21, 0xf0200047,
0xf7f00100, /* 0x03f6: init_gpc */
0x4ea05043,
0x1fb90804,
0x8d21f402, 0x8d21f402,
0x08004ea0, 0x010c4ea0,
/* 0x040c: init_gpc_wait */ 0x21f4f4bd,
0xc86821f4, 0x044ea08d,
0x0bf41fff, 0x8d21f401,
0x044ea0fa, 0x01004ea0,
0x6821f408, 0xf402f7f0,
0xb7001fbb, 0x4ea08d21,
0xb6800040, /* 0x041e: init_gpc_wait */
0x1bf40132, 0x21f40800,
0x0027f1be, 0x1fffc868,
0x0624b608, 0xa0fa0bf4,
0xb74021d0, 0xf408044e,
0xbd080020, 0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf0010007,
0x01d00203,
0xbd04bd00,
0x1f19f014, 0x1f19f014,
/* 0x043f: main */ 0x080007f1,
0xf40021d0, 0xd00203f0,
0x28f40031, 0x04bd0001,
0x10d7f000, /* 0x0458: main */
0xf43921f4, 0xf40031f4,
0xe4b1f401, 0xd7f00028,
0x1bf54001, 0x3921f410,
0x87f100d1, 0xb1f401f4,
0x84b6083c, 0xf54001e4,
0xf094bd06, 0xbd00de1b,
0x89d00499, 0x0499f094,
0x0017f100, 0x0f0007f1,
0x0614b60b, 0xd00203f0,
0xcf4012cf, 0x04bd0009,
0x13c80011, 0x0b0017f1,
0x7e0bf41f, 0xcf0614b6,
0x11cf4012,
0x1f13c800,
0x00870bf5,
0xf41f23c8, 0xf41f23c8,
0x20f95a0b, 0x20f9620b,
0xf10212b9, 0xbd0212b9,
0xb6083c87,
0x94bd0684,
0xd00799f0,
0x32f40089,
0x0231f401,
0x07f521f5,
0x085c87f1,
0xbd0684b6,
0x0799f094, 0x0799f094,
0xfc0089d0, 0x0f0007f1,
0x3c87f120, 0xd00203f0,
0x0684b608, 0x04bd0009,
0x99f094bd, 0xf40132f4,
0x0089d006, 0x21f50231,
0xf50131f4, 0x94bd082f,
0xf107f521, 0xf10799f0,
0xb6085c87, 0xf0170007,
0x94bd0684, 0x09d00203,
0xd00699f0, 0xfc04bd00,
0x0ef40089, 0xf094bd20,
/* 0x04d5: chsw_prev_no_next */ 0x07f10699,
0x03f00f00,
0x0009d002,
0x31f404bd,
0x2f21f501,
0xf094bd08,
0x07f10699,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x04f9: chsw_prev_no_next */
0xb920f931, 0xb920f931,
0x32f40212, 0x32f40212,
0x0232f401, 0x0232f401,
0x07f521f5, 0x082f21f5,
0x17f120fc, 0x17f120fc,
0x14b60b00, 0x14b60b00,
0x0012d006, 0x0012d006,
/* 0x04f3: chsw_no_prev */ /* 0x0517: chsw_no_prev */
0xc8130ef4, 0xc8130ef4,
0x0bf41f23, 0x0bf41f23,
0x0131f40d, 0x0131f40d,
0xf50232f4, 0xf50232f4,
/* 0x0503: chsw_done */ /* 0x0527: chsw_done */
0xf107f521, 0xf1082f21,
0xb60b0c17, 0xb60b0c17,
0x27f00614, 0x27f00614,
0x0012d001, 0x0012d001,
0x085c87f1,
0xbd0684b6,
0x0499f094,
0xf50089d0,
/* 0x0523: main_not_ctx_switch */
0xb0ff200e,
0x1bf401e4,
0x02f2b90d,
0x078121f5,
/* 0x0533: main_not_ctx_chan */
0xb0420ef4,
0x1bf402e4,
0x3c87f12e,
0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d007, 0x0007f104,
0x0203f017,
0xbd0009d0,
0x130ef504,
/* 0x0549: main_not_ctx_switch */
0x01e4b0ff,
0xb90d1bf4,
0x21f502f2,
0x0ef407bb,
/* 0x0559: main_not_ctx_chan */
0x02e4b046,
0xbd321bf4,
0x0799f094,
0x0f0007f1,
0xd00203f0,
0x04bd0009,
0xf40132f4, 0xf40132f4,
0x21f50232, 0x21f50232,
0x87f107f5, 0x94bd082f,
0x84b6085c, 0xf10799f0,
0xf094bd06, 0xf0170007,
0x89d00799, 0x09d00203,
0x110ef400, 0xf404bd00,
/* 0x0564: main_not_ctx_save */ /* 0x058e: main_not_ctx_save */
0xf010ef94, 0xef94110e,
0x21f501f5, 0x01f5f010,
0x0ef502ec, 0x02fe21f5,
/* 0x0572: main_done */ 0xfec00ef5,
0x17f1fed1, /* 0x059c: main_done */
0x14b60820, 0x29f024bd,
0xf024bd06, 0x0007f11f,
0x12d01f29, 0x0203f008,
0xbe0ef500, 0xbd0002d0,
/* 0x0585: ih */ 0xab0ef504,
/* 0x05b1: ih */
0xfe80f9fe, 0xfe80f9fe,
0x80f90188, 0x80f90188,
0xa0f990f9, 0xa0f990f9,
0xd0f9b0f9, 0xd0f9b0f9,
0xf0f9e0f9, 0xf0f9e0f9,
0xc4800acf, 0x0acf04bd,
0x0bf404ab, 0x04abc480,
0x00b7f11d, 0xf11d0bf4,
0x10d7f019, 0xf01900b7,
0xcf40becf, 0xbecf10d7,
0x21f400bf, 0x00bfcf40,
0x00b0b704, 0xb70421f4,
0x01e7f004, 0xf00400b0,
/* 0x05bb: ih_no_fifo */ 0xbed001e7,
0xe400bed0, /* 0x05e9: ih_no_fifo */
0xf40100ab, 0x00abe400,
0xd7f00d0b, 0x0d0bf401,
0x01e7f110, 0xf110d7f0,
0x0421f440, 0xf44001e7,
/* 0x05cc: ih_no_ctxsw */ /* 0x05fa: ih_no_ctxsw */
0x0104b7f1, 0xb7f10421,
0xabffb0bd, 0xb0bd0104,
0x0d0bf4b4, 0xf4b4abff,
0x0c1ca7f1, 0xa7f10d0b,
0xd006a4b6, 0xa4b60c1c,
/* 0x05e2: ih_no_other */ 0x00abd006,
0x0ad000ab, /* 0x0610: ih_no_other */
0xfcf0fc40, 0xfc400ad0,
0xfcd0fce0, 0xfce0fcf0,
0xfca0fcb0, 0xfcb0fcd0,
0xfe80fc90, 0xfc90fca0,
0x80fc0088, 0x0088fe80,
0xf80032f4, 0x32f480fc,
/* 0x05fd: ctx_4160s */ /* 0x062b: ctx_4160s */
0x60e7f101, 0xf101f800,
0x40e3f041, 0xf04160e7,
0xf401f7f0, 0xf7f040e3,
/* 0x060a: ctx_4160s_wait */ 0x8d21f401,
0x21f48d21, /* 0x0638: ctx_4160s_wait */
0x04ffc868, 0xc86821f4,
0xf8fa0bf4, 0x0bf404ff,
/* 0x0615: ctx_4160c */ /* 0x0643: ctx_4160c */
0x60e7f100, 0xf100f8fa,
0xf04160e7,
0xf4bd40e3,
0xf88d21f4,
/* 0x0651: ctx_4170s */
0x70e7f100,
0x40e3f041, 0x40e3f041,
0x21f4f4bd, 0xf410f5f0,
/* 0x0623: ctx_4170s */
0xf100f88d,
0xf04170e7,
0xf5f040e3,
0x8d21f410,
/* 0x0632: ctx_4170w */
0xe7f100f8,
0xe3f04170,
0x6821f440,
0xf410f4f0,
0x00f8f31b,
/* 0x0644: ctx_redswitch */
0x0614e7f1,
0xf106e4b6,
0xd00270f7,
0xf7f000ef,
/* 0x0655: ctx_redswitch_delay */
0x01f2b608,
0xf1fd1bf4,
0xd00770f7,
0x00f800ef,
/* 0x0664: ctx_86c */
0x086ce7f1,
0xd006e4b6,
0xe7f100ef,
0xe3f08a14,
0x8d21f440,
0xa86ce7f1,
0xf441e3f0,
0x00f88d21, 0x00f88d21,
/* 0x0684: ctx_load */ /* 0x0660: ctx_4170w */
0x083c87f1, 0x4170e7f1,
0xbd0684b6, 0xf440e3f0,
0x0599f094, 0xf4f06821,
0xf00089d0, 0xf31bf410,
/* 0x0672: ctx_redswitch */
0xe7f100f8,
0xe4b60614,
0x70f7f106,
0x00efd002,
/* 0x0683: ctx_redswitch_delay */
0xb608f7f0,
0x1bf401f2,
0x70f7f1fd,
0x00efd007,
/* 0x0692: ctx_86c */
0xe7f100f8,
0xe4b6086c,
0x00efd006,
0x8a14e7f1,
0xf440e3f0,
0xe7f18d21,
0xe3f0a86c,
0x8d21f441,
/* 0x06b2: ctx_load */
0x94bd00f8,
0xf10599f0,
0xf00f0007,
0x09d00203,
0xf004bd00,
0x21f40ca7, 0x21f40ca7,
0x2417f1c9, 0x2417f1c9,
0x0614b60a, 0x0614b60a,
...@@ -693,165 +705,217 @@ uint32_t nvc0_grhub_code[] = { ...@@ -693,165 +705,217 @@ uint32_t nvc0_grhub_code[] = {
0x0614b60a, 0x0614b60a,
0xd00747f0, 0xd00747f0,
0x14d00012, 0x14d00012,
/* 0x06bd: ctx_chan_wait_0 */ /* 0x06ed: ctx_chan_wait_0 */
0x4014cf40, 0x4014cf40,
0xf41f44f0, 0xf41f44f0,
0x32d0fa1b, 0x32d0fa1b,
0x000bfe00, 0x000bfe00,
0xb61f2af0, 0xb61f2af0,
0x20b60424, 0x20b60424,
0x3c87f102, 0xf094bd02,
0x0684b608, 0x07f10899,
0x03f00f00,
0x0009d002,
0x17f104bd,
0x14b60a04,
0x0012d006,
0x0a2017f1,
0xf00614b6,
0x23f10227,
0x12d08000,
0x1017f000,
0x020027f1,
0xfa0223f0,
0x03f80512,
0x99f094bd, 0x99f094bd,
0x0089d008, 0x0007f108,
0x0a0417f1, 0x0203f017,
0xd00614b6, 0xbd0009d0,
0x17f10012, 0x81019804,
0x14b60a20,
0x0227f006,
0x800023f1,
0xf00012d0,
0x27f11017,
0x23f00200,
0x0512fa02,
0x87f103f8,
0x84b6085c,
0xf094bd06,
0x89d00899,
0x81019800,
0x981814b6, 0x981814b6,
0x25b68002, 0x25b68002,
0x0512fd08, 0x0512fd08,
0xf1160180, 0xbd160180,
0xb6083c87, 0x0999f094,
0x94bd0684, 0x0f0007f1,
0xd00999f0, 0xd00203f0,
0x27f10089, 0x04bd0009,
0x24b60a04, 0x0a0427f1,
0x0021d006, 0xd00624b6,
0xf10127f0, 0x27f00021,
0xb60a2017, 0x2017f101,
0x12d00614, 0x0614b60a,
0x0017f100, 0xf10012d0,
0x0613f001,
0xf80501fa,
0x5c87f103,
0x0684b608,
0x99f094bd,
0x0089d009,
0x085c87f1,
0xbd0684b6,
0x0599f094,
0xf80089d0,
/* 0x0781: ctx_chan */
0xfd21f500,
0x8421f505,
0x0ca7f006,
0xf1c921f4,
0xb60a1017,
0x27f00614,
0x0012d005,
/* 0x079c: ctx_chan_wait */
0xfd0012cf,
0x1bf40522,
0x1521f5fa,
/* 0x07ab: ctx_mmio_exec */
0x9800f806,
0x27f14103,
0x24b60a04,
0x0023d006,
/* 0x07ba: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x07cc: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b68d,
0xf40112b6,
/* 0x07de: ctx_mmio_done */
0x0398df1b,
0x0023d016,
0xf1400080,
0xf0010017, 0xf0010017,
0x01fa0613, 0x01fa0613,
0xf803f806, 0xbd03f805,
/* 0x07f5: ctx_xfer */ 0x0999f094,
0x00f7f100, 0x170007f1,
0x06f4b60c, 0xd00203f0,
0xd004e7f0, 0x04bd0009,
/* 0x0802: ctx_xfer_idle */ 0x99f094bd,
0xfecf80fe, 0x0007f105,
0x00e4f100, 0x0203f017,
0xf91bf420, 0xbd0009d0,
0xf40611f4, /* 0x07bb: ctx_chan */
/* 0x0812: ctx_xfer_pre */ 0xf500f804,
0xf7f01102, 0xf5062b21,
0x6421f510, 0xf006b221,
0xfd21f506, 0x21f40ca7,
0x1c11f405, 0x1017f1c9,
/* 0x0820: ctx_xfer_pre_load */ 0x0614b60a,
0xf502f7f0, 0xd00527f0,
0xf5062321, /* 0x07d6: ctx_chan_wait */
0xf5063221, 0x12cf0012,
0xbd064421, 0x0522fd00,
0x2321f5f4, 0xf5fa1bf4,
0x8421f506, 0xf8064321,
/* 0x0839: ctx_xfer_exec */ /* 0x07e5: ctx_mmio_exec */
0x16019806, 0x41039800,
0x041427f1, 0x0a0427f1,
0xd00624b6, 0xd00624b6,
0xe7f10020, 0x34bd0023,
0xe3f0a500, /* 0x07f4: ctx_mmio_loop */
0x021fb941, 0xf4ff34c4,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x0806: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb68d21f4, 0xb68d21f4,
0xfcf004e0, 0x12b60830,
0x022cf001, 0xdf1bf401,
0xfd0124b6, /* 0x0818: ctx_mmio_done */
0x21f405f2, 0xd0160398,
0xfc17f18d, 0x00800023,
0x0213f04a, 0x0017f140,
0xd00c27f0, 0x0613f001,
0x21f50012, 0xf80601fa,
0x27f10207, /* 0x082f: ctx_xfer */
0x23f047fc, 0xf100f803,
0x0020d002, 0xb60c00f7,
0xb6012cf0, 0xe7f006f4,
0x12d00320, 0x80fed004,
0x01acf000, /* 0x083c: ctx_xfer_idle */
0xf006a5f0, 0xf100fecf,
0x0c9800b7, 0xf42000e4,
0x010d9800, 0x11f4f91b,
0xf500e7f0, 0x1102f406,
0xf0015c21, /* 0x084c: ctx_xfer_pre */
0x21f508a7, 0xf510f7f0,
0x21f50103, 0xf5069221,
0x01f40207, 0xf4062b21,
0x0ca7f022, /* 0x085a: ctx_xfer_pre_load */
0xf1c921f4, 0xf7f01c11,
0xb60a1017, 0x5121f502,
0x27f00614, 0x6021f506,
0x0012d005, 0x7221f506,
/* 0x08c0: ctx_xfer_post_save_wait */
0xfd0012cf,
0x1bf40522,
0x3202f4fa,
/* 0x08cc: ctx_xfer_post */
0xf502f7f0,
0xbd062321,
0x6421f5f4,
0x2621f506,
0x3221f502,
0xf5f4bd06, 0xf5f4bd06,
0xf4062321, 0xf5065121,
0x01981011, /* 0x0873: ctx_xfer_exec */
0x0511fd40, 0x9806b221,
0xf5070bf4, 0x27f11601,
/* 0x08f7: ctx_xfer_no_post_mmio */ 0x24b60414,
0xf507ab21, 0x0020d006,
/* 0x08fb: ctx_xfer_done */ 0xa500e7f1,
0xf8061521, 0xb941e3f0,
0x21f4021f,
0x04e0b68d,
0xf001fcf0,
0x24b6022c,
0x05f2fd01,
0xf18d21f4,
0xf04afc17,
0x27f00213,
0x0012d00c,
0x021521f5,
0x47fc27f1,
0xd00223f0,
0x2cf00020,
0x0320b601,
0xf00012d0,
0xa5f001ac,
0x00b7f006,
0x98000c98,
0xe7f0010d,
0x6621f500,
0x08a7f001,
0x010921f5,
0x021521f5,
0xf02201f4,
0x21f40ca7,
0x1017f1c9,
0x0614b60a,
0xd00527f0,
/* 0x08fa: ctx_xfer_post_save_wait */
0x12cf0012,
0x0522fd00,
0xf4fa1bf4,
/* 0x0906: ctx_xfer_post */
0xf7f03202,
0x5121f502,
0xf5f4bd06,
0xf5069221,
0xf5023421,
0xbd066021,
0x5121f5f4,
0x1011f406,
0xfd400198,
0x0bf40511,
0xe521f507,
/* 0x0931: ctx_xfer_no_post_mmio */
0x4321f507,
/* 0x0935: ctx_xfer_done */
0x0000f806,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
}; };
...@@ -206,14 +206,14 @@ uint32_t nvd7_grhub_data[] = { ...@@ -206,14 +206,14 @@ uint32_t nvd7_grhub_data[] = {
}; };
uint32_t nvd7_grhub_code[] = { uint32_t nvd7_grhub_code[] = {
0x03090ef5, 0x031b0ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -245,7 +245,7 @@ uint32_t nvd7_grhub_code[] = { ...@@ -245,7 +245,7 @@ uint32_t nvd7_grhub_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -267,63 +267,66 @@ uint32_t nvd7_grhub_code[] = { ...@@ -267,63 +267,66 @@ uint32_t nvd7_grhub_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -331,8 +334,8 @@ uint32_t nvd7_grhub_code[] = { ...@@ -331,8 +334,8 @@ uint32_t nvd7_grhub_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -341,76 +344,77 @@ uint32_t nvd7_grhub_code[] = { ...@@ -341,76 +344,77 @@ uint32_t nvd7_grhub_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -419,270 +423,278 @@ uint32_t nvd7_grhub_code[] = { ...@@ -419,270 +423,278 @@ uint32_t nvd7_grhub_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0x07f100f8,
0xe4b60814, 0x03f00500,
0x00efd006, 0x000fd002,
0x0c1ce7f1, 0xf7f004bd,
0xf006e4b6, 0x0007f101,
0xefd001f7, 0x0303f007,
0xf8e0fc00, 0xbd000fd0,
/* 0x0309: init */ /* 0x031b: init */
0xfe04bd00, 0xbd00f804,
0x07fe0004, 0x0004fe04,
0x0017f100, 0xf10007fe,
0x0227f012, 0xf0120017,
0xf10012d0, 0x12d00227,
0xfe058517, 0xb117f100,
0x17f10010, 0x0010fe05,
0x10d00400, 0x040017f1,
0x0437f1c0, 0xf1c010d0,
0x0634b604, 0xb6040437,
0x200327f1, 0x27f10634,
0xf10032d0, 0x32d02003,
0xd0200427,
0x27f10132,
0x32d0200b,
0x0c27f102,
0x0732d020,
0x0c2427f1,
0xb90624b6,
0x23d00003,
0x0427f100, 0x0427f100,
0x0023f087, 0x0132d020,
0xb70012d0, 0x200b27f1,
0xf0010012, 0xf10232d0,
0x12d00427, 0xd0200c27,
0x1031f400, 0x27f10732,
0x9604e7f1, 0x24b60c24,
0xf440e3f0, 0x0003b906,
0xf1c76821, 0xf10023d0,
0x03018090, 0xf0870427,
0x801ff4f0, 0x12d00023,
0x17f0020f, 0x0012b700,
0x041fbb01, 0x0427f001,
0xf10112b6, 0xf40012d0,
0xb6040c27, 0xe7f11031,
0x21d00624, 0xe3f09604,
0x4021d000, 0x6821f440,
0x010017f1, 0x8090f1c7,
0x98000e98, 0xf4f00301,
0x21f5010f, 0x020f801f,
0x37f1013d, 0xbb0117f0,
0x34b60700, 0x12b6041f,
0x08149506, 0x0c27f101,
0xd00034d0, 0x0624b604,
0x30b74034, 0xd00021d0,
0x1fbb1300, 0x17f14021,
0x02f5b600, 0x0e980100,
0xb6003fd0, 0x010f9800,
0x10b60815, 0x014721f5,
0x0814b601, 0x070037f1,
0xf5021fb9, 0x950634b6,
0xbb026321, 0x34d00814,
0x0398001f, 0x4034d000,
0x0047f102, 0x130030b7,
0x5043f020, 0xb6001fbb,
/* 0x03e4: init_gpc */ 0x3fd002f5,
0x08044ea0, 0x0815b600,
0xf4021fb9, 0xb60110b6,
0x4ea08d21, 0x1fb90814,
0xf4bd010c, 0x7121f502,
0xa08d21f4, 0x001fbb02,
0xf401044e, 0xf1020398,
0x4ea08d21, 0xf0200047,
0xf7f00100, /* 0x03f6: init_gpc */
0x4ea05043,
0x1fb90804,
0x8d21f402, 0x8d21f402,
0x08004ea0, 0x010c4ea0,
/* 0x040c: init_gpc_wait */ 0x21f4f4bd,
0xc86821f4, 0x044ea08d,
0x0bf41fff, 0x8d21f401,
0x044ea0fa, 0x01004ea0,
0x6821f408, 0xf402f7f0,
0xb7001fbb, 0x4ea08d21,
0xb6800040, /* 0x041e: init_gpc_wait */
0x1bf40132, 0x21f40800,
0x0027f1be, 0x1fffc868,
0x0624b608, 0xa0fa0bf4,
0xb74021d0, 0xf408044e,
0xbd080020, 0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf0010007,
0x01d00203,
0xbd04bd00,
0x1f19f014, 0x1f19f014,
/* 0x043f: main */ 0x080007f1,
0xf40021d0, 0xd00203f0,
0x28f40031, 0x04bd0001,
0x10d7f000, /* 0x0458: main */
0xf43921f4, 0xf40031f4,
0xe4b1f401, 0xd7f00028,
0x1bf54001, 0x3921f410,
0x87f100d1, 0xb1f401f4,
0x84b6083c, 0xf54001e4,
0xf094bd06, 0xbd00de1b,
0x89d00499, 0x0499f094,
0x0017f100, 0x0f0007f1,
0x0614b60b, 0xd00203f0,
0xcf4012cf, 0x04bd0009,
0x13c80011, 0x0b0017f1,
0x7e0bf41f, 0xcf0614b6,
0x11cf4012,
0x1f13c800,
0x00870bf5,
0xf41f23c8, 0xf41f23c8,
0x20f95a0b, 0x20f9620b,
0xf10212b9, 0xbd0212b9,
0xb6083c87,
0x94bd0684,
0xd00799f0,
0x32f40089,
0x0231f401,
0x07f521f5,
0x085c87f1,
0xbd0684b6,
0x0799f094, 0x0799f094,
0xfc0089d0, 0x0f0007f1,
0x3c87f120, 0xd00203f0,
0x0684b608, 0x04bd0009,
0x99f094bd, 0xf40132f4,
0x0089d006, 0x21f50231,
0xf50131f4, 0x94bd082f,
0xf107f521, 0xf10799f0,
0xb6085c87, 0xf0170007,
0x94bd0684, 0x09d00203,
0xd00699f0, 0xfc04bd00,
0x0ef40089, 0xf094bd20,
/* 0x04d5: chsw_prev_no_next */ 0x07f10699,
0x03f00f00,
0x0009d002,
0x31f404bd,
0x2f21f501,
0xf094bd08,
0x07f10699,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x04f9: chsw_prev_no_next */
0xb920f931, 0xb920f931,
0x32f40212, 0x32f40212,
0x0232f401, 0x0232f401,
0x07f521f5, 0x082f21f5,
0x17f120fc, 0x17f120fc,
0x14b60b00, 0x14b60b00,
0x0012d006, 0x0012d006,
/* 0x04f3: chsw_no_prev */ /* 0x0517: chsw_no_prev */
0xc8130ef4, 0xc8130ef4,
0x0bf41f23, 0x0bf41f23,
0x0131f40d, 0x0131f40d,
0xf50232f4, 0xf50232f4,
/* 0x0503: chsw_done */ /* 0x0527: chsw_done */
0xf107f521, 0xf1082f21,
0xb60b0c17, 0xb60b0c17,
0x27f00614, 0x27f00614,
0x0012d001, 0x0012d001,
0x085c87f1,
0xbd0684b6,
0x0499f094,
0xf50089d0,
/* 0x0523: main_not_ctx_switch */
0xb0ff200e,
0x1bf401e4,
0x02f2b90d,
0x078121f5,
/* 0x0533: main_not_ctx_chan */
0xb0420ef4,
0x1bf402e4,
0x3c87f12e,
0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d007, 0x0007f104,
0x0203f017,
0xbd0009d0,
0x130ef504,
/* 0x0549: main_not_ctx_switch */
0x01e4b0ff,
0xb90d1bf4,
0x21f502f2,
0x0ef407bb,
/* 0x0559: main_not_ctx_chan */
0x02e4b046,
0xbd321bf4,
0x0799f094,
0x0f0007f1,
0xd00203f0,
0x04bd0009,
0xf40132f4, 0xf40132f4,
0x21f50232, 0x21f50232,
0x87f107f5, 0x94bd082f,
0x84b6085c, 0xf10799f0,
0xf094bd06, 0xf0170007,
0x89d00799, 0x09d00203,
0x110ef400, 0xf404bd00,
/* 0x0564: main_not_ctx_save */ /* 0x058e: main_not_ctx_save */
0xf010ef94, 0xef94110e,
0x21f501f5, 0x01f5f010,
0x0ef502ec, 0x02fe21f5,
/* 0x0572: main_done */ 0xfec00ef5,
0x17f1fed1, /* 0x059c: main_done */
0x14b60820, 0x29f024bd,
0xf024bd06, 0x0007f11f,
0x12d01f29, 0x0203f008,
0xbe0ef500, 0xbd0002d0,
/* 0x0585: ih */ 0xab0ef504,
/* 0x05b1: ih */
0xfe80f9fe, 0xfe80f9fe,
0x80f90188, 0x80f90188,
0xa0f990f9, 0xa0f990f9,
0xd0f9b0f9, 0xd0f9b0f9,
0xf0f9e0f9, 0xf0f9e0f9,
0xc4800acf, 0x0acf04bd,
0x0bf404ab, 0x04abc480,
0x00b7f11d, 0xf11d0bf4,
0x10d7f019, 0xf01900b7,
0xcf40becf, 0xbecf10d7,
0x21f400bf, 0x00bfcf40,
0x00b0b704, 0xb70421f4,
0x01e7f004, 0xf00400b0,
/* 0x05bb: ih_no_fifo */ 0xbed001e7,
0xe400bed0, /* 0x05e9: ih_no_fifo */
0xf40100ab, 0x00abe400,
0xd7f00d0b, 0x0d0bf401,
0x01e7f110, 0xf110d7f0,
0x0421f440, 0xf44001e7,
/* 0x05cc: ih_no_ctxsw */ /* 0x05fa: ih_no_ctxsw */
0x0104b7f1, 0xb7f10421,
0xabffb0bd, 0xb0bd0104,
0x0d0bf4b4, 0xf4b4abff,
0x0c1ca7f1, 0xa7f10d0b,
0xd006a4b6, 0xa4b60c1c,
/* 0x05e2: ih_no_other */ 0x00abd006,
0x0ad000ab, /* 0x0610: ih_no_other */
0xfcf0fc40, 0xfc400ad0,
0xfcd0fce0, 0xfce0fcf0,
0xfca0fcb0, 0xfcb0fcd0,
0xfe80fc90, 0xfc90fca0,
0x80fc0088, 0x0088fe80,
0xf80032f4, 0x32f480fc,
/* 0x05fd: ctx_4160s */ /* 0x062b: ctx_4160s */
0x60e7f101, 0xf101f800,
0x40e3f041, 0xf04160e7,
0xf401f7f0, 0xf7f040e3,
/* 0x060a: ctx_4160s_wait */ 0x8d21f401,
0x21f48d21, /* 0x0638: ctx_4160s_wait */
0x04ffc868, 0xc86821f4,
0xf8fa0bf4, 0x0bf404ff,
/* 0x0615: ctx_4160c */ /* 0x0643: ctx_4160c */
0x60e7f100, 0xf100f8fa,
0xf04160e7,
0xf4bd40e3,
0xf88d21f4,
/* 0x0651: ctx_4170s */
0x70e7f100,
0x40e3f041, 0x40e3f041,
0x21f4f4bd, 0xf410f5f0,
/* 0x0623: ctx_4170s */
0xf100f88d,
0xf04170e7,
0xf5f040e3,
0x8d21f410,
/* 0x0632: ctx_4170w */
0xe7f100f8,
0xe3f04170,
0x6821f440,
0xf410f4f0,
0x00f8f31b,
/* 0x0644: ctx_redswitch */
0x0614e7f1,
0xf106e4b6,
0xd00270f7,
0xf7f000ef,
/* 0x0655: ctx_redswitch_delay */
0x01f2b608,
0xf1fd1bf4,
0xd00770f7,
0x00f800ef,
/* 0x0664: ctx_86c */
0x086ce7f1,
0xd006e4b6,
0xe7f100ef,
0xe3f08a14,
0x8d21f440,
0xa86ce7f1,
0xf441e3f0,
0x00f88d21, 0x00f88d21,
/* 0x0684: ctx_load */ /* 0x0660: ctx_4170w */
0x083c87f1, 0x4170e7f1,
0xbd0684b6, 0xf440e3f0,
0x0599f094, 0xf4f06821,
0xf00089d0, 0xf31bf410,
/* 0x0672: ctx_redswitch */
0xe7f100f8,
0xe4b60614,
0x70f7f106,
0x00efd002,
/* 0x0683: ctx_redswitch_delay */
0xb608f7f0,
0x1bf401f2,
0x70f7f1fd,
0x00efd007,
/* 0x0692: ctx_86c */
0xe7f100f8,
0xe4b6086c,
0x00efd006,
0x8a14e7f1,
0xf440e3f0,
0xe7f18d21,
0xe3f0a86c,
0x8d21f441,
/* 0x06b2: ctx_load */
0x94bd00f8,
0xf10599f0,
0xf00f0007,
0x09d00203,
0xf004bd00,
0x21f40ca7, 0x21f40ca7,
0x2417f1c9, 0x2417f1c9,
0x0614b60a, 0x0614b60a,
...@@ -693,165 +705,217 @@ uint32_t nvd7_grhub_code[] = { ...@@ -693,165 +705,217 @@ uint32_t nvd7_grhub_code[] = {
0x0614b60a, 0x0614b60a,
0xd00747f0, 0xd00747f0,
0x14d00012, 0x14d00012,
/* 0x06bd: ctx_chan_wait_0 */ /* 0x06ed: ctx_chan_wait_0 */
0x4014cf40, 0x4014cf40,
0xf41f44f0, 0xf41f44f0,
0x32d0fa1b, 0x32d0fa1b,
0x000bfe00, 0x000bfe00,
0xb61f2af0, 0xb61f2af0,
0x20b60424, 0x20b60424,
0x3c87f102, 0xf094bd02,
0x0684b608, 0x07f10899,
0x03f00f00,
0x0009d002,
0x17f104bd,
0x14b60a04,
0x0012d006,
0x0a2017f1,
0xf00614b6,
0x23f10227,
0x12d08000,
0x1017f000,
0x020027f1,
0xfa0223f0,
0x03f80512,
0x99f094bd, 0x99f094bd,
0x0089d008, 0x0007f108,
0x0a0417f1, 0x0203f017,
0xd00614b6, 0xbd0009d0,
0x17f10012, 0x81019804,
0x14b60a20,
0x0227f006,
0x800023f1,
0xf00012d0,
0x27f11017,
0x23f00200,
0x0512fa02,
0x87f103f8,
0x84b6085c,
0xf094bd06,
0x89d00899,
0x81019800,
0x981814b6, 0x981814b6,
0x25b68002, 0x25b68002,
0x0512fd08, 0x0512fd08,
0xf1160180, 0xbd160180,
0xb6083c87, 0x0999f094,
0x94bd0684, 0x0f0007f1,
0xd00999f0, 0xd00203f0,
0x27f10089, 0x04bd0009,
0x24b60a04, 0x0a0427f1,
0x0021d006, 0xd00624b6,
0xf10127f0, 0x27f00021,
0xb60a2017, 0x2017f101,
0x12d00614, 0x0614b60a,
0x0017f100, 0xf10012d0,
0x0613f001,
0xf80501fa,
0x5c87f103,
0x0684b608,
0x99f094bd,
0x0089d009,
0x085c87f1,
0xbd0684b6,
0x0599f094,
0xf80089d0,
/* 0x0781: ctx_chan */
0xfd21f500,
0x8421f505,
0x0ca7f006,
0xf1c921f4,
0xb60a1017,
0x27f00614,
0x0012d005,
/* 0x079c: ctx_chan_wait */
0xfd0012cf,
0x1bf40522,
0x1521f5fa,
/* 0x07ab: ctx_mmio_exec */
0x9800f806,
0x27f14103,
0x24b60a04,
0x0023d006,
/* 0x07ba: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x07cc: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b68d,
0xf40112b6,
/* 0x07de: ctx_mmio_done */
0x0398df1b,
0x0023d016,
0xf1400080,
0xf0010017, 0xf0010017,
0x01fa0613, 0x01fa0613,
0xf803f806, 0xbd03f805,
/* 0x07f5: ctx_xfer */ 0x0999f094,
0x00f7f100, 0x170007f1,
0x06f4b60c, 0xd00203f0,
0xd004e7f0, 0x04bd0009,
/* 0x0802: ctx_xfer_idle */ 0x99f094bd,
0xfecf80fe, 0x0007f105,
0x00e4f100, 0x0203f017,
0xf91bf420, 0xbd0009d0,
0xf40611f4, /* 0x07bb: ctx_chan */
/* 0x0812: ctx_xfer_pre */ 0xf500f804,
0xf7f01102, 0xf5062b21,
0x6421f510, 0xf006b221,
0xfd21f506, 0x21f40ca7,
0x1c11f405, 0x1017f1c9,
/* 0x0820: ctx_xfer_pre_load */ 0x0614b60a,
0xf502f7f0, 0xd00527f0,
0xf5062321, /* 0x07d6: ctx_chan_wait */
0xf5063221, 0x12cf0012,
0xbd064421, 0x0522fd00,
0x2321f5f4, 0xf5fa1bf4,
0x8421f506, 0xf8064321,
/* 0x0839: ctx_xfer_exec */ /* 0x07e5: ctx_mmio_exec */
0x16019806, 0x41039800,
0x041427f1, 0x0a0427f1,
0xd00624b6, 0xd00624b6,
0xe7f10020, 0x34bd0023,
0xe3f0a500, /* 0x07f4: ctx_mmio_loop */
0x021fb941, 0xf4ff34c4,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x0806: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb68d21f4, 0xb68d21f4,
0xfcf004e0, 0x12b60830,
0x022cf001, 0xdf1bf401,
0xfd0124b6, /* 0x0818: ctx_mmio_done */
0x21f405f2, 0xd0160398,
0xfc17f18d, 0x00800023,
0x0213f04a, 0x0017f140,
0xd00c27f0, 0x0613f001,
0x21f50012, 0xf80601fa,
0x27f10207, /* 0x082f: ctx_xfer */
0x23f047fc, 0xf100f803,
0x0020d002, 0xb60c00f7,
0xb6012cf0, 0xe7f006f4,
0x12d00320, 0x80fed004,
0x01acf000, /* 0x083c: ctx_xfer_idle */
0xf006a5f0, 0xf100fecf,
0x0c9800b7, 0xf42000e4,
0x010d9800, 0x11f4f91b,
0xf500e7f0, 0x1102f406,
0xf0015c21, /* 0x084c: ctx_xfer_pre */
0x21f508a7, 0xf510f7f0,
0x21f50103, 0xf5069221,
0x01f40207, 0xf4062b21,
0x0ca7f022, /* 0x085a: ctx_xfer_pre_load */
0xf1c921f4, 0xf7f01c11,
0xb60a1017, 0x5121f502,
0x27f00614, 0x6021f506,
0x0012d005, 0x7221f506,
/* 0x08c0: ctx_xfer_post_save_wait */
0xfd0012cf,
0x1bf40522,
0x3202f4fa,
/* 0x08cc: ctx_xfer_post */
0xf502f7f0,
0xbd062321,
0x6421f5f4,
0x2621f506,
0x3221f502,
0xf5f4bd06, 0xf5f4bd06,
0xf4062321, 0xf5065121,
0x01981011, /* 0x0873: ctx_xfer_exec */
0x0511fd40, 0x9806b221,
0xf5070bf4, 0x27f11601,
/* 0x08f7: ctx_xfer_no_post_mmio */ 0x24b60414,
0xf507ab21, 0x0020d006,
/* 0x08fb: ctx_xfer_done */ 0xa500e7f1,
0xf8061521, 0xb941e3f0,
0x21f4021f,
0x04e0b68d,
0xf001fcf0,
0x24b6022c,
0x05f2fd01,
0xf18d21f4,
0xf04afc17,
0x27f00213,
0x0012d00c,
0x021521f5,
0x47fc27f1,
0xd00223f0,
0x2cf00020,
0x0320b601,
0xf00012d0,
0xa5f001ac,
0x00b7f006,
0x98000c98,
0xe7f0010d,
0x6621f500,
0x08a7f001,
0x010921f5,
0x021521f5,
0xf02201f4,
0x21f40ca7,
0x1017f1c9,
0x0614b60a,
0xd00527f0,
/* 0x08fa: ctx_xfer_post_save_wait */
0x12cf0012,
0x0522fd00,
0xf4fa1bf4,
/* 0x0906: ctx_xfer_post */
0xf7f03202,
0x5121f502,
0xf5f4bd06,
0xf5069221,
0xf5023421,
0xbd066021,
0x5121f5f4,
0x1011f406,
0xfd400198,
0x0bf40511,
0xe521f507,
/* 0x0931: ctx_xfer_no_post_mmio */
0x4321f507,
/* 0x0935: ctx_xfer_done */
0x0000f806,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
}; };
...@@ -206,14 +206,14 @@ uint32_t nve0_grhub_data[] = { ...@@ -206,14 +206,14 @@ uint32_t nve0_grhub_data[] = {
}; };
uint32_t nve0_grhub_code[] = { uint32_t nve0_grhub_code[] = {
0x03090ef5, 0x031b0ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -245,7 +245,7 @@ uint32_t nve0_grhub_code[] = { ...@@ -245,7 +245,7 @@ uint32_t nve0_grhub_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -267,63 +267,66 @@ uint32_t nve0_grhub_code[] = { ...@@ -267,63 +267,66 @@ uint32_t nve0_grhub_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f00f00,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f00f00,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf00f0007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -331,8 +334,8 @@ uint32_t nve0_grhub_code[] = { ...@@ -331,8 +334,8 @@ uint32_t nve0_grhub_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -341,76 +344,77 @@ uint32_t nve0_grhub_code[] = { ...@@ -341,76 +344,77 @@ uint32_t nve0_grhub_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f00f00,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -419,258 +423,266 @@ uint32_t nve0_grhub_code[] = { ...@@ -419,258 +423,266 @@ uint32_t nve0_grhub_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0x07f100f8,
0xe4b60814, 0x03f00500,
0x00efd006, 0x000fd002,
0x0c1ce7f1, 0xf7f004bd,
0xf006e4b6, 0x0007f101,
0xefd001f7, 0x0303f007,
0xf8e0fc00, 0xbd000fd0,
/* 0x0309: init */ /* 0x031b: init */
0xfe04bd00, 0xbd00f804,
0x07fe0004, 0x0004fe04,
0x0017f100, 0xf10007fe,
0x0227f012, 0xf0120017,
0xf10012d0, 0x12d00227,
0xfe058517, 0xb117f100,
0x17f10010, 0x0010fe05,
0x10d00400, 0x040017f1,
0x0437f1c0, 0xf1c010d0,
0x0634b604, 0xb6040437,
0x200327f1, 0x27f10634,
0xf10032d0, 0x32d02003,
0xd0200427,
0x27f10132,
0x32d0200b,
0x0c27f102,
0x0732d020,
0x0c2427f1,
0xb90624b6,
0x23d00003,
0x0427f100, 0x0427f100,
0x0023f087, 0x0132d020,
0xb70012d0, 0x200b27f1,
0xf0010012, 0xf10232d0,
0x12d00427, 0xd0200c27,
0x1031f400, 0x27f10732,
0x9604e7f1, 0x24b60c24,
0xf440e3f0, 0x0003b906,
0xf1c76821, 0xf10023d0,
0x03018090, 0xf0870427,
0x801ff4f0, 0x12d00023,
0x17f0020f, 0x0012b700,
0x041fbb01, 0x0427f001,
0xf10112b6, 0xf40012d0,
0xb6040c27, 0xe7f11031,
0x21d00624, 0xe3f09604,
0x4021d000, 0x6821f440,
0x010017f1, 0x8090f1c7,
0x98000e98, 0xf4f00301,
0x21f5010f, 0x020f801f,
0x37f1013d, 0xbb0117f0,
0x34b60700, 0x12b6041f,
0x08149506, 0x0c27f101,
0xd00034d0, 0x0624b604,
0x30b74034, 0xd00021d0,
0x1fbb1300, 0x17f14021,
0x02f5b600, 0x0e980100,
0xb6003fd0, 0x010f9800,
0x10b60815, 0x014721f5,
0x0814b601, 0x070037f1,
0xf5021fb9, 0x950634b6,
0xbb026321, 0x34d00814,
0x0398001f, 0x4034d000,
0x0047f102, 0x130030b7,
0x5043f020, 0xb6001fbb,
/* 0x03e4: init_gpc */ 0x3fd002f5,
0x08044ea0, 0x0815b600,
0xf4021fb9, 0xb60110b6,
0x4ea08d21, 0x1fb90814,
0xf4bd010c, 0x7121f502,
0xa08d21f4, 0x001fbb02,
0xf401044e, 0xf1020398,
0x4ea08d21, 0xf0200047,
0xf7f00100, /* 0x03f6: init_gpc */
0x4ea05043,
0x1fb90804,
0x8d21f402, 0x8d21f402,
0x08004ea0, 0x010c4ea0,
/* 0x040c: init_gpc_wait */ 0x21f4f4bd,
0xc86821f4, 0x044ea08d,
0x0bf41fff, 0x8d21f401,
0x044ea0fa, 0x01004ea0,
0x6821f408, 0xf402f7f0,
0xb7001fbb, 0x4ea08d21,
0xb6800040, /* 0x041e: init_gpc_wait */
0x1bf40132, 0x21f40800,
0x0027f1be, 0x1fffc868,
0x0624b608, 0xa0fa0bf4,
0xb74021d0, 0xf408044e,
0xbd080020, 0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf0010007,
0x01d00203,
0xbd04bd00,
0x1f19f014, 0x1f19f014,
/* 0x043f: main */ 0x080007f1,
0xf40021d0, 0xd00203f0,
0x28f40031, 0x04bd0001,
0x10d7f000, /* 0x0458: main */
0xf43921f4, 0xf40031f4,
0xe4b1f401, 0xd7f00028,
0x1bf54001, 0x3921f410,
0x87f100d1, 0xb1f401f4,
0x84b6083c, 0xf54001e4,
0xf094bd06, 0xbd00de1b,
0x89d00499, 0x0499f094,
0x0017f100, 0x0f0007f1,
0x0614b60b, 0xd00203f0,
0xcf4012cf, 0x04bd0009,
0x13c80011, 0x0b0017f1,
0x7e0bf41f, 0xcf0614b6,
0x11cf4012,
0x1f13c800,
0x00870bf5,
0xf41f23c8, 0xf41f23c8,
0x20f95a0b, 0x20f9620b,
0xf10212b9, 0xbd0212b9,
0xb6083c87,
0x94bd0684,
0xd00799f0,
0x32f40089,
0x0231f401,
0x07c721f5,
0x085c87f1,
0xbd0684b6,
0x0799f094, 0x0799f094,
0xfc0089d0, 0x0f0007f1,
0x3c87f120, 0xd00203f0,
0x0684b608, 0x04bd0009,
0x99f094bd, 0xf40132f4,
0x0089d006, 0x21f50231,
0xf50131f4, 0x94bd0801,
0xf107c721, 0xf10799f0,
0xb6085c87, 0xf0170007,
0x94bd0684, 0x09d00203,
0xd00699f0, 0xfc04bd00,
0x0ef40089, 0xf094bd20,
/* 0x04d5: chsw_prev_no_next */ 0x07f10699,
0x03f00f00,
0x0009d002,
0x31f404bd,
0x0121f501,
0xf094bd08,
0x07f10699,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x04f9: chsw_prev_no_next */
0xb920f931, 0xb920f931,
0x32f40212, 0x32f40212,
0x0232f401, 0x0232f401,
0x07c721f5, 0x080121f5,
0x17f120fc, 0x17f120fc,
0x14b60b00, 0x14b60b00,
0x0012d006, 0x0012d006,
/* 0x04f3: chsw_no_prev */ /* 0x0517: chsw_no_prev */
0xc8130ef4, 0xc8130ef4,
0x0bf41f23, 0x0bf41f23,
0x0131f40d, 0x0131f40d,
0xf50232f4, 0xf50232f4,
/* 0x0503: chsw_done */ /* 0x0527: chsw_done */
0xf107c721, 0xf1080121,
0xb60b0c17, 0xb60b0c17,
0x27f00614, 0x27f00614,
0x0012d001, 0x0012d001,
0x085c87f1,
0xbd0684b6,
0x0499f094,
0xf50089d0,
/* 0x0523: main_not_ctx_switch */
0xb0ff200e,
0x1bf401e4,
0x02f2b90d,
0x075b21f5,
/* 0x0533: main_not_ctx_chan */
0xb0420ef4,
0x1bf402e4,
0x3c87f12e,
0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d007, 0x0007f104,
0x0203f017,
0xbd0009d0,
0x130ef504,
/* 0x0549: main_not_ctx_switch */
0x01e4b0ff,
0xb90d1bf4,
0x21f502f2,
0x0ef40795,
/* 0x0559: main_not_ctx_chan */
0x02e4b046,
0xbd321bf4,
0x0799f094,
0x0f0007f1,
0xd00203f0,
0x04bd0009,
0xf40132f4, 0xf40132f4,
0x21f50232, 0x21f50232,
0x87f107c7, 0x94bd0801,
0x84b6085c, 0xf10799f0,
0xf094bd06, 0xf0170007,
0x89d00799, 0x09d00203,
0x110ef400, 0xf404bd00,
/* 0x0564: main_not_ctx_save */ /* 0x058e: main_not_ctx_save */
0xf010ef94, 0xef94110e,
0x21f501f5, 0x01f5f010,
0x0ef502ec, 0x02fe21f5,
/* 0x0572: main_done */ 0xfec00ef5,
0x17f1fed1, /* 0x059c: main_done */
0x14b60820, 0x29f024bd,
0xf024bd06, 0x0007f11f,
0x12d01f29, 0x0203f008,
0xbe0ef500, 0xbd0002d0,
/* 0x0585: ih */ 0xab0ef504,
/* 0x05b1: ih */
0xfe80f9fe, 0xfe80f9fe,
0x80f90188, 0x80f90188,
0xa0f990f9, 0xa0f990f9,
0xd0f9b0f9, 0xd0f9b0f9,
0xf0f9e0f9, 0xf0f9e0f9,
0xc4800acf, 0x0acf04bd,
0x0bf404ab, 0x04abc480,
0x00b7f11d, 0xf11d0bf4,
0x10d7f019, 0xf01900b7,
0xcf40becf, 0xbecf10d7,
0x21f400bf, 0x00bfcf40,
0x00b0b704, 0xb70421f4,
0x01e7f004, 0xf00400b0,
/* 0x05bb: ih_no_fifo */ 0xbed001e7,
0xe400bed0, /* 0x05e9: ih_no_fifo */
0xf40100ab, 0x00abe400,
0xd7f00d0b, 0x0d0bf401,
0x01e7f110, 0xf110d7f0,
0x0421f440, 0xf44001e7,
/* 0x05cc: ih_no_ctxsw */ /* 0x05fa: ih_no_ctxsw */
0x0104b7f1, 0xb7f10421,
0xabffb0bd, 0xb0bd0104,
0x0d0bf4b4, 0xf4b4abff,
0x0c1ca7f1, 0xa7f10d0b,
0xd006a4b6, 0xa4b60c1c,
/* 0x05e2: ih_no_other */ 0x00abd006,
0x0ad000ab, /* 0x0610: ih_no_other */
0xfcf0fc40, 0xfc400ad0,
0xfcd0fce0, 0xfce0fcf0,
0xfca0fcb0, 0xfcb0fcd0,
0xfe80fc90, 0xfc90fca0,
0x80fc0088, 0x0088fe80,
0xf80032f4, 0x32f480fc,
/* 0x05fd: ctx_4170s */ /* 0x062b: ctx_4170s */
0x70e7f101, 0xf101f800,
0x40e3f041, 0xf04170e7,
0xf410f5f0, 0xf5f040e3,
0x00f88d21, 0x8d21f410,
/* 0x060c: ctx_4170w */ /* 0x063a: ctx_4170w */
0x4170e7f1,
0xf440e3f0,
0xf4f06821,
0xf31bf410,
/* 0x061e: ctx_redswitch */
0xe7f100f8, 0xe7f100f8,
0xe4b60614, 0xe3f04170,
0x70f7f106, 0x6821f440,
0x00efd002, 0xf410f4f0,
/* 0x062f: ctx_redswitch_delay */ 0x00f8f31b,
0xb608f7f0, /* 0x064c: ctx_redswitch */
0x1bf401f2, 0x0614e7f1,
0x70f7f1fd, 0xf106e4b6,
0x00efd007, 0xd00270f7,
/* 0x063e: ctx_86c */ 0xf7f000ef,
0xe7f100f8, /* 0x065d: ctx_redswitch_delay */
0xe4b6086c, 0x01f2b608,
0x00efd006, 0xf1fd1bf4,
0x8a14e7f1, 0xd00770f7,
0xf440e3f0, 0x00f800ef,
0xe7f18d21, /* 0x066c: ctx_86c */
0xe3f0a86c, 0x086ce7f1,
0x8d21f441, 0xd006e4b6,
/* 0x065e: ctx_load */ 0xe7f100ef,
0x87f100f8, 0xe3f08a14,
0x84b6083c, 0x8d21f440,
0xf094bd06, 0xa86ce7f1,
0x89d00599, 0xf441e3f0,
0x0ca7f000, 0x00f88d21,
/* 0x068c: ctx_load */
0x99f094bd,
0x0007f105,
0x0203f00f,
0xbd0009d0,
0x0ca7f004,
0xf1c921f4, 0xf1c921f4,
0xb60a2417, 0xb60a2417,
0x10d00614, 0x10d00614,
...@@ -680,163 +692,215 @@ uint32_t nve0_grhub_code[] = { ...@@ -680,163 +692,215 @@ uint32_t nve0_grhub_code[] = {
0xb60a0c17, 0xb60a0c17,
0x47f00614, 0x47f00614,
0x0012d007, 0x0012d007,
/* 0x0697: ctx_chan_wait_0 */ /* 0x06c7: ctx_chan_wait_0 */
0xcf4014d0, 0xcf4014d0,
0x44f04014, 0x44f04014,
0xfa1bf41f, 0xfa1bf41f,
0xfe0032d0, 0xfe0032d0,
0x2af0000b, 0x2af0000b,
0x0424b61f, 0x0424b61f,
0xf10220b6, 0xbd0220b6,
0xb6083c87,
0x94bd0684,
0xd00899f0,
0x17f10089,
0x14b60a04,
0x0012d006,
0x0a2017f1,
0xf00614b6,
0x23f10227,
0x12d08000,
0x1017f000,
0x020027f1,
0xfa0223f0,
0x03f80512,
0x085c87f1,
0xbd0684b6,
0x0899f094, 0x0899f094,
0x980089d0, 0x0f0007f1,
0xd00203f0,
0x04bd0009,
0x0a0417f1,
0xd00614b6,
0x17f10012,
0x14b60a20,
0x0227f006,
0x800023f1,
0xf00012d0,
0x27f11017,
0x23f00200,
0x0512fa02,
0x94bd03f8,
0xf10899f0,
0xf0170007,
0x09d00203,
0x9804bd00,
0x14b68101, 0x14b68101,
0x80029818, 0x80029818,
0xfd0825b6, 0xfd0825b6,
0x01800512, 0x01800512,
0x3c87f116, 0xf094bd16,
0x0684b608, 0x07f10999,
0x99f094bd, 0x03f00f00,
0x0089d009, 0x0009d002,
0x0a0427f1, 0x27f104bd,
0xd00624b6, 0x24b60a04,
0x27f00021, 0x0021d006,
0x2017f101, 0xf10127f0,
0x0614b60a, 0xb60a2017,
0xf10012d0, 0x12d00614,
0x0017f100,
0x0613f001,
0xf80501fa,
0xf094bd03,
0x07f10999,
0x03f01700,
0x0009d002,
0x94bd04bd,
0xf10599f0,
0xf0170007,
0x09d00203,
0xf804bd00,
/* 0x0795: ctx_chan */
0x8c21f500,
0x0ca7f006,
0xf1c921f4,
0xb60a1017,
0x27f00614,
0x0012d005,
/* 0x07ac: ctx_chan_wait */
0xfd0012cf,
0x1bf40522,
/* 0x07b7: ctx_mmio_exec */
0x9800f8fa,
0x27f14103,
0x24b60a04,
0x0023d006,
/* 0x07c6: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x07d8: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b68d,
0xf40112b6,
/* 0x07ea: ctx_mmio_done */
0x0398df1b,
0x0023d016,
0xf1400080,
0xf0010017, 0xf0010017,
0x01fa0613, 0x01fa0613,
0xf103f805, 0xf803f806,
0xb6085c87, /* 0x0801: ctx_xfer */
0x94bd0684, 0x00f7f100,
0xd00999f0, 0x06f4b60c,
0x87f10089, 0xd004e7f0,
0x84b6085c, /* 0x080e: ctx_xfer_idle */
0xf094bd06, 0xfecf80fe,
0x89d00599, 0x00e4f100,
/* 0x075b: ctx_chan */ 0xf91bf420,
0xf500f800, 0xf40611f4,
0xf0065e21, /* 0x081e: ctx_xfer_pre */
0x21f40ca7, 0xf7f00d02,
0x1017f1c9, 0x6c21f510,
0x0614b60a, 0x1c11f406,
0xd00527f0, /* 0x0828: ctx_xfer_pre_load */
/* 0x0772: ctx_chan_wait */ 0xf502f7f0,
0x12cf0012, 0xf5062b21,
0x0522fd00, 0xf5063a21,
0xf8fa1bf4, 0xbd064c21,
/* 0x077d: ctx_mmio_exec */ 0x2b21f5f4,
0x41039800, 0x8c21f506,
0x0a0427f1, /* 0x0841: ctx_xfer_exec */
0x16019806,
0x041427f1,
0xd00624b6, 0xd00624b6,
0x34bd0023, 0xe7f10020,
/* 0x078c: ctx_mmio_loop */ 0xe3f0a500,
0xf4ff34c4, 0x021fb941,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x079e: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb68d21f4, 0xb68d21f4,
0x12b60830, 0xfcf004e0,
0xdf1bf401, 0x022cf001,
/* 0x07b0: ctx_mmio_done */ 0xfd0124b6,
0xd0160398, 0x21f405f2,
0x00800023, 0xfc17f18d,
0x0017f140, 0x0213f04a,
0x0613f001, 0xd00c27f0,
0xf80601fa, 0x21f50012,
/* 0x07c7: ctx_xfer */ 0x27f10215,
0xf100f803, 0x23f047fc,
0xb60c00f7, 0x0020d002,
0xe7f006f4, 0xb6012cf0,
0x80fed004, 0x12d00320,
/* 0x07d4: ctx_xfer_idle */ 0x01acf000,
0xf100fecf, 0xf006a5f0,
0xf42000e4, 0x0c9800b7,
0x11f4f91b, 0x010d9800,
0x0d02f406, 0xf500e7f0,
/* 0x07e4: ctx_xfer_pre */ 0xf0016621,
0xf510f7f0, 0x21f508a7,
0xf4063e21, 0x21f50109,
/* 0x07ee: ctx_xfer_pre_load */ 0x01f40215,
0xf7f01c11, 0x0ca7f022,
0xfd21f502, 0xf1c921f4,
0x0c21f505, 0xb60a1017,
0x1e21f506, 0x27f00614,
0x0012d005,
/* 0x08c8: ctx_xfer_post_save_wait */
0xfd0012cf,
0x1bf40522,
0x2e02f4fa,
/* 0x08d4: ctx_xfer_post */
0xf502f7f0,
0xbd062b21,
0x6c21f5f4,
0x3421f506,
0x3a21f502,
0xf5f4bd06, 0xf5f4bd06,
0xf505fd21, 0xf4062b21,
/* 0x0807: ctx_xfer_exec */ 0x01981011,
0x98065e21, 0x0511fd40,
0x27f11601, 0xf5070bf4,
0x24b60414, /* 0x08ff: ctx_xfer_no_post_mmio */
0x0020d006, /* 0x08ff: ctx_xfer_done */
0xa500e7f1, 0xf807b721,
0xb941e3f0, 0x00000000,
0x21f4021f, 0x00000000,
0x04e0b68d, 0x00000000,
0xf001fcf0, 0x00000000,
0x24b6022c, 0x00000000,
0x05f2fd01, 0x00000000,
0xf18d21f4, 0x00000000,
0xf04afc17, 0x00000000,
0x27f00213, 0x00000000,
0x0012d00c, 0x00000000,
0x020721f5, 0x00000000,
0x47fc27f1, 0x00000000,
0xd00223f0, 0x00000000,
0x2cf00020, 0x00000000,
0x0320b601, 0x00000000,
0xf00012d0, 0x00000000,
0xa5f001ac, 0x00000000,
0x00b7f006, 0x00000000,
0x98000c98, 0x00000000,
0xe7f0010d, 0x00000000,
0x5c21f500, 0x00000000,
0x08a7f001, 0x00000000,
0x010321f5, 0x00000000,
0x020721f5, 0x00000000,
0xf02201f4, 0x00000000,
0x21f40ca7, 0x00000000,
0x1017f1c9, 0x00000000,
0x0614b60a, 0x00000000,
0xd00527f0, 0x00000000,
/* 0x088e: ctx_xfer_post_save_wait */ 0x00000000,
0x12cf0012, 0x00000000,
0x0522fd00, 0x00000000,
0xf4fa1bf4, 0x00000000,
/* 0x089a: ctx_xfer_post */ 0x00000000,
0xf7f02e02, 0x00000000,
0xfd21f502, 0x00000000,
0xf5f4bd05, 0x00000000,
0xf5063e21, 0x00000000,
0xf5022621, 0x00000000,
0xbd060c21, 0x00000000,
0xfd21f5f4, 0x00000000,
0x1011f405, 0x00000000,
0xfd400198, 0x00000000,
0x0bf40511, 0x00000000,
0x7d21f507, 0x00000000,
/* 0x08c5: ctx_xfer_no_post_mmio */ 0x00000000,
/* 0x08c5: ctx_xfer_done */ 0x00000000,
0x0000f807, 0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -206,14 +206,14 @@ uint32_t nvf0_grhub_data[] = { ...@@ -206,14 +206,14 @@ uint32_t nvf0_grhub_data[] = {
}; };
uint32_t nvf0_grhub_code[] = { uint32_t nvf0_grhub_code[] = {
0x03090ef5, 0x031b0ef5,
/* 0x0004: queue_put */ /* 0x0004: queue_put */
0x9800d898, 0x9800d898,
0x86f001d9, 0x86f001d9,
0x0489b808, 0x0489b808,
0xf00c1bf4, 0xf00c1bf4,
0x21f502f7, 0x21f502f7,
0x00f802ec, 0x00f802fe,
/* 0x001c: queue_put_next */ /* 0x001c: queue_put_next */
0xb60798c4, 0xb60798c4,
0x8dbb0384, 0x8dbb0384,
...@@ -245,7 +245,7 @@ uint32_t nvf0_grhub_code[] = { ...@@ -245,7 +245,7 @@ uint32_t nvf0_grhub_code[] = {
0xc800bccf, 0xc800bccf,
0x1bf41fcc, 0x1bf41fcc,
0x06a7f0fa, 0x06a7f0fa,
0x010321f5, 0x010921f5,
0xf840bfcf, 0xf840bfcf,
/* 0x008d: nv_wr32 */ /* 0x008d: nv_wr32 */
0x28b7f100, 0x28b7f100,
...@@ -267,63 +267,66 @@ uint32_t nvf0_grhub_code[] = { ...@@ -267,63 +267,66 @@ uint32_t nvf0_grhub_code[] = {
0x0684b604, 0x0684b604,
0xf80080d0, 0xf80080d0,
/* 0x00c9: wait_donez */ /* 0x00c9: wait_donez */
0x3c87f100, 0xf094bd00,
0x0684b608, 0x07f10099,
0x99f094bd, 0x03f03700,
0x0089d000, 0x0009d002,
0x081887f1, 0x07f104bd,
0xd00684b6, 0x03f00600,
/* 0x00e2: wait_donez_ne */ 0x000ad002,
0x87f1008a, /* 0x00e6: wait_donez_ne */
0x84b60400, 0x87f104bd,
0x0088cf06, 0x83f00000,
0x0088cf01,
0xf4888aff, 0xf4888aff,
0x87f1f31b, 0x94bdf31b,
0x84b6085c, 0xf10099f0,
0xf094bd06, 0xf0170007,
0x89d00099, 0x09d00203,
/* 0x0103: wait_doneo */ 0xf804bd00,
0xf100f800, /* 0x0109: wait_doneo */
0xb6083c87, 0xf094bd00,
0x94bd0684, 0x07f10099,
0xd00099f0, 0x03f03700,
0x87f10089, 0x0009d002,
0x87f104bd,
0x84b60818, 0x84b60818,
0x008ad006, 0x008ad006,
/* 0x011c: wait_doneo_e */ /* 0x0124: wait_doneo_e */
0x040087f1, 0x040087f1,
0xcf0684b6, 0xcf0684b6,
0x8aff0088, 0x8aff0088,
0xf30bf488, 0xf30bf488,
0x085c87f1, 0x99f094bd,
0xbd0684b6, 0x0007f100,
0x0099f094, 0x0203f017,
0xf80089d0, 0xbd0009d0,
/* 0x013d: mmctx_size */ /* 0x0147: mmctx_size */
/* 0x013f: nv_mmctx_size_loop */ 0xbd00f804,
0x9894bd00, /* 0x0149: nv_mmctx_size_loop */
0x85b600e8, 0x00e89894,
0x0180b61a, 0xb61a85b6,
0xbb0284b6, 0x84b60180,
0xe0b60098, 0x0098bb02,
0x04efb804, 0xb804e0b6,
0xb9eb1bf4, 0x1bf404ef,
0x00f8029f, 0x029fb9eb,
/* 0x015c: mmctx_xfer */ /* 0x0166: mmctx_xfer */
0x083c87f1, 0x94bd00f8,
0xbd0684b6, 0xf10199f0,
0x0199f094, 0xf0370007,
0xf10089d0, 0x09d00203,
0xf104bd00,
0xb6071087, 0xb6071087,
0x94bd0684, 0x94bd0684,
0xf405bbfd, 0xf405bbfd,
0x8bd0090b, 0x8bd0090b,
0x0099f000, 0x0099f000,
/* 0x0180: mmctx_base_disabled */ /* 0x018c: mmctx_base_disabled */
0xf405eefd, 0xf405eefd,
0x8ed00c0b, 0x8ed00c0b,
0xc08fd080, 0xc08fd080,
/* 0x018f: mmctx_multi_disabled */ /* 0x019b: mmctx_multi_disabled */
0xb70199f0, 0xb70199f0,
0xc8010080, 0xc8010080,
0xb4b600ab, 0xb4b600ab,
...@@ -331,8 +334,8 @@ uint32_t nvf0_grhub_code[] = { ...@@ -331,8 +334,8 @@ uint32_t nvf0_grhub_code[] = {
0xb601aec8, 0xb601aec8,
0xbefd11e4, 0xbefd11e4,
0x008bd005, 0x008bd005,
/* 0x01a8: mmctx_exec_loop */ /* 0x01b4: mmctx_exec_loop */
/* 0x01a8: mmctx_wait_free */ /* 0x01b4: mmctx_wait_free */
0xf0008ecf, 0xf0008ecf,
0x0bf41fe4, 0x0bf41fe4,
0x00ce98fa, 0x00ce98fa,
...@@ -341,76 +344,77 @@ uint32_t nvf0_grhub_code[] = { ...@@ -341,76 +344,77 @@ uint32_t nvf0_grhub_code[] = {
0x04cdb804, 0x04cdb804,
0xc8e81bf4, 0xc8e81bf4,
0x1bf402ab, 0x1bf402ab,
/* 0x01c9: mmctx_fini_wait */ /* 0x01d5: mmctx_fini_wait */
0x008bcf18, 0x008bcf18,
0xb01fb4f0, 0xb01fb4f0,
0x1bf410b4, 0x1bf410b4,
0x02a7f0f7, 0x02a7f0f7,
0xf4c921f4, 0xf4c921f4,
/* 0x01de: mmctx_stop */ /* 0x01ea: mmctx_stop */
0xabc81b0e, 0xabc81b0e,
0x10b4b600, 0x10b4b600,
0xf00cb9f0, 0xf00cb9f0,
0x8bd012b9, 0x8bd012b9,
/* 0x01ed: mmctx_stop_wait */ /* 0x01f9: mmctx_stop_wait */
0x008bcf00, 0x008bcf00,
0xf412bbc8, 0xf412bbc8,
/* 0x01f6: mmctx_done */ /* 0x0202: mmctx_done */
0x87f1fa1b, 0x94bdfa1b,
0x84b6085c, 0xf10199f0,
0xf094bd06, 0xf0170007,
0x89d00199, 0x09d00203,
/* 0x0207: strand_wait */ 0xf804bd00,
0xf900f800, /* 0x0215: strand_wait */
0x02a7f0a0, 0xf0a0f900,
0xfcc921f4, 0x21f402a7,
/* 0x0213: strand_pre */ 0xf8a0fcc9,
0xf100f8a0, /* 0x0221: strand_pre */
0xf04afc87, 0xfc87f100,
0x97f00283, 0x0283f04a,
0x0089d00c, 0xd00c97f0,
0x020721f5,
/* 0x0226: strand_post */
0x87f100f8,
0x83f04afc,
0x0d97f002,
0xf50089d0,
0xf8020721,
/* 0x0239: strand_set */
0xfca7f100,
0x02a3f04f,
0x0500aba2,
0xd00fc7f0,
0xc7f000ac,
0x00bcd00b,
0x020721f5,
0xf000aed0,
0xbcd00ac7,
0x0721f500,
/* 0x0263: strand_ctx_init */
0xf100f802,
0xb6083c87,
0x94bd0684,
0xd00399f0,
0x21f50089, 0x21f50089,
0xe7f00213, 0x00f80215,
0x3921f503, /* 0x0234: strand_post */
0x4afc87f1,
0xf00283f0,
0x89d00d97,
0x1521f500,
/* 0x0247: strand_set */
0xf100f802,
0xf04ffca7,
0xaba202a3,
0xc7f00500,
0x00acd00f,
0xd00bc7f0,
0x21f500bc,
0xaed00215,
0x0ac7f000,
0xf500bcd0,
0xf8021521,
/* 0x0271: strand_ctx_init */
0xf094bd00,
0x07f10399,
0x03f03700,
0x0009d002,
0x21f504bd,
0xe7f00221,
0x4721f503,
0xfca7f102, 0xfca7f102,
0x02a3f046, 0x02a3f046,
0x0400aba0, 0x0400aba0,
0xf040a0d0, 0xf040a0d0,
0xbcd001c7, 0xbcd001c7,
0x0721f500, 0x1521f500,
0x010c9202, 0x010c9202,
0xf000acd0, 0xf000acd0,
0xbcd002c7, 0xbcd002c7,
0x0721f500, 0x1521f500,
0x2621f502, 0x3421f502,
0x8087f102, 0x8087f102,
0x0684b608, 0x0684b608,
0xb70089cf, 0xb70089cf,
0x95220080, 0x95220080,
/* 0x02ba: ctx_init_strand_loop */ /* 0x02ca: ctx_init_strand_loop */
0x8ed008fe, 0x8ed008fe,
0x408ed000, 0x408ed000,
0xb6808acf, 0xb6808acf,
...@@ -419,258 +423,266 @@ uint32_t nvf0_grhub_code[] = { ...@@ -419,258 +423,266 @@ uint32_t nvf0_grhub_code[] = {
0xb60480b6, 0xb60480b6,
0x1bf40192, 0x1bf40192,
0x08e4b6e8, 0x08e4b6e8,
0xf1f2efbc, 0xbdf2efbc,
0xb6085c87, 0x0399f094,
0x94bd0684, 0x170007f1,
0xd00399f0, 0xd00203f0,
0x00f80089, 0x04bd0009,
/* 0x02ec: error */ /* 0x02fe: error */
0xe7f1e0f9, 0x07f100f8,
0xe4b60814, 0x03f00500,
0x00efd006, 0x000fd002,
0x0c1ce7f1, 0xf7f004bd,
0xf006e4b6, 0x0007f101,
0xefd001f7, 0x0303f007,
0xf8e0fc00, 0xbd000fd0,
/* 0x0309: init */ /* 0x031b: init */
0xfe04bd00, 0xbd00f804,
0x07fe0004, 0x0004fe04,
0x0017f100, 0xf10007fe,
0x0227f012, 0xf0120017,
0xf10012d0, 0x12d00227,
0xfe058517, 0xb117f100,
0x17f10010, 0x0010fe05,
0x10d00400, 0x040017f1,
0x0437f1c0, 0xf1c010d0,
0x0634b604, 0xb6040437,
0x200327f1, 0x27f10634,
0xf10032d0, 0x32d02003,
0xd0200427,
0x27f10132,
0x32d0200b,
0x0c27f102,
0x0732d020,
0x0c2427f1,
0xb90624b6,
0x23d00003,
0x0427f100, 0x0427f100,
0x0023f087, 0x0132d020,
0xb70012d0, 0x200b27f1,
0xf0010012, 0xf10232d0,
0x12d00427, 0xd0200c27,
0x1031f400, 0x27f10732,
0x9604e7f1, 0x24b60c24,
0xf440e3f0, 0x0003b906,
0xf1c76821, 0xf10023d0,
0x03018090, 0xf0870427,
0x801ff4f0, 0x12d00023,
0x17f0020f, 0x0012b700,
0x041fbb01, 0x0427f001,
0xf10112b6, 0xf40012d0,
0xb6040c27, 0xe7f11031,
0x21d00624, 0xe3f09604,
0x4021d000, 0x6821f440,
0x010017f1, 0x8090f1c7,
0x98000e98, 0xf4f00301,
0x21f5010f, 0x020f801f,
0x37f1013d, 0xbb0117f0,
0x34b60700, 0x12b6041f,
0x08149506, 0x0c27f101,
0xd00034d0, 0x0624b604,
0x30b74034, 0xd00021d0,
0x1fbb1300, 0x17f14021,
0x02f5b600, 0x0e980100,
0xb6003fd0, 0x010f9800,
0x10b60815, 0x014721f5,
0x0814b601, 0x070037f1,
0xf5021fb9, 0x950634b6,
0xbb026321, 0x34d00814,
0x0398001f, 0x4034d000,
0x0047f102, 0x130030b7,
0x5043f020, 0xb6001fbb,
/* 0x03e4: init_gpc */ 0x3fd002f5,
0x08044ea0, 0x0815b600,
0xf4021fb9, 0xb60110b6,
0x4ea08d21, 0x1fb90814,
0xf4bd010c, 0x7121f502,
0xa08d21f4, 0x001fbb02,
0xf401044e, 0xf1020398,
0x4ea08d21, 0xf0200047,
0xf7f00100, /* 0x03f6: init_gpc */
0x4ea05043,
0x1fb90804,
0x8d21f402, 0x8d21f402,
0x08004ea0, 0x010c4ea0,
/* 0x040c: init_gpc_wait */ 0x21f4f4bd,
0xc86821f4, 0x044ea08d,
0x0bf41fff, 0x8d21f401,
0x044ea0fa, 0x01004ea0,
0x6821f408, 0xf402f7f0,
0xb7001fbb, 0x4ea08d21,
0xb6800040, /* 0x041e: init_gpc_wait */
0x1bf40132, 0x21f40800,
0x0027f1be, 0x1fffc868,
0x0624b608, 0xa0fa0bf4,
0xb74021d0, 0xf408044e,
0xbd080020, 0x1fbb6821,
0x0040b700,
0x0132b680,
0xf1be1bf4,
0xf0010007,
0x01d00203,
0xbd04bd00,
0x1f19f014, 0x1f19f014,
/* 0x043f: main */ 0x300007f1,
0xf40021d0, 0xd00203f0,
0x28f40031, 0x04bd0001,
0x10d7f000, /* 0x0458: main */
0xf43921f4, 0xf40031f4,
0xe4b1f401, 0xd7f00028,
0x1bf54001, 0x3921f410,
0x87f100d1, 0xb1f401f4,
0x84b6083c, 0xf54001e4,
0xf094bd06, 0xbd00de1b,
0x89d00499, 0x0499f094,
0x0017f100, 0x370007f1,
0x0614b60b, 0xd00203f0,
0xcf4012cf, 0x04bd0009,
0x13c80011, 0x0b0017f1,
0x7e0bf41f, 0xcf0614b6,
0x11cf4012,
0x1f13c800,
0x00870bf5,
0xf41f23c8, 0xf41f23c8,
0x20f95a0b, 0x20f9620b,
0xf10212b9, 0xbd0212b9,
0xb6083c87,
0x94bd0684,
0xd00799f0,
0x32f40089,
0x0231f401,
0x07c721f5,
0x085c87f1,
0xbd0684b6,
0x0799f094, 0x0799f094,
0xfc0089d0, 0x370007f1,
0x3c87f120, 0xd00203f0,
0x0684b608, 0x04bd0009,
0x99f094bd, 0xf40132f4,
0x0089d006, 0x21f50231,
0xf50131f4, 0x94bd0801,
0xf107c721, 0xf10799f0,
0xb6085c87, 0xf0170007,
0x94bd0684, 0x09d00203,
0xd00699f0, 0xfc04bd00,
0x0ef40089, 0xf094bd20,
/* 0x04d5: chsw_prev_no_next */ 0x07f10699,
0x03f03700,
0x0009d002,
0x31f404bd,
0x0121f501,
0xf094bd08,
0x07f10699,
0x03f01700,
0x0009d002,
0x0ef404bd,
/* 0x04f9: chsw_prev_no_next */
0xb920f931, 0xb920f931,
0x32f40212, 0x32f40212,
0x0232f401, 0x0232f401,
0x07c721f5, 0x080121f5,
0x17f120fc, 0x17f120fc,
0x14b60b00, 0x14b60b00,
0x0012d006, 0x0012d006,
/* 0x04f3: chsw_no_prev */ /* 0x0517: chsw_no_prev */
0xc8130ef4, 0xc8130ef4,
0x0bf41f23, 0x0bf41f23,
0x0131f40d, 0x0131f40d,
0xf50232f4, 0xf50232f4,
/* 0x0503: chsw_done */ /* 0x0527: chsw_done */
0xf107c721, 0xf1080121,
0xb60b0c17, 0xb60b0c17,
0x27f00614, 0x27f00614,
0x0012d001, 0x0012d001,
0x085c87f1,
0xbd0684b6,
0x0499f094,
0xf50089d0,
/* 0x0523: main_not_ctx_switch */
0xb0ff200e,
0x1bf401e4,
0x02f2b90d,
0x075b21f5,
/* 0x0533: main_not_ctx_chan */
0xb0420ef4,
0x1bf402e4,
0x3c87f12e,
0x0684b608,
0x99f094bd, 0x99f094bd,
0x0089d007, 0x0007f104,
0x0203f017,
0xbd0009d0,
0x130ef504,
/* 0x0549: main_not_ctx_switch */
0x01e4b0ff,
0xb90d1bf4,
0x21f502f2,
0x0ef40795,
/* 0x0559: main_not_ctx_chan */
0x02e4b046,
0xbd321bf4,
0x0799f094,
0x370007f1,
0xd00203f0,
0x04bd0009,
0xf40132f4, 0xf40132f4,
0x21f50232, 0x21f50232,
0x87f107c7, 0x94bd0801,
0x84b6085c, 0xf10799f0,
0xf094bd06, 0xf0170007,
0x89d00799, 0x09d00203,
0x110ef400, 0xf404bd00,
/* 0x0564: main_not_ctx_save */ /* 0x058e: main_not_ctx_save */
0xf010ef94, 0xef94110e,
0x21f501f5, 0x01f5f010,
0x0ef502ec, 0x02fe21f5,
/* 0x0572: main_done */ 0xfec00ef5,
0x17f1fed1, /* 0x059c: main_done */
0x14b60820, 0x29f024bd,
0xf024bd06, 0x0007f11f,
0x12d01f29, 0x0203f030,
0xbe0ef500, 0xbd0002d0,
/* 0x0585: ih */ 0xab0ef504,
/* 0x05b1: ih */
0xfe80f9fe, 0xfe80f9fe,
0x80f90188, 0x80f90188,
0xa0f990f9, 0xa0f990f9,
0xd0f9b0f9, 0xd0f9b0f9,
0xf0f9e0f9, 0xf0f9e0f9,
0xc4800acf, 0x0acf04bd,
0x0bf404ab, 0x04abc480,
0x00b7f11d, 0xf11d0bf4,
0x10d7f019, 0xf01900b7,
0xcf40becf, 0xbecf10d7,
0x21f400bf, 0x00bfcf40,
0x00b0b704, 0xb70421f4,
0x01e7f004, 0xf00400b0,
/* 0x05bb: ih_no_fifo */ 0xbed001e7,
0xe400bed0, /* 0x05e9: ih_no_fifo */
0xf40100ab, 0x00abe400,
0xd7f00d0b, 0x0d0bf401,
0x01e7f110, 0xf110d7f0,
0x0421f440, 0xf44001e7,
/* 0x05cc: ih_no_ctxsw */ /* 0x05fa: ih_no_ctxsw */
0x0104b7f1, 0xb7f10421,
0xabffb0bd, 0xb0bd0104,
0x0d0bf4b4, 0xf4b4abff,
0x0c1ca7f1, 0xa7f10d0b,
0xd006a4b6, 0xa4b60c1c,
/* 0x05e2: ih_no_other */ 0x00abd006,
0x0ad000ab, /* 0x0610: ih_no_other */
0xfcf0fc40, 0xfc400ad0,
0xfcd0fce0, 0xfce0fcf0,
0xfca0fcb0, 0xfcb0fcd0,
0xfe80fc90, 0xfc90fca0,
0x80fc0088, 0x0088fe80,
0xf80032f4, 0x32f480fc,
/* 0x05fd: ctx_4170s */ /* 0x062b: ctx_4170s */
0x70e7f101, 0xf101f800,
0x40e3f041, 0xf04170e7,
0xf410f5f0, 0xf5f040e3,
0x00f88d21, 0x8d21f410,
/* 0x060c: ctx_4170w */ /* 0x063a: ctx_4170w */
0x4170e7f1,
0xf440e3f0,
0xf4f06821,
0xf31bf410,
/* 0x061e: ctx_redswitch */
0xe7f100f8, 0xe7f100f8,
0xe4b60614, 0xe3f04170,
0x70f7f106, 0x6821f440,
0x00efd002, 0xf410f4f0,
/* 0x062f: ctx_redswitch_delay */ 0x00f8f31b,
0xb608f7f0, /* 0x064c: ctx_redswitch */
0x1bf401f2, 0x0614e7f1,
0x70f7f1fd, 0xf106e4b6,
0x00efd007, 0xd00270f7,
/* 0x063e: ctx_86c */ 0xf7f000ef,
0xe7f100f8, /* 0x065d: ctx_redswitch_delay */
0xe4b6086c, 0x01f2b608,
0x00efd006, 0xf1fd1bf4,
0x8a14e7f1, 0xd00770f7,
0xf440e3f0, 0x00f800ef,
0xe7f18d21, /* 0x066c: ctx_86c */
0xe3f0a86c, 0x086ce7f1,
0x8d21f441, 0xd006e4b6,
/* 0x065e: ctx_load */ 0xe7f100ef,
0x87f100f8, 0xe3f08a14,
0x84b6083c, 0x8d21f440,
0xf094bd06, 0xa86ce7f1,
0x89d00599, 0xf441e3f0,
0x0ca7f000, 0x00f88d21,
/* 0x068c: ctx_load */
0x99f094bd,
0x0007f105,
0x0203f037,
0xbd0009d0,
0x0ca7f004,
0xf1c921f4, 0xf1c921f4,
0xb60a2417, 0xb60a2417,
0x10d00614, 0x10d00614,
...@@ -680,163 +692,215 @@ uint32_t nvf0_grhub_code[] = { ...@@ -680,163 +692,215 @@ uint32_t nvf0_grhub_code[] = {
0xb60a0c17, 0xb60a0c17,
0x47f00614, 0x47f00614,
0x0012d007, 0x0012d007,
/* 0x0697: ctx_chan_wait_0 */ /* 0x06c7: ctx_chan_wait_0 */
0xcf4014d0, 0xcf4014d0,
0x44f04014, 0x44f04014,
0xfa1bf41f, 0xfa1bf41f,
0xfe0032d0, 0xfe0032d0,
0x2af0000b, 0x2af0000b,
0x0424b61f, 0x0424b61f,
0xf10220b6, 0xbd0220b6,
0xb6083c87,
0x94bd0684,
0xd00899f0,
0x17f10089,
0x14b60a04,
0x0012d006,
0x0a2017f1,
0xf00614b6,
0x23f10227,
0x12d08000,
0x1017f000,
0x020027f1,
0xfa0223f0,
0x03f80512,
0x085c87f1,
0xbd0684b6,
0x0899f094, 0x0899f094,
0x980089d0, 0x370007f1,
0xd00203f0,
0x04bd0009,
0x0a0417f1,
0xd00614b6,
0x17f10012,
0x14b60a20,
0x0227f006,
0x800023f1,
0xf00012d0,
0x27f11017,
0x23f00200,
0x0512fa02,
0x94bd03f8,
0xf10899f0,
0xf0170007,
0x09d00203,
0x9804bd00,
0x14b68101, 0x14b68101,
0x80029818, 0x80029818,
0xfd0825b6, 0xfd0825b6,
0x01800512, 0x01800512,
0x3c87f116, 0xf094bd16,
0x0684b608, 0x07f10999,
0x99f094bd, 0x03f03700,
0x0089d009, 0x0009d002,
0x0a0427f1, 0x27f104bd,
0xd00624b6, 0x24b60a04,
0x27f00021, 0x0021d006,
0x2017f101, 0xf10127f0,
0x0614b60a, 0xb60a2017,
0xf10012d0, 0x12d00614,
0x0017f100,
0x0613f001,
0xf80501fa,
0xf094bd03,
0x07f10999,
0x03f01700,
0x0009d002,
0x94bd04bd,
0xf10599f0,
0xf0170007,
0x09d00203,
0xf804bd00,
/* 0x0795: ctx_chan */
0x8c21f500,
0x0ca7f006,
0xf1c921f4,
0xb60a1017,
0x27f00614,
0x0012d005,
/* 0x07ac: ctx_chan_wait */
0xfd0012cf,
0x1bf40522,
/* 0x07b7: ctx_mmio_exec */
0x9800f8fa,
0x27f14103,
0x24b60a04,
0x0023d006,
/* 0x07c6: ctx_mmio_loop */
0x34c434bd,
0x0f1bf4ff,
0x020057f1,
0xfa0653f0,
0x03f80535,
/* 0x07d8: ctx_mmio_pull */
0x98804e98,
0x21f4814f,
0x0830b68d,
0xf40112b6,
/* 0x07ea: ctx_mmio_done */
0x0398df1b,
0x0023d016,
0xf1400080,
0xf0010017, 0xf0010017,
0x01fa0613, 0x01fa0613,
0xf103f805, 0xf803f806,
0xb6085c87, /* 0x0801: ctx_xfer */
0x94bd0684, 0x00f7f100,
0xd00999f0, 0x06f4b60c,
0x87f10089, 0xd004e7f0,
0x84b6085c, /* 0x080e: ctx_xfer_idle */
0xf094bd06, 0xfecf80fe,
0x89d00599, 0x00e4f100,
/* 0x075b: ctx_chan */ 0xf91bf420,
0xf500f800, 0xf40611f4,
0xf0065e21, /* 0x081e: ctx_xfer_pre */
0x21f40ca7, 0xf7f00d02,
0x1017f1c9, 0x6c21f510,
0x0614b60a, 0x1c11f406,
0xd00527f0, /* 0x0828: ctx_xfer_pre_load */
/* 0x0772: ctx_chan_wait */ 0xf502f7f0,
0x12cf0012, 0xf5062b21,
0x0522fd00, 0xf5063a21,
0xf8fa1bf4, 0xbd064c21,
/* 0x077d: ctx_mmio_exec */ 0x2b21f5f4,
0x41039800, 0x8c21f506,
0x0a0427f1, /* 0x0841: ctx_xfer_exec */
0x16019806,
0x041427f1,
0xd00624b6, 0xd00624b6,
0x34bd0023, 0xe7f10020,
/* 0x078c: ctx_mmio_loop */ 0xe3f0a500,
0xf4ff34c4, 0x021fb941,
0x57f10f1b,
0x53f00200,
0x0535fa06,
/* 0x079e: ctx_mmio_pull */
0x4e9803f8,
0x814f9880,
0xb68d21f4, 0xb68d21f4,
0x12b60830, 0xfcf004e0,
0xdf1bf401, 0x022cf001,
/* 0x07b0: ctx_mmio_done */ 0xfd0124b6,
0xd0160398, 0x21f405f2,
0x00800023, 0xfc17f18d,
0x0017f140, 0x0213f04a,
0x0613f001, 0xd00c27f0,
0xf80601fa, 0x21f50012,
/* 0x07c7: ctx_xfer */ 0x27f10215,
0xf100f803, 0x23f047fc,
0xb60c00f7, 0x0020d002,
0xe7f006f4, 0xb6012cf0,
0x80fed004, 0x12d00320,
/* 0x07d4: ctx_xfer_idle */ 0x01acf000,
0xf100fecf, 0xf006a5f0,
0xf42000e4, 0x0c9800b7,
0x11f4f91b, 0x010d9800,
0x0d02f406, 0xf500e7f0,
/* 0x07e4: ctx_xfer_pre */ 0xf0016621,
0xf510f7f0, 0x21f508a7,
0xf4063e21, 0x21f50109,
/* 0x07ee: ctx_xfer_pre_load */ 0x01f40215,
0xf7f01c11, 0x0ca7f022,
0xfd21f502, 0xf1c921f4,
0x0c21f505, 0xb60a1017,
0x1e21f506, 0x27f00614,
0x0012d005,
/* 0x08c8: ctx_xfer_post_save_wait */
0xfd0012cf,
0x1bf40522,
0x2e02f4fa,
/* 0x08d4: ctx_xfer_post */
0xf502f7f0,
0xbd062b21,
0x6c21f5f4,
0x3421f506,
0x3a21f502,
0xf5f4bd06, 0xf5f4bd06,
0xf505fd21, 0xf4062b21,
/* 0x0807: ctx_xfer_exec */ 0x01981011,
0x98065e21, 0x0511fd40,
0x27f11601, 0xf5070bf4,
0x24b60414, /* 0x08ff: ctx_xfer_no_post_mmio */
0x0020d006, /* 0x08ff: ctx_xfer_done */
0xa500e7f1, 0xf807b721,
0xb941e3f0, 0x00000000,
0x21f4021f, 0x00000000,
0x04e0b68d, 0x00000000,
0xf001fcf0, 0x00000000,
0x24b6022c, 0x00000000,
0x05f2fd01, 0x00000000,
0xf18d21f4, 0x00000000,
0xf04afc17, 0x00000000,
0x27f00213, 0x00000000,
0x0012d00c, 0x00000000,
0x020721f5, 0x00000000,
0x47fc27f1, 0x00000000,
0xd00223f0, 0x00000000,
0x2cf00020, 0x00000000,
0x0320b601, 0x00000000,
0xf00012d0, 0x00000000,
0xa5f001ac, 0x00000000,
0x00b7f006, 0x00000000,
0x98000c98, 0x00000000,
0xe7f0010d, 0x00000000,
0x5c21f500, 0x00000000,
0x08a7f001, 0x00000000,
0x010321f5, 0x00000000,
0x020721f5, 0x00000000,
0xf02201f4, 0x00000000,
0x21f40ca7, 0x00000000,
0x1017f1c9, 0x00000000,
0x0614b60a, 0x00000000,
0xd00527f0, 0x00000000,
/* 0x088e: ctx_xfer_post_save_wait */ 0x00000000,
0x12cf0012, 0x00000000,
0x0522fd00, 0x00000000,
0xf4fa1bf4, 0x00000000,
/* 0x089a: ctx_xfer_post */ 0x00000000,
0xf7f02e02, 0x00000000,
0xfd21f502, 0x00000000,
0xf5f4bd05, 0x00000000,
0xf5063e21, 0x00000000,
0xf5022621, 0x00000000,
0xbd060c21, 0x00000000,
0xfd21f5f4, 0x00000000,
0x1011f405, 0x00000000,
0xfd400198, 0x00000000,
0x0bf40511, 0x00000000,
0x7d21f507, 0x00000000,
/* 0x08c5: ctx_xfer_no_post_mmio */ 0x00000000,
/* 0x08c5: ctx_xfer_done */ 0x00000000,
0x0000f807, 0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
...@@ -29,6 +29,28 @@ ...@@ -29,6 +29,28 @@
#define GK100 0xe0 #define GK100 0xe0
#define GK110 0xf0 #define GK110 0xf0
#define NV_PGRAPH_FECS_SIGNAL 0x409400
#if CHIPSET < GK110
#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)
#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_CC_SCRATCH_SET(n) ((n) * 4 + 0x4098c0)
#endif
#define NV_PGRAPH_FECS_INTR_UP_SET 0x409c1c
#if CHIPSET < GK110
#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)
#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_CC_SCRATCH_SET(n) ((n) * 4 + 0x41a8c0)
#endif
#define mmctx_data(r,c) .b32 (((c - 1) << 26) | r) #define mmctx_data(r,c) .b32 (((c - 1) << 26) | r)
#define queue_init .skip 72 // (2 * 4) + ((8 * 4) * 2) #define queue_init .skip 72 // (2 * 4) + ((8 * 4) * 2)
...@@ -43,16 +65,25 @@ ...@@ -43,16 +65,25 @@
#define T_LCHAN 8 #define T_LCHAN 8
#define T_LCTXH 9 #define T_LCTXH 9
#define nv_mkmm(rv,r) /*
*/ movw rv ((r) & 0x0000fffc) /*
*/ sethi rv ((r) & 0x00ff0000)
#define nv_mkio(rv,r,i) /*
*/ nv_mkmm(rv, (((r) & 0xffc) << 6) | ((i) << 2))
#define nv_iord(rv,r,i) /*
*/ nv_mkio(rv,r,i) /*
*/ iord rv I[rv]
#define nv_iowr(r,i,rv) /*
*/ nv_mkio($r0,r,i) /*
*/ iowr I[$r0] rv /*
*/ clear b32 $r0
#define trace_set(bit) /* #define trace_set(bit) /*
*/ mov $r8 0x83c /*
*/ shl b32 $r8 6 /*
*/ clear b32 $r9 /* */ clear b32 $r9 /*
*/ bset $r9 bit /* */ bset $r9 bit /*
*/ iowr I[$r8 + 0x000] $r9 */ nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_SET(7), 0, $r9)
#define trace_clr(bit) /* #define trace_clr(bit) /*
*/ mov $r8 0x85c /*
*/ shl b32 $r8 6 /*
*/ clear b32 $r9 /* */ clear b32 $r9 /*
*/ bset $r9 bit /* */ bset $r9 bit /*
*/ iowr I[$r8 + 0x000] $r9 */ nv_iowr(NV_PGRAPH_FECS_CC_SCRATCH_CLR(7), 0, $r9)
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