drm/nva3/pwr/memx: Match blob's fb access behaviour
authorRoy Spliet <rspliet@eclipso.eu>
Thu, 4 Sep 2014 14:58:53 +0000 (16:58 +0200)
committerBen Skeggs <bskeggs@redhat.com>
Mon, 15 Sep 2014 12:25:04 +0000 (22:25 +1000)
Signed-off-by: Roy Spliet <rspliet@eclipso.eu>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/memx.fuc
drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h

index 989fdc10c136f8046465cb73013cd6c3d2a0f623..744f2e9d492ddc633d07d7eb629537a9f7b5cdd0 100644 (file)
@@ -76,6 +76,16 @@ memx_data_tail:
 // $r3  - opcode desciption
 // $r0  - zero
 memx_func_enter:
+#if NVKM_PPWR_CHIPSET == GT215
+       movw $r8 0x1610
+       nv_rd32($r7, $r8)
+       imm32($r6, 0xfffffffc)
+       and $r7 $r6
+       movw $r6 0x2
+       or $r7 $r6
+       nv_wr32($r8, $r7)
+#endif
+
        mov $r6 NV_PPWR_OUTPUT_SET_FB_PAUSE
        nv_iowr(NV_PPWR_OUTPUT_SET, $r6)
        memx_func_enter_wait:
@@ -104,6 +114,15 @@ memx_func_leave:
                nv_iord($r6, NV_PPWR_OUTPUT)
                and $r6 NV_PPWR_OUTPUT_FB_PAUSE
                bra nz #memx_func_leave_wait
+
+#if NVKM_PPWR_CHIPSET == GT215
+       movw $r8 0x1610
+       nv_rd32($r7, $r8)
+       imm32($r6, 0xffffffcc)
+       and $r7 $r6
+       nv_wr32($r8, $r7)
+#endif
+
        ret
 
 #if NVKM_PPWR_CHIPSET < GF119
