root/drivers/gpu/drm/nouveau/nvkm/engine/gr/fuc/gpcgm107.fuc5.h
/* SPDX-License-Identifier: MIT */
static uint32_t gm107_grgpc_data[] = {
/* 0x0000: gpc_mmio_list_head */
        0x0000006c,
/* 0x0004: gpc_mmio_list_tail */
/* 0x0004: tpc_mmio_list_head */
        0x0000006c,
/* 0x0008: tpc_mmio_list_tail */
/* 0x0008: unk_mmio_list_head */
        0x0000006c,
/* 0x000c: unk_mmio_list_tail */
        0x0000006c,
/* 0x0010: gpc_id */
        0x00000000,
/* 0x0014: tpc_count */
        0x00000000,
/* 0x0018: tpc_mask */
        0x00000000,
/* 0x001c: unk_count */
        0x00000000,
/* 0x0020: unk_mask */
        0x00000000,
/* 0x0024: cmd_queue */
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
        0x00000000,
};

static uint32_t gm107_grgpc_code[] = {
        0x03410ef5,
/* 0x0004: queue_put */
        0x9800d898,
        0x86f001d9,
        0xf489a408,
        0x020f0b1b,
        0x0002f87e,
/* 0x001a: queue_put_next */
        0x98c400f8,
        0x0384b607,
        0xb6008dbb,
        0x8eb50880,
        0x018fb500,
        0xf00190b6,
        0xd9b50f94,
/* 0x0037: queue_get */
        0xf400f801,
        0xd8980131,
        0x01d99800,
        0x0bf489a4,
        0x0789c421,
        0xbb0394b6,
        0x90b6009d,
        0x009e9808,
        0xb6019f98,
        0x84f00180,
        0x00d8b50f,
/* 0x0063: queue_get_done */
        0xf80132f4,
/* 0x0065: nv_rd32 */
        0xf0ecb200,
        0x00801fc9,
        0x0cf601ca,
/* 0x0073: nv_rd32_wait */
        0x8c04bd00,
        0xcf01ca00,
        0xccc800cc,
        0xf61bf41f,
        0xec7e060a,
        0x008f0000,
        0xffcf01cb,
/* 0x008f: nv_wr32 */
        0x8000f800,
        0xf601cc00,
        0x04bd000f,
        0xc9f0ecb2,
        0x1ec9f01f,
        0x01ca0080,
        0xbd000cf6,
/* 0x00a9: nv_wr32_wait */
        0xca008c04,
        0x00cccf01,
        0xf41fccc8,
        0x00f8f61b,
/* 0x00b8: wait_donez */
        0x99f094bd,
        0x37008000,
        0x0009f602,
        0x008004bd,
        0x0af60206,
/* 0x00cf: wait_donez_ne */
        0x8804bd00,
        0xcf010000,
        0x8aff0088,
        0xf61bf488,
        0x99f094bd,
        0x17008000,
        0x0009f602,
        0x00f804bd,
/* 0x00ec: wait_doneo */
        0x99f094bd,
        0x37008000,
        0x0009f602,
        0x008004bd,
        0x0af60206,
/* 0x0103: wait_doneo_e */
        0x8804bd00,
        0xcf010000,
        0x8aff0088,
        0xf60bf488,
        0x99f094bd,
        0x17008000,
        0x0009f602,
        0x00f804bd,
/* 0x0120: mmctx_size */
/* 0x0122: nv_mmctx_size_loop */
        0xe89894bd,
        0x1a85b600,
        0xb60180b6,
        0x98bb0284,
        0x04e0b600,
        0x1bf4efa4,
        0xf89fb2ec,
/* 0x013d: mmctx_xfer */
        0xf094bd00,
        0x00800199,
        0x09f60237,
        0xbd04bd00,
        0x05bbfd94,
        0x800f0bf4,
        0xf601c400,
        0x04bd000b,
/* 0x015f: mmctx_base_disabled */
        0xfd0099f0,
        0x0bf405ee,
        0xc6008018,
        0x000ef601,
        0x008004bd,
        0x0ff601c7,
        0xf004bd00,
/* 0x017a: mmctx_multi_disabled */
        0xabc80199,
        0x10b4b600,
        0xc80cb9f0,
        0xe4b601ae,
        0x05befd11,
        0x01c50080,
        0xbd000bf6,
/* 0x0195: mmctx_exec_loop */
/* 0x0195: mmctx_wait_free */
        0xc5008e04,
        0x00eecf01,
        0xf41fe4f0,
        0xce98f60b,
        0x05e9fd00,
        0x01c80080,
        0xbd000ef6,
        0x04c0b604,
        0x1bf4cda4,
        0x02abc8df,
/* 0x01bf: mmctx_fini_wait */
        0x8b1c1bf4,
        0xcf01c500,
        0xb4f000bb,
        0x10b4b01f,
        0x0af31bf4,
        0x00b87e05,
        0x250ef400,
/* 0x01d8: mmctx_stop */
        0xb600abc8,
        0xb9f010b4,
        0x12b9f00c,
        0x01c50080,
        0xbd000bf6,
/* 0x01ed: mmctx_stop_wait */
        0xc5008b04,
        0x00bbcf01,
        0xf412bbc8,
/* 0x01fa: mmctx_done */
        0x94bdf61b,
        0x800199f0,
        0xf6021700,
        0x04bd0009,
/* 0x020a: strand_wait */
        0xa0f900f8,
        0xb87e020a,
        0xa0fc0000,
/* 0x0216: strand_pre */
        0x0c0900f8,
        0x024afc80,
        0xbd0009f6,
        0x020a7e04,
/* 0x0227: strand_post */
        0x0900f800,
        0x4afc800d,
        0x0009f602,
        0x0a7e04bd,
        0x00f80002,
/* 0x0238: strand_set */
        0xfc800f0c,
        0x0cf6024f,
        0x0c04bd00,
        0x4afc800b,
        0x000cf602,
        0xfc8004bd,
        0x0ef6024f,
        0x0c04bd00,
        0x4afc800a,
        0x000cf602,
        0x0a7e04bd,
        0x00f80002,
/* 0x0268: strand_ctx_init */
        0x99f094bd,
        0x37008003,
        0x0009f602,
        0x167e04bd,
        0x030e0002,
        0x0002387e,
        0xfc80c4bd,
        0x0cf60247,
        0x0c04bd00,
        0x4afc8001,
        0x000cf602,
        0x0a7e04bd,
        0x0c920002,
        0x46fc8001,
        0x000cf602,
        0x020c04bd,
        0x024afc80,
        0xbd000cf6,
        0x020a7e04,
        0x02277e00,
        0x42008800,
        0x20008902,
        0x0099cf02,
/* 0x02c7: ctx_init_strand_loop */
        0xf608fe95,
        0x8ef6008e,
        0x808acf40,
        0xb606a5b6,
        0xeabb01a0,
        0x0480b600,
        0xf40192b6,
        0xe4b6e81b,
        0xf2efbc08,
        0x99f094bd,
        0x17008003,
        0x0009f602,
        0x00f804bd,
/* 0x02f8: error */
        0xffb2e0f9,
        0x4098148e,
        0x00008f7e,
        0xffb2010f,
        0x409c1c8e,
        0x00008f7e,
        0x00f8e0fc,
/* 0x0314: tpc_strand_wait */
        0x94bd90f9,
        0x800a99f0,
        0xf6023700,
        0x04bd0009,
/* 0x0324: tpc_strand_busy */
        0x033f0089,
        0xb30099cf,
        0xbdf90094,
        0x0a99f094,
        0x02170080,
        0xbd0009f6,
        0xf890fc04,
/* 0x0341: init */
        0x4104bd00,
        0x11cf4200,
        0x0911e700,
        0x0814b601,
        0x020014fe,
        0x12004002,
        0xbd0002f6,
        0x05ad4104,
        0x400010fe,
        0x00f60700,
        0x0204bd00,
        0x04004004,
        0xbd0002f6,
        0x1031f404,
        0x01820082,
        0x030022cf,
        0x1f24f001,
        0xb60432bb,
        0x02b50132,
        0x0603b505,
        0x01860082,
        0xb50022cf,
        0x24b60402,
        0xc900800f,
        0x0002f601,
        0x308e04bd,
        0xe5f0500c,
        0xbd24bd01,
/* 0x03b3: init_unk_loop */
        0x7e44bd34,
        0xb0000065,
        0x0bf400f6,
        0xbb010f0e,
        0x4ffd04f2,
        0x0130b605,
/* 0x03c8: init_unk_next */
        0xb60120b6,
        0x26b004e0,
        0xe21bf402,
/* 0x03d4: init_unk_done */
        0xb50703b5,
        0x00820804,
        0x22cf0201,
        0x9534bd00,
        0x00800825,
        0x05f601c0,
        0x8004bd00,
        0xf601c100,
        0x04bd0005,
        0x98000e98,
        0x207e010f,
        0x2fbb0001,
        0x003fbb00,
        0x98010e98,
        0x207e020f,
        0x0e980001,
        0x00effd05,
        0xbb002ebb,
        0x0e98003e,
        0x030f9802,
        0x0001207e,
        0xfd070e98,
        0x2ebb00ef,
        0x003ebb00,
        0x800235b6,
        0xf601d300,
        0x04bd0003,
        0xb60825b6,
        0x20b60635,
        0x0130b601,
        0xb60824b6,
        0x2fb20834,
        0x0002687e,
        0xbb002fbb,
        0x3f0f003f,
        0x501d608e,
        0xb201e5f0,
        0x008f7eff,
        0x8e0c0f00,
        0xf0501da8,
        0xffb201e5,
        0x00008f7e,
        0x0003147e,
        0x608e3f0f,
        0xe5f0501d,
        0x7effb201,
        0x0f00008f,
        0x1d9c8e00,
        0x01e5f050,
        0x8f7effb2,
        0x010f0000,
        0x0003147e,
        0x501da88e,
        0xb201e5f0,
        0x008f7eff,
        0x8eff0f00,
        0xf0501d98,
        0xffb201e5,
        0x00008f7e,
        0xa88e020f,
        0xe5f0501d,
        0x7effb201,
        0x7e00008f,
        0x98000314,
        0x00850504,
        0x55f05040,
/* 0x04dd: tpc_strand_init_tpc_loop */
        0x705eb801,
        0x657e0005,
        0xf6b20000,
/* 0x04ea: tpc_strand_init_idx_loop */
        0x5eb874bd,
        0xb2000560,
        0x008f7e7f,
        0x885eb800,
        0x2f950005,
        0x008f7e08,
        0x8c5eb800,
        0x2f950005,
        0x008f7e08,
        0x905eb800,
        0x657e0005,
        0xf5b60000,
        0x01f0b606,
        0xbb08f4b6,
        0x3fbb002f,
        0x0170b600,
        0xf40162b6,
        0x50b7bf1b,
        0x42b60800,
        0xa81bf401,
        0x608e3f0f,
        0xe5f0501d,
        0x7effb201,
        0x0f00008f,
        0x1da88e0d,
        0x01e5f050,
        0x8f7effb2,
        0x147e0000,
        0x00800003,
        0x03f60201,
        0xbd04bd00,
        0x1f29f024,
        0x02300080,
        0xbd0002f6,
/* 0x0571: wait */
        0x0028f404,
/* 0x0577: main */
        0x0d0031f4,
        0x00377e24,
        0xf401f400,
        0xf404e4b0,
        0x81fe1d18,
        0xbd060201,
        0x0412fd20,
        0xfd01e4b6,
        0x18fe051e,
        0x06487e00,
        0xda0ef400,
/* 0x05a0: main_not_ctx_xfer */
        0xf010ef94,
        0xf87e01f5,
        0x0ef40002,
/* 0x05ad: ih */
        0xf900f9cd,
        0x0188fe80,
        0x90f980f9,
        0xb0f9a0f9,
        0xe0f9d0f9,
        0x04bdf0f9,
        0xcf02004a,
        0xabc400aa,
        0x1f0bf404,
        0x004e240d,
        0x00eecf1a,
        0xcf19004f,
        0x047e00ff,
        0x010e0000,
        0xf61d0040,
        0x04bd000e,
/* 0x05ec: ih_no_fifo */
        0xf6010040,
        0x04bd000a,
        0xe0fcf0fc,
        0xb0fcd0fc,
        0x90fca0fc,
        0x88fe80fc,
        0xfc80fc00,
        0x0032f400,
/* 0x060e: hub_barrier_done */
        0x010f01f8,
        0xbb040e98,
        0xffb204fe,
        0x4094188e,
        0x00008f7e,
/* 0x0622: ctx_redswitch */
        0x200f00f8,
        0x01850080,
        0xbd000ff6,
/* 0x062f: ctx_redswitch_delay */
        0xb6080e04,
        0x1bf401e2,
        0x00f5f1fd,
        0x00f5f108,
        0x85008002,
        0x000ff601,
        0x00f804bd,
/* 0x0648: ctx_xfer */
        0x02810080,
        0xbd000ff6,
        0x1dc48e04,
        0x01e5f050,
        0x8f7effb2,
        0x11f40000,
        0x06227e07,
/* 0x0665: ctx_xfer_not_load */
        0x02167e00,
        0x8024bd00,
        0xf60247fc,
        0x04bd0002,
        0xb6012cf0,
        0xfc800320,
        0x02f6024a,
        0x0f04bd00,
        0x1da88e0c,
        0x01e5f050,
        0x8f7effb2,
        0x147e0000,
        0x3f0f0003,
        0x501d608e,
        0xb201e5f0,
        0x008f7eff,
        0x8e000f00,
        0xf0501d9c,
        0xffb201e5,
        0x00008f7e,
        0x147e010f,
        0xfcf00003,
        0x03f0b601,
        0x501da88e,
        0xb201e5f0,
        0x008f7eff,
        0x01acf000,
        0x8b02a5f0,
        0x98500000,
        0xc4b6040c,
        0x00bcbb0f,
        0x98000c98,
        0x000e010d,
        0x00013d7e,
        0x8b01acf0,
        0x98504000,
        0xc4b6040c,
        0x00bcbb0f,
        0x98010c98,
        0x0f98020d,
        0x08004e06,
        0x00013d7e,
        0xf001acf0,
        0x008b04a5,
        0x0c985030,
        0x0fc4b604,
        0x9800bcbb,
        0x0d98020c,
        0x080f9803,
        0x7e02004e,
        0x7e00013d,
        0x7e00020a,
        0xf4000314,
        0x12f40601,
/* 0x073d: ctx_xfer_post */
        0x02277e1a,
        0x8e0d0f00,
        0xf0501da8,
        0xffb201e5,
        0x00008f7e,
        0x0003147e,
/* 0x0754: ctx_xfer_done */
        0x00060e7e,
        0x000000f8,
        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,
};