index bbfd50299e0ef3add69bb0b33106a57b62158af5..93d92531ebd0e100c4c1b6e3f7c7fb018a9b0575 100644 (file)
@@ -46,8 +46,8 @@ uint32_t nva3_pwr_data[] = {
        0x00000000,
        0x00000000,
        0x584d454d,
-       0x0000068b,
-       0x0000067d,
+       0x000006d8,
+       0x000006ca,
        0x00000000,
        0x00000000,
        0x00000000,
@@ -68,8 +68,8 @@ uint32_t nva3_pwr_data[] = {
        0x00000000,
        0x00000000,
        0x46524550,
-       0x0000068f,
-       0x0000068d,
+       0x000006dc,
+       0x000006da,
        0x00000000,
        0x00000000,
        0x00000000,
@@ -90,8 +90,8 @@ uint32_t nva3_pwr_data[] = {
        0x00000000,
        0x00000000,
        0x5f433249,
-       0x00000abf,
-       0x00000962,
+       0x00000b0c,
+       0x000009af,
        0x00000000,
        0x00000000,
        0x00000000,
@@ -112,8 +112,8 @@ uint32_t nva3_pwr_data[] = {
        0x00000000,
        0x00000000,
        0x54534554,
-       0x00000ae8,
-       0x00000ac1,
+       0x00000b35,
+       0x00000b0e,
        0x00000000,
        0x00000000,
        0x00000000,
@@ -134,8 +134,8 @@ uint32_t nva3_pwr_data[] = {
        0x00000000,
        0x00000000,
        0x454c4449,
-       0x00000af4,
-       0x00000af2,
+       0x00000b41,
+       0x00000b3f,
        0x00000000,
        0x00000000,
        0x00000000,
@@ -233,19 +233,19 @@ uint32_t nva3_pwr_data[] = {
 /* 0x037c: memx_func_next */
        0x00000001,
        0x00000000,
-       0x0000057e,
+       0x000005a8,
        0x00000002,
        0x00000002,
-       0x000005ed,
+       0x0000063a,
        0x00040003,
        0x00000000,
-       0x00000609,
+       0x00000656,
        0x00010004,
        0x00000000,
-       0x00000626,
+       0x00000673,
        0x00010005,
        0x00000000,
-       0x000005ab,
+       0x000005f8,
 /* 0x03b8: memx_func_tail */
 /* 0x03b8: memx_ts_start */
        0x00000000,
@@ -1236,469 +1236,469 @@ uint32_t nva3_pwr_code[] = {
        0x01d00604,
        0xf804bd00,
 /* 0x0551: memx_func_enter */
-       0x0467f000,
-       0x07e007f1,
-       0xd00604b6,
-       0x04bd0006,
-/* 0x0560: memx_func_enter_wait */
-       0x07c067f1,
-       0xcf0664b6,
-       0x64f00066,
-       0xf30bf404,
-       0xb62c67f0,
-       0x66cf0664,
-       0xee068000,
-/* 0x057e: memx_func_leave */
-       0x67f000f8,
+       0x1087f100,
+       0x028eb916,
+       0xb90421f4,
+       0x67f102d7,
+       0x63f1fffc,
+       0x76fdffff,
+       0x0267f104,
+       0x0576fd00,
+       0x70f980f9,
+       0xe0fcd0fc,
+       0xf03f21f4,
+       0x07f10467,
+       0x04b607e0,
+       0x0006d006,
+/* 0x058a: memx_func_enter_wait */
+       0x67f104bd,
+       0x64b607c0,
+       0x0066cf06,
+       0xf40464f0,
+       0x67f0f30b,
        0x0664b62c,
        0x800066cf,
-       0x67f0ef06,
-       0xe407f104,
-       0x0604b607,
-       0xbd0006d0,
-/* 0x0599: memx_func_leave_wait */
-       0xc067f104,
-       0x0664b607,
-       0xf00066cf,
-       0x1bf40464,
-/* 0x05ab: memx_func_wait_vblank */
-       0x9800f8f3,
-       0x66b00016,
-       0x130bf400,
-       0xf40166b0,
-       0x0ef4060b,
-/* 0x05bd: memx_func_wait_vblank_head1 */
-       0x2077f12e,
-       0x070ef400,
-/* 0x05c4: memx_func_wait_vblank_head0 */
-       0x000877f1,
-/* 0x05c8: memx_func_wait_vblank_0 */
-       0x07c467f1,
-       0xcf0664b6,
-       0x67fd0066,
-       0xf31bf404,
-/* 0x05d8: memx_func_wait_vblank_1 */
-       0x07c467f1,
-       0xcf0664b6,
-       0x67fd0066,
-       0xf30bf404,
-/* 0x05e8: memx_func_wait_vblank_fini */
-       0xf80410b6,
-/* 0x05ed: memx_func_wr32 */
-       0x00169800,
-       0xb6011598,
-       0x60f90810,
-       0xd0fc50f9,
-       0x21f4e0fc,
-       0x0242b63f,
-       0xf8e91bf4,
-/* 0x0609: memx_func_wait */
-       0x2c87f000,
-       0xcf0684b6,
-       0x1e980088,
-       0x011d9800,
-       0x98021c98,
-       0x10b6031b,
-       0xa421f410,
-/* 0x0626: memx_func_delay */
-       0x1e9800f8,
-       0x0410b600,
-       0xf87f21f4,
-/* 0x0631: memx_exec */
-       0xf9e0f900,
-       0x02c1b9d0,
-/* 0x063b: memx_exec_next */
-       0x9802b2b9,
-       0x10b60013,
-       0x10349504,
-       0x980c30f0,
-       0x55f9de35,
-       0xf40612b8,
-       0x0b98ec1e,
-       0xef0c98ee,
-       0xf102cbbb,
-       0xb607c4b7,
-       0xbbcf06b4,
-       0xfcd0fc00,
-       0x4221f5e0,
-/* 0x066f: memx_info */
-       0xf100f803,
-       0xf103c0c7,
-       0xf50800b7,
-       0xf8034221,
-/* 0x067d: memx_recv */
-       0x01d6b000,
-       0xb0b10bf4,
-       0x0bf400d6,
-/* 0x068b: memx_init */
-       0xf800f8e9,
-/* 0x068d: perf_recv */
-/* 0x068f: perf_init */
-       0xf800f800,
-/* 0x0691: i2c_drive_scl */
-       0x0036b000,
-       0xf1110bf4,
-       0xb607e007,
-       0x01d00604,
-       0xf804bd00,
-/* 0x06a5: i2c_drive_scl_lo */
-       0xe407f100,
-       0x0604b607,
-       0xbd0001d0,
-/* 0x06b3: i2c_drive_sda */
-       0xb000f804,
-       0x0bf40036,
-       0xe007f111,
-       0x0604b607,
-       0xbd0002d0,
-/* 0x06c7: i2c_drive_sda_lo */
-       0xf100f804,
+       0x00f8ee06,
+/* 0x05a8: memx_func_leave */
+       0xb62c67f0,
+       0x66cf0664,
+       0xef068000,
+       0xf10467f0,
        0xb607e407,
-       0x02d00604,
-       0xf804bd00,
-/* 0x06d5: i2c_sense_scl */
-       0x0132f400,
-       0x07c437f1,
-       0xcf0634b6,
-       0x31fd0033,
-       0x060bf404,
-/* 0x06eb: i2c_sense_scl_done */
-       0xf80131f4,
-/* 0x06ed: i2c_sense_sda */
-       0x0132f400,
-       0x07c437f1,
-       0xcf0634b6,
-       0x32fd0033,
-       0x060bf404,
-/* 0x0703: i2c_sense_sda_done */
-       0xf80131f4,
-/* 0x0705: i2c_raise_scl */
-       0xf140f900,
-       0xf0089847,
+       0x06d00604,
+/* 0x05c3: memx_func_leave_wait */
+       0xf104bd00,
+       0xb607c067,
+       0x66cf0664,
+       0x0464f000,
+       0xf1f31bf4,
+       0xb9161087,
+       0x21f4028e,
+       0x02d7b904,
+       0xffcc67f1,
+       0xffff63f1,
+       0xf90476fd,
+       0xfc70f980,
+       0xf4e0fcd0,
+       0x00f83f21,
+/* 0x05f8: memx_func_wait_vblank */
+       0xb0001698,
+       0x0bf40066,
+       0x0166b013,
+       0xf4060bf4,
+/* 0x060a: memx_func_wait_vblank_head1 */
+       0x77f12e0e,
+       0x0ef40020,
+/* 0x0611: memx_func_wait_vblank_head0 */
+       0x0877f107,
+/* 0x0615: memx_func_wait_vblank_0 */
+       0xc467f100,
+       0x0664b607,
+       0xfd0066cf,
+       0x1bf40467,
+/* 0x0625: memx_func_wait_vblank_1 */
+       0xc467f1f3,
+       0x0664b607,
+       0xfd0066cf,
+       0x0bf40467,
+/* 0x0635: memx_func_wait_vblank_fini */
+       0x0410b6f3,
+/* 0x063a: memx_func_wr32 */
+       0x169800f8,
+       0x01159800,
+       0xf90810b6,
+       0xfc50f960,
+       0xf4e0fcd0,
+       0x42b63f21,
+       0xe91bf402,
+/* 0x0656: memx_func_wait */
+       0x87f000f8,
+       0x0684b62c,
+       0x980088cf,
+       0x1d98001e,
+       0x021c9801,
+       0xb6031b98,
+       0x21f41010,
+/* 0x0673: memx_func_delay */
+       0x9800f8a4,
+       0x10b6001e,
+       0x7f21f404,
+/* 0x067e: memx_exec */
+       0xe0f900f8,
+       0xc1b9d0f9,
+       0x02b2b902,
+/* 0x0688: memx_exec_next */
+       0xb6001398,
+       0x34950410,
+       0x0c30f010,
+       0xf9de3598,
+       0x0612b855,
+       0x98ec1ef4,
+       0x0c98ee0b,
+       0x02cbbbef,
+       0x07c4b7f1,
+       0xcf06b4b6,
+       0xd0fc00bb,
+       0x21f5e0fc,
+       0x00f80342,
+/* 0x06bc: memx_info */
+       0x03c0c7f1,
+       0x0800b7f1,
+       0x034221f5,
+/* 0x06ca: memx_recv */
+       0xd6b000f8,
+       0xb10bf401,
+       0xf400d6b0,
+       0x00f8e90b,
+/* 0x06d8: memx_init */
+/* 0x06da: perf_recv */
+       0x00f800f8,
+/* 0x06dc: perf_init */
+/* 0x06de: i2c_drive_scl */
+       0x36b000f8,
+       0x110bf400,
+       0x07e007f1,
+       0xd00604b6,
+       0x04bd0001,
+/* 0x06f2: i2c_drive_scl_lo */
+       0x07f100f8,
+       0x04b607e4,
+       0x0001d006,
+       0x00f804bd,
+/* 0x0700: i2c_drive_sda */
+       0xf40036b0,
+       0x07f1110b,
+       0x04b607e0,
+       0x0002d006,
+       0x00f804bd,
+/* 0x0714: i2c_drive_sda_lo */
+       0x07e407f1,
+       0xd00604b6,
+       0x04bd0002,
+/* 0x0722: i2c_sense_scl */
+       0x32f400f8,
+       0xc437f101,
+       0x0634b607,
+       0xfd0033cf,
+       0x0bf40431,
+       0x0131f406,
+/* 0x0738: i2c_sense_scl_done */
+/* 0x073a: i2c_sense_sda */
+       0x32f400f8,
+       0xc437f101,
+       0x0634b607,
+       0xfd0033cf,
+       0x0bf40432,
+       0x0131f406,
+/* 0x0750: i2c_sense_sda_done */
+/* 0x0752: i2c_raise_scl */
+       0x40f900f8,
+       0x089847f1,
+       0xf50137f0,
+/* 0x075f: i2c_raise_scl_wait */
+       0xf106de21,
+       0xf403e8e7,
+       0x21f57f21,
+       0x01f40722,
+       0x0142b609,
+/* 0x0773: i2c_raise_scl_done */
+       0xfcef1bf4,
+/* 0x0777: i2c_start */
+       0xf500f840,
+       0xf4072221,
+       0x21f50d11,
+       0x11f4073a,
+       0x300ef406,
+/* 0x0788: i2c_start_rep */
+       0xf50037f0,
+       0xf006de21,
        0x21f50137,
-/* 0x0712: i2c_raise_scl_wait */
-       0xe7f10691,
-       0x21f403e8,
-       0xd521f57f,
-       0x0901f406,
-       0xf40142b6,
-/* 0x0726: i2c_raise_scl_done */
-       0x40fcef1b,
-/* 0x072a: i2c_start */
-       0x21f500f8,
-       0x11f406d5,
-       0xed21f50d,
-       0x0611f406,
-/* 0x073b: i2c_start_rep */
-       0xf0300ef4,
+       0x76bb0700,
+       0x0465b600,
+       0x659450f9,
+       0x0256bb04,
+       0x75fd50bd,
+       0xf550fc04,
+       0xb6075221,
+       0x11f40464,
+/* 0x07b5: i2c_start_send */
+       0x0037f01f,
+       0x070021f5,
+       0x1388e7f1,
+       0xf07f21f4,
        0x21f50037,
-       0x37f00691,
-       0xb321f501,
-       0x0076bb06,
+       0xe7f106de,
+       0x21f41388,
+/* 0x07d1: i2c_start_out */
+/* 0x07d3: i2c_stop */
+       0xf000f87f,
+       0x21f50037,
+       0x37f006de,
+       0x0021f500,
+       0xe8e7f107,
+       0x7f21f403,
+       0xf50137f0,
+       0xf106de21,
+       0xf41388e7,
+       0x37f07f21,
+       0x0021f501,
+       0x88e7f107,
+       0x7f21f413,
+/* 0x0806: i2c_bitw */
+       0x21f500f8,
+       0xe7f10700,
+       0x21f403e8,
+       0x0076bb7f,
        0xf90465b6,
        0x04659450,
        0xbd0256bb,
        0x0475fd50,
        0x21f550fc,
-       0x64b60705,
-       0x1f11f404,
-/* 0x0768: i2c_start_send */
-       0xf50037f0,
-       0xf106b321,
-       0xf41388e7,
-       0x37f07f21,
-       0x9121f500,
-       0x88e7f106,
-       0x7f21f413,
-/* 0x0784: i2c_start_out */
-/* 0x0786: i2c_stop */
-       0x37f000f8,
-       0x9121f500,
-       0x0037f006,
-       0x06b321f5,
-       0x03e8e7f1,
-       0xf07f21f4,
-       0x21f50137,
-       0xe7f10691,
-       0x21f41388,
-       0x0137f07f,
-       0x06b321f5,
+       0x64b60752,
+       0x1811f404,
        0x1388e7f1,
-       0xf87f21f4,
-/* 0x07b9: i2c_bitw */
-       0xb321f500,
-       0xe8e7f106,
-       0x7f21f403,
-       0xb60076bb,
-       0x50f90465,
-       0xbb046594,
-       0x50bd0256,
-       0xfc0475fd,
-       0x0521f550,
-       0x0464b607,
-       0xf11811f4,
-       0xf41388e7,
-       0x37f07f21,
-       0x9121f500,
-       0x88e7f106,
-       0x7f21f413,
-/* 0x07f8: i2c_bitw_out */
-/* 0x07fa: i2c_bitr */
-       0x37f000f8,
-       0xb321f501,
-       0xe8e7f106,
-       0x7f21f403,
-       0xb60076bb,
-       0x50f90465,
-       0xbb046594,
-       0x50bd0256,
-       0xfc0475fd,
-       0x0521f550,
-       0x0464b607,
-       0xf51b11f4,
-       0xf006ed21,
+       0xf07f21f4,
        0x21f50037,
-       0xe7f10691,
+       0xe7f106de,
        0x21f41388,
-       0x013cf07f,
-/* 0x083f: i2c_bitr_done */
-       0xf80131f4,
-/* 0x0841: i2c_get_byte */
-       0x0057f000,
-/* 0x0847: i2c_get_byte_next */
-       0xb60847f0,
-       0x76bb0154,
-       0x0465b600,
-       0x659450f9,
-       0x0256bb04,
-       0x75fd50bd,
-       0xf550fc04,
-       0xb607fa21,
-       0x11f40464,
-       0x0553fd2b,
-       0xf40142b6,
-       0x37f0d81b,
-       0x0076bb01,
+/* 0x0845: i2c_bitw_out */
+/* 0x0847: i2c_bitr */
+       0xf000f87f,
+       0x21f50137,
+       0xe7f10700,
+       0x21f403e8,
+       0x0076bb7f,
        0xf90465b6,
        0x04659450,
        0xbd0256bb,
        0x0475fd50,
        0x21f550fc,
-       0x64b607b9,
-/* 0x0891: i2c_get_byte_done */
-/* 0x0893: i2c_put_byte */
-       0xf000f804,
-/* 0x0896: i2c_put_byte_next */
-       0x42b60847,
-       0x3854ff01,
-       0xb60076bb,
-       0x50f90465,
-       0xbb046594,
-       0x50bd0256,
-       0xfc0475fd,
-       0xb921f550,
-       0x0464b607,
-       0xb03411f4,
-       0x1bf40046,
-       0x0076bbd8,
+       0x64b60752,
+       0x1b11f404,
+       0x073a21f5,
+       0xf50037f0,
+       0xf106de21,
+       0xf41388e7,
+       0x3cf07f21,
+       0x0131f401,
+/* 0x088c: i2c_bitr_done */
+/* 0x088e: i2c_get_byte */
+       0x57f000f8,
+       0x0847f000,
+/* 0x0894: i2c_get_byte_next */
+       0xbb0154b6,
+       0x65b60076,
+       0x9450f904,
+       0x56bb0465,
+       0xfd50bd02,
+       0x50fc0475,
+       0x084721f5,
+       0xf40464b6,
+       0x53fd2b11,
+       0x0142b605,
+       0xf0d81bf4,
+       0x76bb0137,
+       0x0465b600,
+       0x659450f9,
+       0x0256bb04,
+       0x75fd50bd,
+       0xf550fc04,
+       0xb6080621,
+/* 0x08de: i2c_get_byte_done */
+       0x00f80464,
+/* 0x08e0: i2c_put_byte */
+/* 0x08e3: i2c_put_byte_next */
+       0xb60847f0,
+       0x54ff0142,
+       0x0076bb38,
        0xf90465b6,
        0x04659450,
        0xbd0256bb,
        0x0475fd50,
        0x21f550fc,
-       0x64b607fa,
-       0x0f11f404,
-       0xb00076bb,
-       0x1bf40136,
-       0x0132f406,
-/* 0x08ec: i2c_put_byte_done */
-/* 0x08ee: i2c_addr */
-       0x76bb00f8,
+       0x64b60806,
+       0x3411f404,
+       0xf40046b0,
+       0x76bbd81b,
        0x0465b600,
        0x659450f9,
        0x0256bb04,
        0x75fd50bd,
        0xf550fc04,
-       0xb6072a21,
+       0xb6084721,
        0x11f40464,
-       0x2ec3e729,
-       0x0134b601,
-       0xbb0553fd,
+       0x0076bb0f,
+       0xf40136b0,
+       0x32f4061b,
+/* 0x0939: i2c_put_byte_done */
+/* 0x093b: i2c_addr */
+       0xbb00f801,
        0x65b60076,
        0x9450f904,
        0x56bb0465,
        0xfd50bd02,
        0x50fc0475,
-       0x089321f5,
-/* 0x0933: i2c_addr_done */
-       0xf80464b6,
-/* 0x0935: i2c_acquire_addr */
-       0xf8cec700,
-       0xb702e4b6,
-       0x980c10e0,
-       0x00f800ee,
-/* 0x0944: i2c_acquire */
-       0x093521f5,
-       0xf00421f4,
-       0x21f403d9,
-/* 0x0953: i2c_release */
-       0xf500f83f,
-       0xf4093521,
-       0xdaf00421,
-       0x3f21f403,
-/* 0x0962: i2c_recv */
-       0x32f400f8,
-       0xf8c1c701,
-       0xb00214b6,
-       0x1ff52816,
-       0x13a0013a,
-       0x32980be8,
-       0xc013a000,
-       0x0031980b,
-       0xf90231f4,
-       0xf9e0f9d0,
-       0x0067f1d0,
-       0x0063f100,
-       0x01679210,
+       0x077721f5,
+       0xf40464b6,
+       0xc3e72911,
+       0x34b6012e,
+       0x0553fd01,
        0xb60076bb,
        0x50f90465,
        0xbb046594,
        0x50bd0256,
        0xfc0475fd,
-       0x4421f550,
-       0x0464b609,
-       0xd6b0d0fc,
-       0xb31bf500,
-       0x0057f000,
+       0xe021f550,
+       0x0464b608,
+/* 0x0980: i2c_addr_done */
+/* 0x0982: i2c_acquire_addr */
+       0xcec700f8,
+       0x02e4b6f8,
+       0x0c10e0b7,
+       0xf800ee98,
+/* 0x0991: i2c_acquire */
+       0x8221f500,
+       0x0421f409,
+       0xf403d9f0,
+       0x00f83f21,
+/* 0x09a0: i2c_release */
+       0x098221f5,
+       0xf00421f4,
+       0x21f403da,
+/* 0x09af: i2c_recv */
+       0xf400f83f,
+       0xc1c70132,
+       0x0214b6f8,
+       0xf52816b0,
+       0xa0013a1f,
+       0x980be813,
+       0x13a00032,
+       0x31980bc0,
+       0x0231f400,
+       0xe0f9d0f9,
+       0x67f1d0f9,
+       0x63f10000,
+       0x67921000,
+       0x0076bb01,
+       0xf90465b6,
+       0x04659450,
+       0xbd0256bb,
+       0x0475fd50,
+       0x21f550fc,
+       0x64b60991,
+       0xb0d0fc04,
+       0x1bf500d6,
+       0x57f000b3,
+       0x0076bb00,
+       0xf90465b6,
+       0x04659450,
+       0xbd0256bb,
+       0x0475fd50,
+       0x21f550fc,
+       0x64b6093b,
+       0xd011f504,
+       0xe0c5c700,
        0xb60076bb,
        0x50f90465,
        0xbb046594,
        0x50bd0256,
        0xfc0475fd,
-       0xee21f550,
+       0xe021f550,
        0x0464b608,
-       0x00d011f5,
-       0xbbe0c5c7,
+       0x00ad11f5,
+       0xbb0157f0,
        0x65b60076,
        0x9450f904,
        0x56bb0465,
        0xfd50bd02,
        0x50fc0475,
-       0x089321f5,
+       0x093b21f5,
        0xf50464b6,
-       0xf000ad11,
-       0x76bb0157,
-       0x0465b600,
-       0x659450f9,
-       0x0256bb04,
-       0x75fd50bd,
-       0xf550fc04,
-       0xb608ee21,
-       0x11f50464,
-       0x76bb008a,
-       0x0465b600,
-       0x659450f9,
-       0x0256bb04,
-       0x75fd50bd,
-       0xf550fc04,
-       0xb6084121,
-       0x11f40464,
-       0xe05bcb6a,
-       0xb60076bb,
-       0x50f90465,
-       0xbb046594,
-       0x50bd0256,
-       0xfc0475fd,
-       0x8621f550,
-       0x0464b607,
-       0xbd025bb9,
-       0x430ef474,
-/* 0x0a68: i2c_recv_not_rd08 */
-       0xf401d6b0,
-       0x57f03d1b,
-       0xee21f500,
-       0x3311f408,
-       0xf5e0c5c7,
-       0xf4089321,
-       0x57f02911,
-       0xee21f500,
-       0x1f11f408,
-       0xf5e0b5c7,
-       0xf4089321,
-       0x21f51511,
-       0x74bd0786,
-       0xf408c5c7,
-       0x32f4091b,
-       0x030ef402,
-/* 0x0aa8: i2c_recv_not_wr08 */
-/* 0x0aa8: i2c_recv_done */
-       0xf5f8cec7,
-       0xfc095321,
-       0xf4d0fce0,
-       0x7cb90a12,
-       0x4221f502,
-/* 0x0abd: i2c_recv_exit */
-/* 0x0abf: i2c_init */
-       0xf800f803,
-/* 0x0ac1: test_recv */
-       0xd817f100,
-       0x0614b605,
-       0xb60011cf,
-       0x07f10110,
-       0x04b605d8,
-       0x0001d006,
-       0xe7f104bd,
-       0xe3f1d900,
-       0x21f5134f,
-       0x00f80262,
-/* 0x0ae8: test_init */
-       0x0800e7f1,
-       0x026221f5,
-/* 0x0af2: idle_recv */
-       0x00f800f8,
-/* 0x0af4: idle */
-       0xf10031f4,
-       0xb605d417,
-       0x11cf0614,
-       0x0110b600,
-       0x05d407f1,
-       0xd00604b6,
-       0x04bd0001,
-/* 0x0b10: idle_loop */
-       0xf45817f0,
-/* 0x0b16: idle_proc */
-/* 0x0b16: idle_proc_exec */
-       0x10f90232,
-       0xf5021eb9,
-       0xfc034b21,
-       0x0911f410,
-       0xf40231f4,
-/* 0x0b2a: idle_proc_next */
-       0x10b6ef0e,
-       0x061fb858,
-       0xf4e61bf4,
-       0x28f4dd02,
-       0xbb0ef400,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
-       0x00000000,
+       0xbb008a11,
+       0x65b60076,
+       0x9450f904,
+       0x56bb0465,
+       0xfd50bd02,
+       0x50fc0475,
+       0x088e21f5,
+       0xf40464b6,
+       0x5bcb6a11,
+       0x0076bbe0,
+       0xf90465b6,
+       0x04659450,
+       0xbd0256bb,
+       0x0475fd50,
+       0x21f550fc,
+       0x64b607d3,
+       0x025bb904,
+       0x0ef474bd,
+/* 0x0ab5: i2c_recv_not_rd08 */
+       0x01d6b043,
+       0xf03d1bf4,
+       0x21f50057,
+       0x11f4093b,
+       0xe0c5c733,
+       0x08e021f5,
+       0xf02911f4,
+       0x21f50057,
+       0x11f4093b,
+       0xe0b5c71f,
+       0x08e021f5,
+       0xf51511f4,
+       0xbd07d321,
+       0x08c5c774,
+       0xf4091bf4,
+       0x0ef40232,
+/* 0x0af5: i2c_recv_not_wr08 */
+/* 0x0af5: i2c_recv_done */
+       0xf8cec703,
+       0x09a021f5,
+       0xd0fce0fc,
+       0xb90a12f4,
+       0x21f5027c,
+/* 0x0b0a: i2c_recv_exit */
+       0x00f80342,
+/* 0x0b0c: i2c_init */
+/* 0x0b0e: test_recv */
+       0x17f100f8,
+       0x14b605d8,
+       0x0011cf06,
+       0xf10110b6,
+       0xb605d807,
+       0x01d00604,
+       0xf104bd00,
+       0xf1d900e7,
+       0xf5134fe3,
+       0xf8026221,
+/* 0x0b35: test_init */
+       0x00e7f100,
+       0x6221f508,
+/* 0x0b3f: idle_recv */
+       0xf800f802,
+/* 0x0b41: idle */
+       0x0031f400,
+       0x05d417f1,
+       0xcf0614b6,
+       0x10b60011,
+       0xd407f101,
+       0x0604b605,
+       0xbd0001d0,
+/* 0x0b5d: idle_loop */
+       0x5817f004,
+/* 0x0b63: idle_proc */
+/* 0x0b63: idle_proc_exec */
+       0xf90232f4,
+       0x021eb910,
+       0x034b21f5,
+       0x11f410fc,
+       0x0231f409,
+/* 0x0b77: idle_proc_next */
+       0xb6ef0ef4,
+       0x1fb85810,
+       0xe61bf406,
+       0xf4dd02f4,
+       0x0ef40028,
+       0x000000bb,
        0x00000000,
        0x00000000,
        0x00000000,