summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau
diff options
context:
space:
mode:
authorMartin Peres <martin.peres@labri.fr>2014-08-17 17:33:12 +0200
committerBen Skeggs <bskeggs@redhat.com>2014-09-15 22:24:56 +1000
commitd5837df18c0700699dccdfd84f5eb94913b188c6 (patch)
treefebe5437ad6dee0066ab6f4a17e3c6ab54dfa3b0 /drivers/gpu/drm/nouveau
parent2befd17de2dff0238800ffa0b8364e2053f65e9f (diff)
drm/nouveau/pwr: add helpers for delay-to-ticks and ticks-to-delay
Signed-off-by: Martin Peres <martin.peres@free.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau')
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/kernel.fuc74
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc1
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc.h1105
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc1
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h1191
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc1
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc.h1191
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc1
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc.h1165
9 files changed, 2446 insertions, 2284 deletions
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/kernel.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/kernel.fuc
index dd86439ec853..54276c9d0800 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/kernel.fuc
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/kernel.fuc
@@ -242,6 +242,80 @@ intr:
bclr $flags $p0
iret
+// calculate the number of ticks in the specified nanoseconds delay
+//
+// $r15 - current
+// $r14 - ns
+// $r14 - ticks (return)
+// $r0 - zero
+ticks_from_ns:
+ push $r12
+ push $r11
+
+ /* try not losing precision (multiply then divide) */
+ imm32($r13, HW_TICKS_PER_US)
+ call #mulu32_32_64
+
+ /* use an immeditate, it's ok because HW_TICKS_PER_US < 16 bits */
+ div $r12 $r12 1000
+
+ /* check if there wasn't any overflow */
+ cmpu b32 $r11 0
+ bra e #ticks_from_ns_quit
+
+ /* let's divide then multiply, too bad for the precision! */
+ div $r14 $r14 1000
+ imm32($r13, HW_TICKS_PER_US)
+ call #mulu32_32_64
+
+ /* this cannot overflow as long as HW_TICKS_PER_US < 1000 */
+
+ticks_from_ns_quit:
+ mov b32 $r14 $r12
+ pop $r11
+ pop $r12
+ ret
+
+// calculate the number of ticks in the specified microsecond delay
+//
+// $r15 - current
+// $r14 - us
+// $r14 - ticks (return)
+// $r0 - zero
+ticks_from_us:
+ push $r12
+ push $r11
+
+ /* simply multiply $us by HW_TICKS_PER_US */
+ imm32($r13, HW_TICKS_PER_US)
+ call #mulu32_32_64
+ mov b32 $r14 $r12
+
+ /* check if there wasn't any overflow */
+ cmpu b32 $r11 0
+ bra e #ticks_from_us_quit
+
+ /* Overflow! */
+ clear b32 $r14
+
+ticks_from_us_quit:
+ pop $r11
+ pop $r12
+ ret
+
+// calculate the number of ticks in the specified microsecond delay
+//
+// $r15 - current
+// $r14 - ticks
+// $r14 - us (return)
+// $r0 - zero
+ticks_to_us:
+ /* simply divide $ticks by HW_TICKS_PER_US */
+ imm32($r13, HW_TICKS_PER_US)
+ div $r14 $r14 $r13
+
+ ret
+
// request the current process be sent a message after a timeout expires
//
// $r15 - current
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc
index cdff6f649286..b439519ec866 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc
@@ -23,6 +23,7 @@
*/
#define NVKM_PPWR_CHIPSET GK208
+#define HW_TICKS_PER_US 324
#define NVKM_FALCON_PC24
#define NVKM_FALCON_UNSHIFTED_IO
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc.h b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc.h
index ae8850c76466..fe8dd23f5e3b 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc.h
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nv108.fuc.h
@@ -24,8 +24,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
/* 0x0058: proc_list_head */
0x54534f48,
- 0x000003e0,
- 0x00000391,
+ 0x0000043b,
+ 0x000003ec,
0x00000000,
0x00000000,
0x00000000,
@@ -46,8 +46,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
0x00000000,
0x584d454d,
- 0x000004cb,
- 0x000004bd,
+ 0x00000526,
+ 0x00000518,
0x00000000,
0x00000000,
0x00000000,
@@ -68,8 +68,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
0x00000000,
0x46524550,
- 0x000004cf,
- 0x000004cd,
+ 0x0000052a,
+ 0x00000528,
0x00000000,
0x00000000,
0x00000000,
@@ -90,8 +90,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
0x00000000,
0x5f433249,
- 0x000008d3,
- 0x0000077a,
+ 0x0000092e,
+ 0x000007d5,
0x00000000,
0x00000000,
0x00000000,
@@ -112,8 +112,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
0x00000000,
0x54534554,
- 0x000008f4,
- 0x000008d5,
+ 0x0000094f,
+ 0x00000930,
0x00000000,
0x00000000,
0x00000000,
@@ -134,8 +134,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000,
0x00000000,
0x454c4449,
- 0x000008ff,
- 0x000008fd,
+ 0x0000095a,
+ 0x00000958,
0x00000000,
0x00000000,
0x00000000,
@@ -229,20 +229,20 @@ uint32_t nv108_pwr_data[] = {
/* 0x0370: memx_func_head */
0x00010000,
0x00000000,
- 0x00000410,
+ 0x0000046b,
/* 0x037c: memx_func_next */
0x00000001,
0x00000000,
- 0x0000042e,
+ 0x00000489,
0x00000002,
0x00000002,
- 0x00000446,
+ 0x000004a1,
0x00040003,
0x00000000,
- 0x00000463,
+ 0x000004be,
0x00010004,
0x00000000,
- 0x0000047d,
+ 0x000004d8,
/* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */
0x00000000,
@@ -784,7 +784,7 @@ uint32_t nv108_pwr_data[] = {
};
uint32_t nv108_pwr_code[] = {
- 0x02a90ef5,
+ 0x03040ef5,
/* 0x0004: rd32 */
0xf607a040,
0x04bd000e,
@@ -836,7 +836,7 @@ uint32_t nv108_pwr_code[] = {
0x0a98280b,
0x029abb9a,
0x0d0e1cf4,
- 0x01f67e01,
+ 0x02517e01,
0xf494bd00,
/* 0x00b2: intr_watchdog_next_time */
0x0a98140e,
@@ -881,7 +881,7 @@ uint32_t nv108_pwr_code[] = {
0xc0f900cc,
0xf14f484e,
0x0d5453e3,
- 0x02577e00,
+ 0x02b27e00,
0x40c0fc00,
0x0cf604c0,
/* 0x0157: intr_subintr_skip_fifo */
@@ -904,598 +904,603 @@ uint32_t nv108_pwr_code[] = {
0xfca0fcb0,
0xfc80fc90,
0x0032f400,
-/* 0x0196: timer */
- 0x90f901f8,
- 0x32f480f9,
- 0x03f89810,
- 0xf40086b0,
- 0x84bd4a1c,
- 0x08f63800,
- 0x0804bd00,
- 0x0088cf34,
- 0xbb9a0998,
- 0xe9bb0298,
- 0x03feb500,
- 0x88cf0808,
- 0x0284f000,
- 0x081c1bf4,
- 0x0088cf34,
- 0x0bf4e0a6,
- 0xf4e8a608,
-/* 0x01da: timer_reset */
- 0x34000d1c,
- 0xbd000ef6,
- 0x9a0eb504,
-/* 0x01e4: timer_enable */
- 0x38000108,
- 0xbd0008f6,
-/* 0x01ed: timer_done */
- 0x1031f404,
- 0x90fc80fc,
-/* 0x01f6: send_proc */
- 0x80f900f8,
- 0xe89890f9,
- 0x04e99805,
- 0xa60486f0,
- 0x2a0bf489,
- 0x940398c4,
- 0x80b60488,
- 0x008ebb18,
- 0xb500fa98,
- 0x8db5008a,
- 0x028cb501,
- 0xb6038bb5,
- 0x94f00190,
- 0x04e9b507,
-/* 0x022f: send_done */
- 0xfc0231f4,
- 0xf880fc90,
-/* 0x0235: find */
- 0x0880f900,
- 0x0131f458,
-/* 0x023c: find_loop */
- 0xa6008a98,
- 0x100bf4ae,
- 0xb15880b6,
- 0xf4026886,
- 0x32f4f11b,
-/* 0x0251: find_done */
- 0xfc8eb201,
-/* 0x0257: send */
- 0x7e00f880,
- 0xf4000235,
- 0x00f89b01,
-/* 0x0260: recv */
- 0x9805e898,
- 0x32f404e9,
- 0xf489a601,
- 0x89c43c0b,
- 0x0180b603,
- 0xb50784f0,
- 0xea9805e8,
- 0xfef0f902,
- 0xf0f9018f,
- 0x9994efb2,
- 0x00e9bb04,
- 0x9818e0b6,
- 0xec9803eb,
- 0x01ed9802,
- 0xf900ee98,
- 0xfef0fca5,
- 0x31f400f8,
-/* 0x02a7: recv_done */
- 0xf8f0fc01,
-/* 0x02a9: init */
- 0x01084100,
- 0xe70011cf,
- 0xb6010911,
- 0x14fe0814,
- 0x00e04100,
- 0x000013f0,
- 0x0001f61c,
- 0xff0104bd,
- 0x01f61400,
- 0x0104bd00,
- 0x0015f102,
- 0xf6100008,
- 0x04bd0001,
- 0xf000d241,
- 0x10fe0013,
- 0x1031f400,
- 0x38000101,
+/* 0x0196: ticks_from_ns */
+ 0xc0f901f8,
+ 0xd7f1b0f9,
+ 0xd3f00144,
+ 0x5f21f500,
+ 0xe8ccec03,
+ 0x00b4b003,
+ 0xec120bf4,
+ 0xf103e8ee,
+ 0xf00144d7,
+ 0x21f500d3,
+/* 0x01be: ticks_from_ns_quit */
+ 0xceb2035f,
+ 0xc0fcb0fc,
+/* 0x01c6: ticks_from_us */
+ 0xc0f900f8,
+ 0xd7f1b0f9,
+ 0xd3f00144,
+ 0x5f21f500,
+ 0xb0ceb203,
+ 0x0bf400b4,
+/* 0x01df: ticks_from_us_quit */
+ 0xfce4bd05,
+ 0xf8c0fcb0,
+/* 0x01e5: ticks_to_us */
+ 0x44d7f100,
+ 0x00d3f001,
+ 0xf8ecedff,
+/* 0x01f1: timer */
+ 0xf990f900,
+ 0x1032f480,
+ 0xb003f898,
+ 0x1cf40086,
+ 0x0084bd4a,
+ 0x0008f638,
+ 0x340804bd,
+ 0x980088cf,
+ 0x98bb9a09,
+ 0x00e9bb02,
+ 0x0803feb5,
+ 0x0088cf08,
+ 0xf40284f0,
+ 0x34081c1b,
+ 0xa60088cf,
+ 0x080bf4e0,
+ 0x1cf4e8a6,
+/* 0x0235: timer_reset */
+ 0xf634000d,
+ 0x04bd000e,
+/* 0x023f: timer_enable */
+ 0x089a0eb5,
+ 0xf6380001,
+ 0x04bd0008,
+/* 0x0248: timer_done */
+ 0xfc1031f4,
+ 0xf890fc80,
+/* 0x0251: send_proc */
+ 0xf980f900,
+ 0x05e89890,
+ 0xf004e998,
+ 0x89a60486,
+ 0xc42a0bf4,
+ 0x88940398,
+ 0x1880b604,
+ 0x98008ebb,
+ 0x8ab500fa,
+ 0x018db500,
+ 0xb5028cb5,
+ 0x90b6038b,
+ 0x0794f001,
+ 0xf404e9b5,
+/* 0x028a: send_done */
+ 0x90fc0231,
+ 0x00f880fc,
+/* 0x0290: find */
+ 0x580880f9,
+/* 0x0297: find_loop */
+ 0x980131f4,
+ 0xaea6008a,
+ 0xb6100bf4,
+ 0x86b15880,
+ 0x1bf40268,
+ 0x0132f4f1,
+/* 0x02ac: find_done */
+ 0x80fc8eb2,
+/* 0x02b2: send */
+ 0x907e00f8,
+ 0x01f40002,
+/* 0x02bb: recv */
+ 0x9800f89b,
+ 0xe99805e8,
+ 0x0132f404,
+ 0x0bf489a6,
+ 0x0389c43c,
+ 0xf00180b6,
+ 0xe8b50784,
+ 0x02ea9805,
+ 0x8ffef0f9,
+ 0xb2f0f901,
+ 0x049994ef,
+ 0xb600e9bb,
+ 0xeb9818e0,
+ 0x02ec9803,
+ 0x9801ed98,
+ 0xa5f900ee,
+ 0xf8fef0fc,
+ 0x0131f400,
+/* 0x0302: recv_done */
+ 0x00f8f0fc,
+/* 0x0304: init */
+ 0xcf010841,
+ 0x11e70011,
+ 0x14b60109,
+ 0x0014fe08,
+ 0xf000e041,
+ 0x1c000013,
0xbd0001f6,
-/* 0x02f3: init_proc */
- 0x98580f04,
- 0x16b001f1,
- 0xfa0bf400,
- 0xf0b615f9,
- 0xf20ef458,
-/* 0x0304: mulu32_32_64 */
- 0x20f910f9,
- 0x40f930f9,
- 0x9510e195,
- 0xc4bd10d2,
- 0xedffb4bd,
- 0x301dffc0,
+ 0x00ff0104,
+ 0x0001f614,
+ 0x020104bd,
+ 0x080015f1,
+ 0x01f61000,
+ 0x4104bd00,
+ 0x13f000d2,
+ 0x0010fe00,
+ 0x011031f4,
+ 0xf6380001,
+ 0x04bd0001,
+/* 0x034e: init_proc */
+ 0xf198580f,
+ 0x0016b001,
+ 0xf9fa0bf4,
+ 0x58f0b615,
+/* 0x035f: mulu32_32_64 */
+ 0xf9f20ef4,
+ 0xf920f910,
+ 0x9540f930,
+ 0xd29510e1,
+ 0xbdc4bd10,
+ 0xc0edffb4,
+ 0xb2301dff,
+ 0xff34f134,
+ 0x1034b6ff,
+ 0xbb1045b6,
+ 0xb4bb00c3,
+ 0x30e2ff01,
0x34f134b2,
0x34b6ffff,
0x1045b610,
0xbb00c3bb,
- 0xe2ff01b4,
- 0xf134b230,
- 0xb6ffff34,
- 0x45b61034,
- 0x00c3bb10,
- 0xff01b4bb,
- 0xb3bb3012,
- 0xfc40fc00,
- 0xfc20fc30,
-/* 0x0353: host_send */
- 0x4100f810,
- 0x11cf04b0,
- 0x04a04200,
- 0xa60022cf,
- 0x2e0bf412,
- 0x94071ec4,
- 0xe0b704ee,
- 0xeb980270,
- 0x02ec9803,
- 0x9801ed98,
- 0x577e00ee,
- 0x10b60002,
- 0x0f1ec401,
- 0xf604b040,
- 0x04bd000e,
-/* 0x038f: host_send_done */
- 0xf8c70ef4,
-/* 0x0391: host_recv */
- 0x4e494100,
- 0x525413f1,
- 0x0bf4e1a6,
-/* 0x039d: host_recv_wait */
- 0x04cc41b9,
- 0x420011cf,
- 0x22cf04c8,
- 0x0816f000,
- 0x0bf412a6,
- 0x0723c4ef,
- 0xb70434b6,
- 0xb502f030,
- 0x3cb5033b,
- 0x013db502,
- 0xb6003eb5,
- 0x24f00120,
- 0x04c8400f,
+ 0x12ff01b4,
+ 0x00b3bb30,
+ 0x30fc40fc,
+ 0x10fc20fc,
+/* 0x03ae: host_send */
+ 0xb04100f8,
+ 0x0011cf04,
+ 0xcf04a042,
+ 0x12a60022,
+ 0xc42e0bf4,
+ 0xee94071e,
+ 0x70e0b704,
+ 0x03eb9802,
+ 0x9802ec98,
+ 0xee9801ed,
+ 0x02b27e00,
+ 0x0110b600,
+ 0x400f1ec4,
+ 0x0ef604b0,
+ 0xf404bd00,
+/* 0x03ea: host_send_done */
+ 0x00f8c70e,
+/* 0x03ec: host_recv */
+ 0xf14e4941,
+ 0xa6525413,
+ 0xb90bf4e1,
+/* 0x03f8: host_recv_wait */
+ 0xcf04cc41,
+ 0xc8420011,
+ 0x0022cf04,
+ 0xa60816f0,
+ 0xef0bf412,
+ 0xb60723c4,
+ 0x30b70434,
+ 0x3bb502f0,
+ 0x023cb503,
+ 0xb5013db5,
+ 0x20b6003e,
+ 0x0f24f001,
+ 0xf604c840,
+ 0x04bd0002,
+ 0x00004002,
0xbd0002f6,
- 0x00400204,
- 0x0002f600,
+/* 0x043b: host_init */
+ 0x4100f804,
+ 0x14b60080,
+ 0x7015f110,
+ 0x04d04002,
+ 0xbd0001f6,
+ 0x00804104,
+ 0xf11014b6,
+ 0x4002f015,
+ 0x01f604dc,
+ 0x0104bd00,
+ 0x04c44001,
+ 0xbd0001f6,
+/* 0x046b: memx_func_enter */
+ 0x0600f804,
+ 0x07e04004,
+ 0xbd0006f6,
+/* 0x0475: memx_func_enter_wait */
+ 0x07c04604,
+ 0xf00066cf,
+ 0x0bf40464,
+ 0x001698f7,
+ 0xf80410b6,
+/* 0x0489: memx_func_leave */
+ 0x40040600,
+ 0x06f607e4,
+/* 0x0493: memx_func_leave_wait */
+ 0x4604bd00,
+ 0x66cf07c0,
+ 0x0464f000,
+ 0xf8f71bf4,
+/* 0x04a1: memx_func_wr32 */
+ 0x00169800,
+ 0xb6011598,
+ 0x60f90810,
+ 0xd0fc50f9,
+ 0x2e7ee0fc,
+ 0x42b60000,
+ 0xe81bf402,
+/* 0x04be: memx_func_wait */
+ 0x2c0800f8,
+ 0x980088cf,
+ 0x1d98001e,
+ 0x021c9801,
+ 0xb6031b98,
+ 0x717e1010,
+ 0x00f80000,
+/* 0x04d8: memx_func_delay */
+ 0xb6001e98,
+ 0x5d7e0410,
+ 0x00f80000,
+/* 0x04e4: memx_exec */
+ 0xd0f9e0f9,
+ 0xb2b2c1b2,
+/* 0x04ec: memx_exec_next */
+ 0xb6001398,
+ 0x34950410,
+ 0x0c30f010,
+ 0xf9de3598,
+ 0xf412a655,
+ 0xd0fced1e,
+ 0xb27ee0fc,
+ 0x00f80002,
+/* 0x050c: memx_info */
+ 0x4b03ac4c,
+ 0xb27e0800,
+ 0x00f80002,
+/* 0x0518: memx_recv */
+ 0xf401d6b0,
+ 0xd6b0c90b,
+ 0xeb0bf400,
+/* 0x0526: memx_init */
+ 0x00f800f8,
+/* 0x0528: perf_recv */
+/* 0x052a: perf_init */
+ 0x00f800f8,
+/* 0x052c: i2c_drive_scl */
+ 0xf40036b0,
+ 0xe0400d0b,
+ 0x0001f607,
0x00f804bd,
-/* 0x03e0: host_init */
- 0xb6008041,
- 0x15f11014,
- 0xd0400270,
- 0x0001f604,
- 0x804104bd,
- 0x1014b600,
- 0x02f015f1,
- 0xf604dc40,
+/* 0x053c: i2c_drive_scl_lo */
+ 0xf607e440,
0x04bd0001,
- 0xc4400101,
- 0x0001f604,
+/* 0x0546: i2c_drive_sda */
+ 0x36b000f8,
+ 0x0d0bf400,
+ 0xf607e040,
+ 0x04bd0002,
+/* 0x0556: i2c_drive_sda_lo */
+ 0xe44000f8,
+ 0x0002f607,
0x00f804bd,
-/* 0x0410: memx_func_enter */
- 0xe0400406,
- 0x0006f607,
-/* 0x041a: memx_func_enter_wait */
- 0xc04604bd,
- 0x0066cf07,
- 0xf40464f0,
- 0x1698f70b,
- 0x0410b600,
-/* 0x042e: memx_func_leave */
- 0x040600f8,
- 0xf607e440,
- 0x04bd0006,
-/* 0x0438: memx_func_leave_wait */
- 0xcf07c046,
- 0x64f00066,
- 0xf71bf404,
-/* 0x0446: memx_func_wr32 */
- 0x169800f8,
- 0x01159800,
- 0xf90810b6,
- 0xfc50f960,
- 0x7ee0fcd0,
- 0xb600002e,
- 0x1bf40242,
-/* 0x0463: memx_func_wait */
- 0x0800f8e8,
- 0x0088cf2c,
- 0x98001e98,
- 0x1c98011d,
- 0x031b9802,
- 0x7e1010b6,
- 0xf8000071,
-/* 0x047d: memx_func_delay */
- 0x001e9800,
- 0x7e0410b6,
- 0xf800005d,
-/* 0x0489: memx_exec */
- 0xf9e0f900,
- 0xb2c1b2d0,
-/* 0x0491: memx_exec_next */
- 0x001398b2,
- 0x950410b6,
- 0x30f01034,
- 0xde35980c,
- 0x12a655f9,
- 0xfced1ef4,
- 0x7ee0fcd0,
- 0xf8000257,
-/* 0x04b1: memx_info */
- 0x03ac4c00,
- 0x7e08004b,
- 0xf8000257,
-/* 0x04bd: memx_recv */
- 0x01d6b000,
- 0xb0c90bf4,
- 0x0bf400d6,
-/* 0x04cb: memx_init */
- 0xf800f8eb,
-/* 0x04cd: perf_recv */
-/* 0x04cf: perf_init */
- 0xf800f800,
-/* 0x04d1: i2c_drive_scl */
- 0x0036b000,
- 0x400d0bf4,
- 0x01f607e0,
- 0xf804bd00,
-/* 0x04e1: i2c_drive_scl_lo */
- 0x07e44000,
- 0xbd0001f6,
-/* 0x04eb: i2c_drive_sda */
- 0xb000f804,
- 0x0bf40036,
- 0x07e0400d,
- 0xbd0002f6,
-/* 0x04fb: i2c_drive_sda_lo */
- 0x4000f804,
- 0x02f607e4,
- 0xf804bd00,
-/* 0x0505: i2c_sense_scl */
- 0x0132f400,
- 0xcf07c443,
- 0x31fd0033,
- 0x060bf404,
-/* 0x0517: i2c_sense_scl_done */
- 0xf80131f4,
-/* 0x0519: i2c_sense_sda */
- 0x0132f400,
- 0xcf07c443,
- 0x32fd0033,
- 0x060bf404,
-/* 0x052b: i2c_sense_sda_done */
- 0xf80131f4,
-/* 0x052d: i2c_raise_scl */
- 0x4440f900,
- 0x01030898,
- 0x0004d17e,
-/* 0x0538: i2c_raise_scl_wait */
- 0x7e03e84e,
- 0x7e00005d,
- 0xf4000505,
- 0x42b60901,
- 0xef1bf401,
-/* 0x054c: i2c_raise_scl_done */
- 0x00f840fc,
-/* 0x0550: i2c_start */
- 0x0005057e,
- 0x7e0d11f4,
- 0xf4000519,
- 0x0ef40611,
-/* 0x0561: i2c_start_rep */
- 0x7e00032e,
- 0x030004d1,
- 0x04eb7e01,
+/* 0x0560: i2c_sense_scl */
+ 0x430132f4,
+ 0x33cf07c4,
+ 0x0431fd00,
+ 0xf4060bf4,
+/* 0x0572: i2c_sense_scl_done */
+ 0x00f80131,
+/* 0x0574: i2c_sense_sda */
+ 0x430132f4,
+ 0x33cf07c4,
+ 0x0432fd00,
+ 0xf4060bf4,
+/* 0x0586: i2c_sense_sda_done */
+ 0x00f80131,
+/* 0x0588: i2c_raise_scl */
+ 0x984440f9,
+ 0x7e010308,
+/* 0x0593: i2c_raise_scl_wait */
+ 0x4e00052c,
+ 0x5d7e03e8,
+ 0x607e0000,
+ 0x01f40005,
+ 0x0142b609,
+/* 0x05a7: i2c_raise_scl_done */
+ 0xfcef1bf4,
+/* 0x05ab: i2c_start */
+ 0x7e00f840,
+ 0xf4000560,
+ 0x747e0d11,
+ 0x11f40005,
+ 0x2e0ef406,
+/* 0x05bc: i2c_start_rep */
+ 0x2c7e0003,
+ 0x01030005,
+ 0x0005467e,
+ 0xb60076bb,
+ 0x50f90465,
+ 0xbb046594,
+ 0x50bd0256,
+ 0xfc0475fd,
+ 0x05887e50,
+ 0x0464b600,
+/* 0x05e7: i2c_start_send */
+ 0x031d11f4,
+ 0x05467e00,
+ 0x13884e00,
+ 0x00005d7e,
+ 0x2c7e0003,
+ 0x884e0005,
+ 0x005d7e13,
+/* 0x0601: i2c_start_out */
+/* 0x0603: i2c_stop */
+ 0x0300f800,
+ 0x052c7e00,
+ 0x7e000300,
+ 0x4e000546,
+ 0x5d7e03e8,
+ 0x01030000,
+ 0x00052c7e,
+ 0x7e13884e,
+ 0x0300005d,
+ 0x05467e01,
+ 0x13884e00,
+ 0x00005d7e,
+/* 0x0632: i2c_bitw */
+ 0x467e00f8,
+ 0xe84e0005,
+ 0x005d7e03,
0x0076bb00,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
- 0x2d7e50fc,
+ 0x887e50fc,
0x64b60005,
- 0x1d11f404,
-/* 0x058c: i2c_start_send */
- 0xeb7e0003,
- 0x884e0004,
- 0x005d7e13,
- 0x7e000300,
- 0x4e0004d1,
- 0x5d7e1388,
-/* 0x05a6: i2c_start_out */
- 0x00f80000,
-/* 0x05a8: i2c_stop */
- 0xd17e0003,
- 0x00030004,
- 0x0004eb7e,
- 0x7e03e84e,
+ 0x1711f404,
+ 0x7e13884e,
0x0300005d,
- 0x04d17e01,
+ 0x052c7e00,
0x13884e00,
0x00005d7e,
- 0xeb7e0103,
- 0x884e0004,
- 0x005d7e13,
-/* 0x05d7: i2c_bitw */
- 0x7e00f800,
- 0x4e0004eb,
- 0x5d7e03e8,
- 0x76bb0000,
+/* 0x0670: i2c_bitw_out */
+/* 0x0672: i2c_bitr */
+ 0x010300f8,
+ 0x0005467e,
+ 0x7e03e84e,
+ 0xbb00005d,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x0005887e,
+ 0xf40464b6,
+ 0x747e1a11,
+ 0x00030005,
+ 0x00052c7e,
+ 0x7e13884e,
+ 0xf000005d,
+ 0x31f4013c,
+/* 0x06b5: i2c_bitr_done */
+/* 0x06b7: i2c_get_byte */
+ 0x0500f801,
+/* 0x06bb: i2c_get_byte_next */
+ 0xb6080400,
+ 0x76bb0154,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0x7e50fc04,
- 0xb600052d,
+ 0xb6000672,
0x11f40464,
- 0x13884e17,
- 0x00005d7e,
- 0xd17e0003,
- 0x884e0004,
- 0x005d7e13,
-/* 0x0615: i2c_bitw_out */
-/* 0x0617: i2c_bitr */
- 0x0300f800,
- 0x04eb7e01,
- 0x03e84e00,
- 0x00005d7e,
+ 0x0553fd2a,
+ 0xf40142b6,
+ 0x0103d81b,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x052d7e50,
+ 0x06327e50,
0x0464b600,
- 0x7e1a11f4,
- 0x03000519,
- 0x04d17e00,
- 0x13884e00,
- 0x00005d7e,
- 0xf4013cf0,
-/* 0x065a: i2c_bitr_done */
- 0x00f80131,
-/* 0x065c: i2c_get_byte */
- 0x08040005,
-/* 0x0660: i2c_get_byte_next */
- 0xbb0154b6,
- 0x65b60076,
- 0x9450f904,
- 0x56bb0465,
- 0xfd50bd02,
- 0x50fc0475,
- 0x0006177e,
- 0xf40464b6,
- 0x53fd2a11,
- 0x0142b605,
- 0x03d81bf4,
- 0x0076bb01,
- 0xf90465b6,
- 0x04659450,
- 0xbd0256bb,
- 0x0475fd50,
- 0xd77e50fc,
- 0x64b60005,
-/* 0x06a9: i2c_get_byte_done */
-/* 0x06ab: i2c_put_byte */
- 0x0400f804,
-/* 0x06ad: i2c_put_byte_next */
- 0x0142b608,
- 0xbb3854ff,
+/* 0x0704: i2c_get_byte_done */
+/* 0x0706: i2c_put_byte */
+ 0x080400f8,
+/* 0x0708: i2c_put_byte_next */
+ 0xff0142b6,
+ 0x76bb3854,
+ 0x0465b600,
+ 0x659450f9,
+ 0x0256bb04,
+ 0x75fd50bd,
+ 0x7e50fc04,
+ 0xb6000632,
+ 0x11f40464,
+ 0x0046b034,
+ 0xbbd81bf4,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x0005d77e,
+ 0x0006727e,
0xf40464b6,
- 0x46b03411,
- 0xd81bf400,
+ 0x76bb0f11,
+ 0x0136b000,
+ 0xf4061bf4,
+/* 0x075e: i2c_put_byte_done */
+ 0x00f80132,
+/* 0x0760: i2c_addr */
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x06177e50,
+ 0x05ab7e50,
0x0464b600,
- 0xbb0f11f4,
- 0x36b00076,
- 0x061bf401,
-/* 0x0703: i2c_put_byte_done */
- 0xf80132f4,
-/* 0x0705: i2c_addr */
- 0x0076bb00,
+ 0xe72911f4,
+ 0xb6012ec3,
+ 0x53fd0134,
+ 0x0076bb05,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
- 0x507e50fc,
- 0x64b60005,
- 0x2911f404,
- 0x012ec3e7,
- 0xfd0134b6,
- 0x76bb0553,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0x7e50fc04,
- 0xb60006ab,
-/* 0x074a: i2c_addr_done */
- 0x00f80464,
-/* 0x074c: i2c_acquire_addr */
- 0xb6f8cec7,
- 0xe0b705e4,
- 0x00f8d014,
-/* 0x0758: i2c_acquire */
- 0x00074c7e,
+ 0x067e50fc,
+ 0x64b60007,
+/* 0x07a5: i2c_addr_done */
+/* 0x07a7: i2c_acquire_addr */
+ 0xc700f804,
+ 0xe4b6f8ce,
+ 0x14e0b705,
+/* 0x07b3: i2c_acquire */
+ 0x7e00f8d0,
+ 0x7e0007a7,
+ 0xf0000004,
+ 0x2e7e03d9,
+ 0x00f80000,
+/* 0x07c4: i2c_release */
+ 0x0007a77e,
0x0000047e,
- 0x7e03d9f0,
+ 0x7e03daf0,
0xf800002e,
-/* 0x0769: i2c_release */
- 0x074c7e00,
- 0x00047e00,
- 0x03daf000,
- 0x00002e7e,
-/* 0x077a: i2c_recv */
- 0x32f400f8,
- 0xf8c1c701,
- 0xb00214b6,
- 0x1ff52816,
- 0x13b80137,
- 0x98000bd4,
- 0x13b80032,
- 0x98000bac,
- 0x31f40031,
- 0xf9d0f902,
- 0xf1d0f9e0,
- 0xf1000067,
- 0x92100063,
- 0x76bb0167,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0x7e50fc04,
- 0xb6000758,
- 0xd0fc0464,
- 0xf500d6b0,
- 0x0500b01b,
- 0x0076bb00,
+/* 0x07d5: i2c_recv */
+ 0x0132f400,
+ 0xb6f8c1c7,
+ 0x16b00214,
+ 0x371ff528,
+ 0xd413b801,
+ 0x3298000b,
+ 0xac13b800,
+ 0x3198000b,
+ 0x0231f400,
+ 0xe0f9d0f9,
+ 0x67f1d0f9,
+ 0x63f10000,
+ 0x67921000,
+ 0x0076bb01,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
- 0x057e50fc,
+ 0xb37e50fc,
0x64b60007,
- 0xcc11f504,
- 0xe0c5c700,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x06ab7e50,
- 0x0464b600,
- 0x00a911f5,
- 0x76bb0105,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0x7e50fc04,
- 0xb6000705,
- 0x11f50464,
- 0x76bb0087,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0x7e50fc04,
- 0xb600065c,
- 0x11f40464,
- 0xe05bcb67,
+ 0xb0d0fc04,
+ 0x1bf500d6,
+ 0x000500b0,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x05a87e50,
+ 0x07607e50,
0x0464b600,
- 0x74bd5bb2,
-/* 0x087f: i2c_recv_not_rd08 */
- 0xb0410ef4,
- 0x1bf401d6,
- 0x7e00053b,
- 0xf4000705,
- 0xc5c73211,
- 0x06ab7ee0,
- 0x2811f400,
- 0x057e0005,
+ 0x00cc11f5,
+ 0xbbe0c5c7,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x0007067e,
+ 0xf50464b6,
+ 0x0500a911,
+ 0x0076bb01,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x607e50fc,
+ 0x64b60007,
+ 0x8711f504,
+ 0x0076bb00,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0xb77e50fc,
+ 0x64b60006,
+ 0x6711f404,
+ 0xbbe05bcb,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x0006037e,
+ 0xb20464b6,
+ 0xf474bd5b,
+/* 0x08da: i2c_recv_not_rd08 */
+ 0xd6b0410e,
+ 0x3b1bf401,
+ 0x607e0005,
0x11f40007,
- 0xe0b5c71f,
- 0x0006ab7e,
- 0x7e1511f4,
- 0xbd0005a8,
- 0x08c5c774,
- 0xf4091bf4,
- 0x0ef40232,
-/* 0x08bd: i2c_recv_not_wr08 */
-/* 0x08bd: i2c_recv_done */
- 0xf8cec703,
- 0x0007697e,
- 0xd0fce0fc,
- 0xb20912f4,
- 0x02577e7c,
-/* 0x08d1: i2c_recv_exit */
-/* 0x08d3: i2c_init */
- 0xf800f800,
-/* 0x08d5: test_recv */
- 0x04584100,
+ 0xe0c5c732,
+ 0x0007067e,
+ 0x052811f4,
+ 0x07607e00,
+ 0x1f11f400,
+ 0x7ee0b5c7,
+ 0xf4000706,
+ 0x037e1511,
+ 0x74bd0006,
+ 0xf408c5c7,
+ 0x32f4091b,
+ 0x030ef402,
+/* 0x0918: i2c_recv_not_wr08 */
+/* 0x0918: i2c_recv_done */
+ 0x7ef8cec7,
+ 0xfc0007c4,
+ 0xf4d0fce0,
+ 0x7cb20912,
+ 0x0002b27e,
+/* 0x092c: i2c_recv_exit */
+/* 0x092e: i2c_init */
+ 0x00f800f8,
+/* 0x0930: test_recv */
+ 0xcf045841,
+ 0x10b60011,
+ 0x04584001,
+ 0xbd0001f6,
+ 0x00e7f104,
+ 0x4fe3f1d9,
+ 0x01f17e13,
+/* 0x094f: test_init */
+ 0x4e00f800,
+ 0xf17e0800,
+ 0x00f80001,
+/* 0x0958: idle_recv */
+/* 0x095a: idle */
+ 0x31f400f8,
+ 0x04544100,
0xb60011cf,
- 0x58400110,
+ 0x54400110,
0x0001f604,
- 0xe7f104bd,
- 0xe3f1d900,
- 0x967e134f,
- 0x00f80001,
-/* 0x08f4: test_init */
- 0x7e08004e,
- 0xf8000196,
-/* 0x08fd: idle_recv */
-/* 0x08ff: idle */
- 0xf400f800,
- 0x54410031,
- 0x0011cf04,
- 0x400110b6,
- 0x01f60454,
-/* 0x0913: idle_loop */
- 0x0104bd00,
- 0x0232f458,
-/* 0x0918: idle_proc */
-/* 0x0918: idle_proc_exec */
- 0x1eb210f9,
- 0x0002607e,
- 0x11f410fc,
- 0x0231f409,
-/* 0x092b: idle_proc_next */
- 0xb6f00ef4,
- 0x1fa65810,
- 0xf4e81bf4,
- 0x28f4e002,
- 0xc60ef400,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
+/* 0x096e: idle_loop */
+ 0x580104bd,
+/* 0x0973: idle_proc */
+/* 0x0973: idle_proc_exec */
+ 0xf90232f4,
+ 0x7e1eb210,
+ 0xfc0002bb,
+ 0x0911f410,
+ 0xf40231f4,
+/* 0x0986: idle_proc_next */
+ 0x10b6f00e,
+ 0xf41fa658,
+ 0x02f4e81b,
+ 0x0028f4e0,
+ 0x00c60ef4,
0x00000000,
0x00000000,
0x00000000,
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc
index 86a3ddae0099..daa06c1c655e 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc
@@ -23,6 +23,7 @@
*/
#define NVKM_PPWR_CHIPSET GT215
+#define HW_TICKS_PER_US 203 // should be 202.5
//#define NVKM_FALCON_PC24
//#define NVKM_FALCON_UNSHIFTED_IO
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h
index d0d82c20a38f..8e2ddd9ae9ff 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nva3.fuc.h
@@ -24,8 +24,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
/* 0x0058: proc_list_head */
0x54534f48,
- 0x0000049d,
- 0x0000043a,
+ 0x000004fa,
+ 0x00000497,
0x00000000,
0x00000000,
0x00000000,
@@ -46,8 +46,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
0x00000000,
0x584d454d,
- 0x000005af,
- 0x000005a1,
+ 0x0000060c,
+ 0x000005fe,
0x00000000,
0x00000000,
0x00000000,
@@ -68,8 +68,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
0x00000000,
0x46524550,
- 0x000005b3,
- 0x000005b1,
+ 0x00000610,
+ 0x0000060e,
0x00000000,
0x00000000,
0x00000000,
@@ -90,8 +90,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
0x00000000,
0x5f433249,
- 0x000009e3,
- 0x00000886,
+ 0x00000a40,
+ 0x000008e3,
0x00000000,
0x00000000,
0x00000000,
@@ -112,8 +112,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
0x00000000,
0x54534554,
- 0x00000a0c,
- 0x000009e5,
+ 0x00000a69,
+ 0x00000a42,
0x00000000,
0x00000000,
0x00000000,
@@ -134,8 +134,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000,
0x00000000,
0x454c4449,
- 0x00000a18,
- 0x00000a16,
+ 0x00000a75,
+ 0x00000a73,
0x00000000,
0x00000000,
0x00000000,
@@ -229,20 +229,20 @@ uint32_t nva3_pwr_data[] = {
/* 0x0370: memx_func_head */
0x00010000,
0x00000000,
- 0x000004dc,
+ 0x00000539,
/* 0x037c: memx_func_next */
0x00000001,
0x00000000,
- 0x00000503,
+ 0x00000560,
0x00000002,
0x00000002,
- 0x00000524,
+ 0x00000581,
0x00040003,
0x00000000,
- 0x00000540,
+ 0x0000059d,
0x00010004,
0x00000000,
- 0x0000055d,
+ 0x000005ba,
/* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */
0x00000000,
@@ -849,7 +849,7 @@ uint32_t nva3_pwr_data[] = {
};
uint32_t nva3_pwr_code[] = {
- 0x03290ef5,
+ 0x03860ef5,
/* 0x0004: rd32 */
0x07a007f1,
0xd00604b6,
@@ -915,7 +915,7 @@ uint32_t nva3_pwr_code[] = {
0xbb9a0a98,
0x1cf4029a,
0x01d7f00f,
- 0x027021f5,
+ 0x02cd21f5,
0x0ef494bd,
/* 0x00e9: intr_watchdog_next_time */
0x9b0a9815,
@@ -967,7 +967,7 @@ uint32_t nva3_pwr_code[] = {
0x48e7f1c0,
0x53e3f14f,
0x00d7f054,
- 0x02d521f5,
+ 0x033221f5,
0x07f1c0fc,
0x04b604c0,
0x000cd006,
@@ -993,648 +993,653 @@ uint32_t nva3_pwr_code[] = {
0x90fca0fc,
0x00fc80fc,
0xf80032f4,
-/* 0x01f5: timer */
- 0xf990f901,
- 0x1032f480,
- 0xb003f898,
- 0x1cf40086,
- 0xf084bd65,
- 0x04b63807,
- 0x0008d006,
- 0x87f004bd,
- 0x0684b634,
- 0x980088cf,
- 0x98bb9a09,
- 0x00e9bb02,
- 0xf003fe80,
- 0x84b60887,
- 0x0088cf06,
- 0xf40284f0,
- 0x87f0261b,
- 0x0684b634,
- 0xb80088cf,
- 0x0bf406e0,
- 0x06e8b809,
-/* 0x024b: timer_reset */
- 0xf0111cf4,
- 0x04b63407,
- 0x000ed006,
- 0x0e8004bd,
-/* 0x0259: timer_enable */
- 0x0187f09a,
+/* 0x01f5: ticks_from_ns */
+ 0xf9c0f901,
+ 0xcbd7f1b0,
+ 0x00d3f000,
+ 0x03fb21f5,
+ 0x03e8ccec,
+ 0xf400b4b0,
+ 0xeeec120b,
+ 0xd7f103e8,
+ 0xd3f000cb,
+ 0xfb21f500,
+/* 0x021d: ticks_from_ns_quit */
+ 0x02ceb903,
+ 0xc0fcb0fc,
+/* 0x0226: ticks_from_us */
+ 0xc0f900f8,
+ 0xd7f1b0f9,
+ 0xd3f000cb,
+ 0xfb21f500,
+ 0x02ceb903,
+ 0xf400b4b0,
+ 0xe4bd050b,
+/* 0x0240: ticks_from_us_quit */
+ 0xc0fcb0fc,
+/* 0x0246: ticks_to_us */
+ 0xd7f100f8,
+ 0xd3f000cb,
+ 0xecedff00,
+/* 0x0252: timer */
+ 0x90f900f8,
+ 0x32f480f9,
+ 0x03f89810,
+ 0xf40086b0,
+ 0x84bd651c,
0xb63807f0,
0x08d00604,
-/* 0x0267: timer_done */
- 0xf404bd00,
- 0x80fc1031,
- 0x00f890fc,
-/* 0x0270: send_proc */
- 0x90f980f9,
- 0x9805e898,
- 0x86f004e9,
- 0x0689b804,
- 0xc42a0bf4,
- 0x88940398,
- 0x1880b604,
- 0x98008ebb,
- 0x8a8000fa,
- 0x018d8000,
- 0x80028c80,
- 0x90b6038b,
- 0x0794f001,
- 0xf404e980,
-/* 0x02aa: send_done */
- 0x90fc0231,
- 0x00f880fc,
-/* 0x02b0: find */
- 0x87f080f9,
- 0x0131f458,
-/* 0x02b8: find_loop */
- 0xb8008a98,
- 0x0bf406ae,
- 0x5880b610,
- 0x026886b1,
- 0xf4f01bf4,
-/* 0x02ce: find_done */
- 0x8eb90132,
- 0xf880fc02,
-/* 0x02d5: send */
- 0xb021f500,
- 0x9701f402,
-/* 0x02de: recv */
- 0xe89800f8,
- 0x04e99805,
- 0xb80132f4,
- 0x0bf40689,
- 0x0389c43d,
- 0xf00180b6,
- 0xe8800784,
- 0x02ea9805,
- 0x8ffef0f9,
- 0xb9f0f901,
- 0x999402ef,
- 0x00e9bb04,
- 0x9818e0b6,
- 0xec9803eb,
- 0x01ed9802,
- 0xf900ee98,
- 0xfef0fca5,
- 0x31f400f8,
-/* 0x0327: recv_done */
- 0xf8f0fc01,
-/* 0x0329: init */
- 0x0817f100,
- 0x0614b601,
- 0xe70011cf,
- 0xb6010911,
- 0x14fe0814,
- 0xe017f100,
- 0x0013f000,
- 0xb61c07f0,
- 0x01d00604,
0xf004bd00,
- 0x07f0ff17,
- 0x0604b614,
- 0xbd0001d0,
- 0x0217f004,
- 0x080015f1,
- 0xb61007f0,
- 0x01d00604,
- 0xf104bd00,
- 0xf0010a17,
- 0x10fe0013,
- 0x1031f400,
- 0xf00117f0,
- 0x04b63807,
- 0x0001d006,
- 0xf7f004bd,
-/* 0x038d: init_proc */
- 0x01f19858,
- 0xf40016b0,
- 0x15f9fa0b,
- 0xf458f0b6,
-/* 0x039e: mulu32_32_64 */
- 0x10f9f20e,
- 0x30f920f9,
- 0xe19540f9,
- 0x10d29510,
- 0xb4bdc4bd,
- 0xffc0edff,
- 0x34b9301d,
- 0xff34f102,
- 0x1034b6ff,
- 0xbb1045b6,
- 0xb4bb00c3,
- 0x30e2ff01,
- 0xf10234b9,
- 0xb6ffff34,
- 0x45b61034,
- 0x00c3bb10,
- 0xff01b4bb,
- 0xb3bb3012,
- 0xfc40fc00,
- 0xfc20fc30,
-/* 0x03ef: host_send */
- 0xf100f810,
- 0xb604b017,
- 0x11cf0614,
- 0xa027f100,
- 0x0624b604,
- 0xb80022cf,
- 0x0bf40612,
- 0x071ec432,
- 0xb704ee94,
- 0x980270e0,
- 0xec9803eb,
- 0x01ed9802,
- 0xf500ee98,
- 0xb602d521,
- 0x1ec40110,
- 0xb007f10f,
- 0x0604b604,
- 0xbd000ed0,
- 0xba0ef404,
-/* 0x0438: host_send_done */
-/* 0x043a: host_recv */
+ 0x84b63487,
+ 0x0088cf06,
+ 0xbb9a0998,
+ 0xe9bb0298,
+ 0x03fe8000,
+ 0xb60887f0,
+ 0x88cf0684,
+ 0x0284f000,
+ 0xf0261bf4,
+ 0x84b63487,
+ 0x0088cf06,
+ 0xf406e0b8,
+ 0xe8b8090b,
+ 0x111cf406,
+/* 0x02a8: timer_reset */
+ 0xb63407f0,
+ 0x0ed00604,
+ 0x8004bd00,
+/* 0x02b6: timer_enable */
+ 0x87f09a0e,
+ 0x3807f001,
+ 0xd00604b6,
+ 0x04bd0008,
+/* 0x02c4: timer_done */
+ 0xfc1031f4,
+ 0xf890fc80,
+/* 0x02cd: send_proc */
+ 0xf980f900,
+ 0x05e89890,
+ 0xf004e998,
+ 0x89b80486,
+ 0x2a0bf406,
+ 0x940398c4,
+ 0x80b60488,
+ 0x008ebb18,
+ 0x8000fa98,
+ 0x8d80008a,
+ 0x028c8001,
+ 0xb6038b80,
+ 0x94f00190,
+ 0x04e98007,
+/* 0x0307: send_done */
+ 0xfc0231f4,
+ 0xf880fc90,
+/* 0x030d: find */
+ 0xf080f900,
+ 0x31f45887,
+/* 0x0315: find_loop */
+ 0x008a9801,
+ 0xf406aeb8,
+ 0x80b6100b,
+ 0x6886b158,
+ 0xf01bf402,
+/* 0x032b: find_done */
+ 0xb90132f4,
+ 0x80fc028e,
+/* 0x0332: send */
+ 0x21f500f8,
+ 0x01f4030d,
+/* 0x033b: recv */
+ 0x9800f897,
+ 0xe99805e8,
+ 0x0132f404,
+ 0xf40689b8,
+ 0x89c43d0b,
+ 0x0180b603,
+ 0x800784f0,
+ 0xea9805e8,
+ 0xfef0f902,
+ 0xf0f9018f,
+ 0x9402efb9,
+ 0xe9bb0499,
+ 0x18e0b600,
+ 0x9803eb98,
+ 0xed9802ec,
+ 0x00ee9801,
+ 0xf0fca5f9,
+ 0xf400f8fe,
+ 0xf0fc0131,
+/* 0x0384: recv_done */
+/* 0x0386: init */
0x17f100f8,
- 0x13f14e49,
- 0xe1b85254,
- 0xaa0bf406,
-/* 0x0448: host_recv_wait */
- 0x04cc17f1,
+ 0x14b60108,
+ 0x0011cf06,
+ 0x010911e7,
+ 0xfe0814b6,
+ 0x17f10014,
+ 0x13f000e0,
+ 0x1c07f000,
+ 0xd00604b6,
+ 0x04bd0001,
+ 0xf0ff17f0,
+ 0x04b61407,
+ 0x0001d006,
+ 0x17f004bd,
+ 0x0015f102,
+ 0x1007f008,
+ 0xd00604b6,
+ 0x04bd0001,
+ 0x010a17f1,
+ 0xfe0013f0,
+ 0x31f40010,
+ 0x0117f010,
+ 0xb63807f0,
+ 0x01d00604,
+ 0xf004bd00,
+/* 0x03ea: init_proc */
+ 0xf19858f7,
+ 0x0016b001,
+ 0xf9fa0bf4,
+ 0x58f0b615,
+/* 0x03fb: mulu32_32_64 */
+ 0xf9f20ef4,
+ 0xf920f910,
+ 0x9540f930,
+ 0xd29510e1,
+ 0xbdc4bd10,
+ 0xc0edffb4,
+ 0xb9301dff,
+ 0x34f10234,
+ 0x34b6ffff,
+ 0x1045b610,
+ 0xbb00c3bb,
+ 0xe2ff01b4,
+ 0x0234b930,
+ 0xffff34f1,
+ 0xb61034b6,
+ 0xc3bb1045,
+ 0x01b4bb00,
+ 0xbb3012ff,
+ 0x40fc00b3,
+ 0x20fc30fc,
+ 0x00f810fc,
+/* 0x044c: host_send */
+ 0x04b017f1,
0xcf0614b6,
0x27f10011,
- 0x24b604c8,
+ 0x24b604a0,
0x0022cf06,
- 0xb80816f0,
- 0x0bf40612,
- 0x0723c4e6,
- 0xb70434b6,
- 0x8002f030,
- 0x3c80033b,
- 0x013d8002,
- 0xb6003e80,
- 0x24f00120,
- 0xc807f10f,
+ 0xf40612b8,
+ 0x1ec4320b,
+ 0x04ee9407,
+ 0x0270e0b7,
+ 0x9803eb98,
+ 0xed9802ec,
+ 0x00ee9801,
+ 0x033221f5,
+ 0xc40110b6,
+ 0x07f10f1e,
+ 0x04b604b0,
+ 0x000ed006,
+ 0x0ef404bd,
+/* 0x0495: host_send_done */
+/* 0x0497: host_recv */
+ 0xf100f8ba,
+ 0xf14e4917,
+ 0xb8525413,
+ 0x0bf406e1,
+/* 0x04a5: host_recv_wait */
+ 0xcc17f1aa,
+ 0x0614b604,
+ 0xf10011cf,
+ 0xb604c827,
+ 0x22cf0624,
+ 0x0816f000,
+ 0xf40612b8,
+ 0x23c4e60b,
+ 0x0434b607,
+ 0x02f030b7,
+ 0x80033b80,
+ 0x3d80023c,
+ 0x003e8001,
+ 0xf00120b6,
+ 0x07f10f24,
+ 0x04b604c8,
+ 0x0002d006,
+ 0x27f004bd,
+ 0x0007f040,
+ 0xd00604b6,
+ 0x04bd0002,
+/* 0x04fa: host_init */
+ 0x17f100f8,
+ 0x14b60080,
+ 0x7015f110,
+ 0xd007f102,
0x0604b604,
- 0xbd0002d0,
- 0x4027f004,
- 0xb60007f0,
- 0x02d00604,
- 0xf804bd00,
-/* 0x049d: host_init */
- 0x8017f100,
+ 0xbd0001d0,
+ 0x8017f104,
0x1014b600,
- 0x027015f1,
- 0x04d007f1,
+ 0x02f015f1,
+ 0x04dc07f1,
0xd00604b6,
0x04bd0001,
- 0x008017f1,
- 0xf11014b6,
- 0xf102f015,
- 0xb604dc07,
+ 0xf10117f0,
+ 0xb604c407,
0x01d00604,
- 0xf004bd00,
- 0x07f10117,
- 0x04b604c4,
- 0x0001d006,
- 0x00f804bd,
-/* 0x04dc: memx_func_enter */
+ 0xf804bd00,
+/* 0x0539: memx_func_enter */
+ 0x0467f000,
+ 0x07e007f1,
+ 0xd00604b6,
+ 0x04bd0006,
+/* 0x0548: memx_func_enter_wait */
+ 0x07c067f1,
+ 0xcf0664b6,
+ 0x64f00066,
+ 0xf30bf404,
+ 0xb6001698,
+ 0x00f80410,
+/* 0x0560: memx_func_leave */
0xf10467f0,
- 0xb607e007,
+ 0xb607e407,
0x06d00604,
-/* 0x04eb: memx_func_enter_wait */
+/* 0x056f: memx_func_leave_wait */
0xf104bd00,
0xb607c067,
0x66cf0664,
0x0464f000,
- 0x98f30bf4,
- 0x10b60016,
-/* 0x0503: memx_func_leave */
- 0xf000f804,
- 0x07f10467,
- 0x04b607e4,
- 0x0006d006,
-/* 0x0512: memx_func_leave_wait */
- 0x67f104bd,
- 0x64b607c0,
- 0x0066cf06,
- 0xf40464f0,
- 0x00f8f31b,
-/* 0x0524: memx_func_wr32 */
- 0x98001698,
- 0x10b60115,
- 0xf960f908,
- 0xfcd0fc50,
- 0x3f21f4e0,
- 0xf40242b6,
- 0x00f8e91b,
-/* 0x0540: memx_func_wait */
- 0xb62c87f0,
- 0x88cf0684,
- 0x001e9800,
- 0x98011d98,
- 0x1b98021c,
- 0x1010b603,
- 0xf89c21f4,
-/* 0x055d: memx_func_delay */
- 0x001e9800,
- 0xf40410b6,
- 0x00f87f21,
-/* 0x0568: memx_exec */
- 0xd0f9e0f9,
- 0xb902c1b9,
-/* 0x0572: memx_exec_next */
- 0x139802b2,
+ 0xf8f31bf4,
+/* 0x0581: memx_func_wr32 */
+ 0x00169800,
+ 0xb6011598,
+ 0x60f90810,
+ 0xd0fc50f9,
+ 0x21f4e0fc,
+ 0x0242b63f,
+ 0xf8e91bf4,
+/* 0x059d: memx_func_wait */
+ 0x2c87f000,
+ 0xcf0684b6,
+ 0x1e980088,
+ 0x011d9800,
+ 0x98021c98,
+ 0x10b6031b,
+ 0x9c21f410,
+/* 0x05ba: memx_func_delay */
+ 0x1e9800f8,
0x0410b600,
- 0xf0103495,
- 0x35980c30,
- 0xb855f9de,
- 0x1ef40612,
- 0xfcd0fcec,
- 0xd521f5e0,
-/* 0x0593: memx_info */
- 0xf100f802,
- 0xf103acc7,
- 0xf50800b7,
- 0xf802d521,
-/* 0x05a1: memx_recv */
- 0x01d6b000,
- 0xb0c40bf4,
- 0x0bf400d6,
-/* 0x05af: memx_init */
- 0xf800f8e9,
-/* 0x05b1: perf_recv */
-/* 0x05b3: perf_init */
- 0xf800f800,
-/* 0x05b5: i2c_drive_scl */
- 0x0036b000,
- 0xf1110bf4,
- 0xb607e007,
- 0x01d00604,
- 0xf804bd00,
-/* 0x05c9: i2c_drive_scl_lo */
- 0xe407f100,
- 0x0604b607,
- 0xbd0001d0,
-/* 0x05d7: i2c_drive_sda */
- 0xb000f804,
- 0x0bf40036,
- 0xe007f111,
- 0x0604b607,
- 0xbd0002d0,
-/* 0x05eb: i2c_drive_sda_lo */
- 0xf100f804,
- 0xb607e407,
- 0x02d00604,
- 0xf804bd00,
-/* 0x05f9: i2c_sense_scl */
- 0x0132f400,
- 0x07c437f1,
- 0xcf0634b6,
- 0x31fd0033,
- 0x060bf404,
-/* 0x060f: i2c_sense_scl_done */
- 0xf80131f4,
-/* 0x0611: i2c_sense_sda */
- 0x0132f400,
- 0x07c437f1,
- 0xcf0634b6,
- 0x32fd0033,
- 0x060bf404,
-/* 0x0627: i2c_sense_sda_done */
- 0xf80131f4,
-/* 0x0629: i2c_raise_scl */
- 0xf140f900,
- 0xf0089847,
+ 0xf87f21f4,
+/* 0x05c5: memx_exec */
+ 0xf9e0f900,
+ 0x02c1b9d0,
+/* 0x05cf: memx_exec_next */
+ 0x9802b2b9,
+ 0x10b60013,
+ 0x10349504,
+ 0x980c30f0,
+ 0x55f9de35,
+ 0xf40612b8,
+ 0xd0fcec1e,
+ 0x21f5e0fc,
+ 0x00f80332,
+/* 0x05f0: memx_info */
+ 0x03acc7f1,
+ 0x0800b7f1,
+ 0x033221f5,
+/* 0x05fe: memx_recv */
+ 0xd6b000f8,
+ 0xc40bf401,
+ 0xf400d6b0,
+ 0x00f8e90b,
+/* 0x060c: memx_init */
+/* 0x060e: perf_recv */
+ 0x00f800f8,
+/* 0x0610: perf_init */
+/* 0x0612: i2c_drive_scl */
+ 0x36b000f8,
+ 0x110bf400,
+ 0x07e007f1,
+ 0xd00604b6,
+ 0x04bd0001,
+/* 0x0626: i2c_drive_scl_lo */
+ 0x07f100f8,
+ 0x04b607e4,
+ 0x0001d006,
+ 0x00f804bd,
+/* 0x0634: i2c_drive_sda */
+ 0xf40036b0,
+ 0x07f1110b,
+ 0x04b607e0,
+ 0x0002d006,
+ 0x00f804bd,
+/* 0x0648: i2c_drive_sda_lo */
+ 0x07e407f1,
+ 0xd00604b6,
+ 0x04bd0002,
+/* 0x0656: i2c_sense_scl */
+ 0x32f400f8,
+ 0xc437f101,
+ 0x0634b607,
+ 0xfd0033cf,
+ 0x0bf40431,
+ 0x0131f406,
+/* 0x066c: i2c_sense_scl_done */
+/* 0x066e: i2c_sense_sda */
+ 0x32f400f8,
+ 0xc437f101,
+ 0x0634b607,
+ 0xfd0033cf,
+ 0x0bf40432,
+ 0x0131f406,
+/* 0x0684: i2c_sense_sda_done */
+/* 0x0686: i2c_raise_scl */
+ 0x40f900f8,
+ 0x089847f1,
+ 0xf50137f0,
+/* 0x0693: i2c_raise_scl_wait */
+ 0xf1061221,
+ 0xf403e8e7,
+ 0x21f57f21,
+ 0x01f40656,
+ 0x0142b609,
+/* 0x06a7: i2c_raise_scl_done */
+ 0xfcef1bf4,
+/* 0x06ab: i2c_start */
+ 0xf500f840,
+ 0xf4065621,
+ 0x21f50d11,
+ 0x11f4066e,
+ 0x300ef406,
+/* 0x06bc: i2c_start_rep */
+ 0xf50037f0,
+ 0xf0061221,
0x21f50137,
-/* 0x0636: i2c_raise_scl_wait */
- 0xe7f105b5,
- 0x21f403e8,
- 0xf921f57f,
- 0x0901f405,
- 0xf40142b6,
-/* 0x064a: i2c_raise_scl_done */
- 0x40fcef1b,
-/* 0x064e: i2c_start */
- 0x21f500f8,
- 0x11f405f9,
- 0x1121f50d,
- 0x0611f406,
-/* 0x065f: i2c_start_rep */
- 0xf0300ef4,
+ 0x76bb0634,
+ 0x0465b600,
+ 0x659450f9,
+ 0x0256bb04,
+ 0x75fd50bd,
+ 0xf550fc04,
+ 0xb6068621,
+ 0x11f40464,
+/* 0x06e9: i2c_start_send */
+ 0x0037f01f,
+ 0x063421f5,
+ 0x1388e7f1,
+ 0xf07f21f4,
0x21f50037,
- 0x37f005b5,
- 0xd721f501,
- 0x0076bb05,
+ 0xe7f10612,
+ 0x21f41388,
+/* 0x0705: i2c_start_out */
+/* 0x0707: i2c_stop */
+ 0xf000f87f,
+ 0x21f50037,
+ 0x37f00612,
+ 0x3421f500,
+ 0xe8e7f106,
+ 0x7f21f403,
+ 0xf50137f0,
+ 0xf1061221,
+ 0xf41388e7,
+ 0x37f07f21,
+ 0x3421f501,
+ 0x88e7f106,
+ 0x7f21f413,
+/* 0x073a: i2c_bitw */
+ 0x21f500f8,
+ 0xe7f10634,
+ 0x21f403e8,
+ 0x0076bb7f,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b60629,
- 0x1f11f404,
-/* 0x068c: i2c_start_send */
- 0xf50037f0,
- 0xf105d721,
- 0xf41388e7,
- 0x37f07f21,
- 0xb521f500,
- 0x88e7f105,
- 0x7f21f413,
-/* 0x06a8: i2c_start_out */
-/* 0x06aa: i2c_stop */
- 0x37f000f8,
- 0xb521f500,
- 0x0037f005,
- 0x05d721f5,
- 0x03e8e7f1,
- 0xf07f21f4,
- 0x21f50137,
- 0xe7f105b5,
- 0x21f41388,
- 0x0137f07f,
- 0x05d721f5,
+ 0x64b60686,
+ 0x1811f404,
0x1388e7f1,
- 0xf87f21f4,
-/* 0x06dd: i2c_bitw */
- 0xd721f500,
- 0xe8e7f105,
- 0x7f21f403,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x2921f550,
- 0x0464b606,
- 0xf11811f4,
- 0xf41388e7,
- 0x37f07f21,
- 0xb521f500,
- 0x88e7f105,
- 0x7f21f413,
-/* 0x071c: i2c_bitw_out */
-/* 0x071e: i2c_bitr */
- 0x37f000f8,
- 0xd721f501,
- 0xe8e7f105,
- 0x7f21f403,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x2921f550,
- 0x0464b606,
- 0xf51b11f4,
- 0xf0061121,
+ 0xf07f21f4,
0x21f50037,
- 0xe7f105b5,
+ 0xe7f10612,
0x21f41388,
- 0x013cf07f,
-/* 0x0763: i2c_bitr_done */
- 0xf80131f4,
-/* 0x0765: i2c_get_byte */
- 0x0057f000,
-/* 0x076b: i2c_get_byte_next */
- 0xb60847f0,
- 0x76bb0154,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6071e21,
- 0x11f40464,
- 0x0553fd2b,
- 0xf40142b6,
- 0x37f0d81b,
- 0x0076bb01,
+/* 0x0779: i2c_bitw_out */
+/* 0x077b: i2c_bitr */
+ 0xf000f87f,
+ 0x21f50137,
+ 0xe7f10634,
+ 0x21f403e8,
+ 0x0076bb7f,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b606dd,
-/* 0x07b5: i2c_get_byte_done */
-/* 0x07b7: i2c_put_byte */
- 0xf000f804,
-/* 0x07ba: i2c_put_byte_next */
- 0x42b60847,
- 0x3854ff01,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0xdd21f550,
- 0x0464b606,
- 0xb03411f4,
- 0x1bf40046,
- 0x0076bbd8,
+ 0x64b60686,
+ 0x1b11f404,
+ 0x066e21f5,
+ 0xf50037f0,
+ 0xf1061221,
+ 0xf41388e7,
+ 0x3cf07f21,
+ 0x0131f401,
+/* 0x07c0: i2c_bitr_done */
+/* 0x07c2: i2c_get_byte */
+ 0x57f000f8,
+ 0x0847f000,
+/* 0x07c8: i2c_get_byte_next */
+ 0xbb0154b6,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x077b21f5,
+ 0xf40464b6,
+ 0x53fd2b11,
+ 0x0142b605,
+ 0xf0d81bf4,
+ 0x76bb0137,
+ 0x0465b600,
+ 0x659450f9,
+ 0x0256bb04,
+ 0x75fd50bd,
+ 0xf550fc04,
+ 0xb6073a21,
+/* 0x0812: i2c_get_byte_done */
+ 0x00f80464,
+/* 0x0814: i2c_put_byte */
+/* 0x0817: i2c_put_byte_next */
+ 0xb60847f0,
+ 0x54ff0142,
+ 0x0076bb38,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b6071e,
- 0x0f11f404,
- 0xb00076bb,
- 0x1bf40136,
- 0x0132f406,
-/* 0x0810: i2c_put_byte_done */
-/* 0x0812: i2c_addr */
- 0x76bb00f8,
+ 0x64b6073a,
+ 0x3411f404,
+ 0xf40046b0,
+ 0x76bbd81b,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6064e21,
+ 0xb6077b21,
0x11f40464,
- 0x2ec3e729,
- 0x0134b601,
- 0xbb0553fd,
+ 0x0076bb0f,
+ 0xf40136b0,
+ 0x32f4061b,
+/* 0x086d: i2c_put_byte_done */
+/* 0x086f: i2c_addr */
+ 0xbb00f801,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x07b721f5,
-/* 0x0857: i2c_addr_done */
- 0xf80464b6,
-/* 0x0859: i2c_acquire_addr */
- 0xf8cec700,
- 0xb702e4b6,
- 0x980bfce0,
- 0x00f800ee,
-/* 0x0868: i2c_acquire */
- 0x085921f5,
- 0xf00421f4,
- 0x21f403d9,
-/* 0x0877: i2c_release */
- 0xf500f83f,
- 0xf4085921,
- 0xdaf00421,
- 0x3f21f403,
-/* 0x0886: i2c_recv */
- 0x32f400f8,
- 0xf8c1c701,
- 0xb00214b6,
- 0x1ff52816,
- 0x13a0013a,
- 0x32980bd4,
- 0xac13a000,
- 0x0031980b,
- 0xf90231f4,
- 0xf9e0f9d0,
- 0x0067f1d0,
- 0x0063f100,
- 0x01679210,
+ 0x06ab21f5,
+ 0xf40464b6,
+ 0xc3e72911,
+ 0x34b6012e,
+ 0x0553fd01,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x6821f550,
+ 0x1421f550,
0x0464b608,
- 0xd6b0d0fc,
- 0xb31bf500,
- 0x0057f000,
+/* 0x08b4: i2c_addr_done */
+/* 0x08b6: i2c_acquire_addr */
+ 0xcec700f8,
+ 0x02e4b6f8,
+ 0x0bfce0b7,
+ 0xf800ee98,
+/* 0x08c5: i2c_acquire */
+ 0xb621f500,
+ 0x0421f408,
+ 0xf403d9f0,
+ 0x00f83f21,
+/* 0x08d4: i2c_release */
+ 0x08b621f5,
+ 0xf00421f4,
+ 0x21f403da,
+/* 0x08e3: i2c_recv */
+ 0xf400f83f,
+ 0xc1c70132,
+ 0x0214b6f8,
+ 0xf52816b0,
+ 0xa0013a1f,
+ 0x980bd413,
+ 0x13a00032,
+ 0x31980bac,
+ 0x0231f400,
+ 0xe0f9d0f9,
+ 0x67f1d0f9,
+ 0x63f10000,
+ 0x67921000,
+ 0x0076bb01,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b608c5,
+ 0xb0d0fc04,
+ 0x1bf500d6,
+ 0x57f000b3,
+ 0x0076bb00,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b6086f,
+ 0xd011f504,
+ 0xe0c5c700,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x1221f550,
+ 0x1421f550,
0x0464b608,
- 0x00d011f5,
- 0xbbe0c5c7,
+ 0x00ad11f5,
+ 0xbb0157f0,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x07b721f5,
+ 0x086f21f5,
0xf50464b6,
- 0xf000ad11,
- 0x76bb0157,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6081221,
- 0x11f50464,
- 0x76bb008a,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6076521,
- 0x11f40464,
- 0xe05bcb6a,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0xaa21f550,
- 0x0464b606,
- 0xbd025bb9,
- 0x430ef474,
-/* 0x098c: i2c_recv_not_rd08 */
- 0xf401d6b0,
- 0x57f03d1b,
- 0x1221f500,
- 0x3311f408,
- 0xf5e0c5c7,
- 0xf407b721,
- 0x57f02911,
- 0x1221f500,
- 0x1f11f408,
- 0xf5e0b5c7,
- 0xf407b721,
- 0x21f51511,
- 0x74bd06aa,
- 0xf408c5c7,
- 0x32f4091b,
- 0x030ef402,
-/* 0x09cc: i2c_recv_not_wr08 */
-/* 0x09cc: i2c_recv_done */
- 0xf5f8cec7,
- 0xfc087721,
- 0xf4d0fce0,
- 0x7cb90a12,
- 0xd521f502,
-/* 0x09e1: i2c_recv_exit */
-/* 0x09e3: i2c_init */
+ 0xbb008a11,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x07c221f5,
+ 0xf40464b6,
+ 0x5bcb6a11,
+ 0x0076bbe0,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b60707,
+ 0x025bb904,
+ 0x0ef474bd,
+/* 0x09e9: i2c_recv_not_rd08 */
+ 0x01d6b043,
+ 0xf03d1bf4,
+ 0x21f50057,
+ 0x11f4086f,
+ 0xe0c5c733,
+ 0x081421f5,
+ 0xf02911f4,
+ 0x21f50057,
+ 0x11f4086f,
+ 0xe0b5c71f,
+ 0x081421f5,
+ 0xf51511f4,
+ 0xbd070721,
+ 0x08c5c774,
+ 0xf4091bf4,
+ 0x0ef40232,
+/* 0x0a29: i2c_recv_not_wr08 */
+/* 0x0a29: i2c_recv_done */
+ 0xf8cec703,
+ 0x08d421f5,
+ 0xd0fce0fc,
+ 0xb90a12f4,
+ 0x21f5027c,
+/* 0x0a3e: i2c_recv_exit */
+ 0x00f80332,
+/* 0x0a40: i2c_init */
+/* 0x0a42: test_recv */
+ 0x17f100f8,
+ 0x14b605d8,
+ 0x0011cf06,
+ 0xf10110b6,
+ 0xb605d807,
+ 0x01d00604,
+ 0xf104bd00,
+ 0xf1d900e7,
+ 0xf5134fe3,
+ 0xf8025221,
+/* 0x0a69: test_init */
+ 0x00e7f100,
+ 0x5221f508,
+/* 0x0a73: idle_recv */
0xf800f802,
-/* 0x09e5: test_recv */
- 0xd817f100,
- 0x0614b605,
- 0xb60011cf,
- 0x07f10110,
- 0x04b605d8,
- 0x0001d006,
- 0xe7f104bd,
- 0xe3f1d900,
- 0x21f5134f,
- 0x00f801f5,
-/* 0x0a0c: test_init */
- 0x0800e7f1,
- 0x01f521f5,
-/* 0x0a16: idle_recv */
- 0x00f800f8,
-/* 0x0a18: idle */
- 0xf10031f4,
- 0xb605d417,
- 0x11cf0614,
- 0x0110b600,
- 0x05d407f1,
- 0xd00604b6,
- 0x04bd0001,
-/* 0x0a34: idle_loop */
- 0xf45817f0,
-/* 0x0a3a: idle_proc */
-/* 0x0a3a: idle_proc_exec */
- 0x10f90232,
- 0xf5021eb9,
- 0xfc02de21,
- 0x0911f410,
- 0xf40231f4,
-/* 0x0a4e: 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,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
+/* 0x0a75: idle */
+ 0x0031f400,
+ 0x05d417f1,
+ 0xcf0614b6,
+ 0x10b60011,
+ 0xd407f101,
+ 0x0604b605,
+ 0xbd0001d0,
+/* 0x0a91: idle_loop */
+ 0x5817f004,
+/* 0x0a97: idle_proc */
+/* 0x0a97: idle_proc_exec */
+ 0xf90232f4,
+ 0x021eb910,
+ 0x033b21f5,
+ 0x11f410fc,
+ 0x0231f409,
+/* 0x0aab: idle_proc_next */
+ 0xb6ef0ef4,
+ 0x1fb85810,
+ 0xe61bf406,
+ 0xf4dd02f4,
+ 0x0ef40028,
+ 0x000000bb,
0x00000000,
0x00000000,
0x00000000,
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc
index ddd72d65da02..21bf8cc7618f 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc
@@ -23,6 +23,7 @@
*/
#define NVKM_PPWR_CHIPSET GF100
+#define HW_TICKS_PER_US 203 // should be 202.5
//#define NVKM_FALCON_PC24
//#define NVKM_FALCON_UNSHIFTED_IO
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc.h b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc.h
index 1e2ab16918e1..a0bd2c1b16b3 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc.h
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvc0.fuc.h
@@ -24,8 +24,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
/* 0x0058: proc_list_head */
0x54534f48,
- 0x0000049d,
- 0x0000043a,
+ 0x000004fa,
+ 0x00000497,
0x00000000,
0x00000000,
0x00000000,
@@ -46,8 +46,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
0x00000000,
0x584d454d,
- 0x000005af,
- 0x000005a1,
+ 0x0000060c,
+ 0x000005fe,
0x00000000,
0x00000000,
0x00000000,
@@ -68,8 +68,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
0x00000000,
0x46524550,
- 0x000005b3,
- 0x000005b1,
+ 0x00000610,
+ 0x0000060e,
0x00000000,
0x00000000,
0x00000000,
@@ -90,8 +90,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
0x00000000,
0x5f433249,
- 0x000009e3,
- 0x00000886,
+ 0x00000a40,
+ 0x000008e3,
0x00000000,
0x00000000,
0x00000000,
@@ -112,8 +112,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
0x00000000,
0x54534554,
- 0x00000a0c,
- 0x000009e5,
+ 0x00000a69,
+ 0x00000a42,
0x00000000,
0x00000000,
0x00000000,
@@ -134,8 +134,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000,
0x00000000,
0x454c4449,
- 0x00000a18,
- 0x00000a16,
+ 0x00000a75,
+ 0x00000a73,
0x00000000,
0x00000000,
0x00000000,
@@ -229,20 +229,20 @@ uint32_t nvc0_pwr_data[] = {
/* 0x0370: memx_func_head */
0x00010000,
0x00000000,
- 0x000004dc,
+ 0x00000539,
/* 0x037c: memx_func_next */
0x00000001,
0x00000000,
- 0x00000503,
+ 0x00000560,
0x00000002,
0x00000002,
- 0x00000524,
+ 0x00000581,
0x00040003,
0x00000000,
- 0x00000540,
+ 0x0000059d,
0x00010004,
0x00000000,
- 0x0000055d,
+ 0x000005ba,
/* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */
0x00000000,
@@ -849,7 +849,7 @@ uint32_t nvc0_pwr_data[] = {
};
uint32_t nvc0_pwr_code[] = {
- 0x03290ef5,
+ 0x03860ef5,
/* 0x0004: rd32 */
0x07a007f1,
0xd00604b6,
@@ -915,7 +915,7 @@ uint32_t nvc0_pwr_code[] = {
0xbb9a0a98,
0x1cf4029a,
0x01d7f00f,
- 0x027021f5,
+ 0x02cd21f5,
0x0ef494bd,
/* 0x00e9: intr_watchdog_next_time */
0x9b0a9815,
@@ -967,7 +967,7 @@ uint32_t nvc0_pwr_code[] = {
0x48e7f1c0,
0x53e3f14f,
0x00d7f054,
- 0x02d521f5,
+ 0x033221f5,
0x07f1c0fc,
0x04b604c0,
0x000cd006,
@@ -993,648 +993,653 @@ uint32_t nvc0_pwr_code[] = {
0x90fca0fc,
0x00fc80fc,
0xf80032f4,
-/* 0x01f5: timer */
- 0xf990f901,
- 0x1032f480,
- 0xb003f898,
- 0x1cf40086,
- 0xf084bd65,
- 0x04b63807,
- 0x0008d006,
- 0x87f004bd,
- 0x0684b634,
- 0x980088cf,
- 0x98bb9a09,
- 0x00e9bb02,
- 0xf003fe80,
- 0x84b60887,
- 0x0088cf06,
- 0xf40284f0,
- 0x87f0261b,
- 0x0684b634,
- 0xb80088cf,
- 0x0bf406e0,
- 0x06e8b809,
-/* 0x024b: timer_reset */
- 0xf0111cf4,
- 0x04b63407,
- 0x000ed006,
- 0x0e8004bd,
-/* 0x0259: timer_enable */
- 0x0187f09a,
+/* 0x01f5: ticks_from_ns */
+ 0xf9c0f901,
+ 0xcbd7f1b0,
+ 0x00d3f000,
+ 0x03fb21f5,
+ 0x03e8ccec,
+ 0xf400b4b0,
+ 0xeeec120b,
+ 0xd7f103e8,
+ 0xd3f000cb,
+ 0xfb21f500,
+/* 0x021d: ticks_from_ns_quit */
+ 0x02ceb903,
+ 0xc0fcb0fc,
+/* 0x0226: ticks_from_us */
+ 0xc0f900f8,
+ 0xd7f1b0f9,
+ 0xd3f000cb,
+ 0xfb21f500,
+ 0x02ceb903,
+ 0xf400b4b0,
+ 0xe4bd050b,
+/* 0x0240: ticks_from_us_quit */
+ 0xc0fcb0fc,
+/* 0x0246: ticks_to_us */
+ 0xd7f100f8,
+ 0xd3f000cb,
+ 0xecedff00,
+/* 0x0252: timer */
+ 0x90f900f8,
+ 0x32f480f9,
+ 0x03f89810,
+ 0xf40086b0,
+ 0x84bd651c,
0xb63807f0,
0x08d00604,
-/* 0x0267: timer_done */
- 0xf404bd00,
- 0x80fc1031,
- 0x00f890fc,
-/* 0x0270: send_proc */
- 0x90f980f9,
- 0x9805e898,
- 0x86f004e9,
- 0x0689b804,
- 0xc42a0bf4,
- 0x88940398,
- 0x1880b604,
- 0x98008ebb,
- 0x8a8000fa,
- 0x018d8000,
- 0x80028c80,
- 0x90b6038b,
- 0x0794f001,
- 0xf404e980,
-/* 0x02aa: send_done */
- 0x90fc0231,
- 0x00f880fc,
-/* 0x02b0: find */
- 0x87f080f9,
- 0x0131f458,
-/* 0x02b8: find_loop */
- 0xb8008a98,
- 0x0bf406ae,
- 0x5880b610,
- 0x026886b1,
- 0xf4f01bf4,
-/* 0x02ce: find_done */
- 0x8eb90132,
- 0xf880fc02,
-/* 0x02d5: send */
- 0xb021f500,
- 0x9701f402,
-/* 0x02de: recv */
- 0xe89800f8,
- 0x04e99805,
- 0xb80132f4,
- 0x0bf40689,
- 0x0389c43d,
- 0xf00180b6,
- 0xe8800784,
- 0x02ea9805,
- 0x8ffef0f9,
- 0xb9f0f901,
- 0x999402ef,
- 0x00e9bb04,
- 0x9818e0b6,
- 0xec9803eb,
- 0x01ed9802,
- 0xf900ee98,
- 0xfef0fca5,
- 0x31f400f8,
-/* 0x0327: recv_done */
- 0xf8f0fc01,
-/* 0x0329: init */
- 0x0817f100,
- 0x0614b601,
- 0xe70011cf,
- 0xb6010911,
- 0x14fe0814,
- 0xe017f100,
- 0x0013f000,
- 0xb61c07f0,
- 0x01d00604,
0xf004bd00,
- 0x07f0ff17,
- 0x0604b614,
- 0xbd0001d0,
- 0x0217f004,
- 0x080015f1,
- 0xb61007f0,
- 0x01d00604,
- 0xf104bd00,
- 0xf0010a17,
- 0x10fe0013,
- 0x1031f400,
- 0xf00117f0,
- 0x04b63807,
- 0x0001d006,
- 0xf7f004bd,
-/* 0x038d: init_proc */
- 0x01f19858,
- 0xf40016b0,
- 0x15f9fa0b,
- 0xf458f0b6,
-/* 0x039e: mulu32_32_64 */
- 0x10f9f20e,
- 0x30f920f9,
- 0xe19540f9,
- 0x10d29510,
- 0xb4bdc4bd,
- 0xffc0edff,
- 0x34b9301d,
- 0xff34f102,
- 0x1034b6ff,
- 0xbb1045b6,
- 0xb4bb00c3,
- 0x30e2ff01,
- 0xf10234b9,
- 0xb6ffff34,
- 0x45b61034,
- 0x00c3bb10,
- 0xff01b4bb,
- 0xb3bb3012,
- 0xfc40fc00,
- 0xfc20fc30,
-/* 0x03ef: host_send */
- 0xf100f810,
- 0xb604b017,
- 0x11cf0614,
- 0xa027f100,
- 0x0624b604,
- 0xb80022cf,
- 0x0bf40612,
- 0x071ec432,
- 0xb704ee94,
- 0x980270e0,
- 0xec9803eb,
- 0x01ed9802,
- 0xf500ee98,
- 0xb602d521,
- 0x1ec40110,
- 0xb007f10f,
- 0x0604b604,
- 0xbd000ed0,
- 0xba0ef404,
-/* 0x0438: host_send_done */
-/* 0x043a: host_recv */
+ 0x84b63487,
+ 0x0088cf06,
+ 0xbb9a0998,
+ 0xe9bb0298,
+ 0x03fe8000,
+ 0xb60887f0,
+ 0x88cf0684,
+ 0x0284f000,
+ 0xf0261bf4,
+ 0x84b63487,
+ 0x0088cf06,
+ 0xf406e0b8,
+ 0xe8b8090b,
+ 0x111cf406,
+/* 0x02a8: timer_reset */
+ 0xb63407f0,
+ 0x0ed00604,
+ 0x8004bd00,
+/* 0x02b6: timer_enable */
+ 0x87f09a0e,
+ 0x3807f001,
+ 0xd00604b6,
+ 0x04bd0008,
+/* 0x02c4: timer_done */
+ 0xfc1031f4,
+ 0xf890fc80,
+/* 0x02cd: send_proc */
+ 0xf980f900,
+ 0x05e89890,
+ 0xf004e998,
+ 0x89b80486,
+ 0x2a0bf406,
+ 0x940398c4,
+ 0x80b60488,
+ 0x008ebb18,
+ 0x8000fa98,
+ 0x8d80008a,
+ 0x028c8001,
+ 0xb6038b80,
+ 0x94f00190,
+ 0x04e98007,
+/* 0x0307: send_done */
+ 0xfc0231f4,
+ 0xf880fc90,
+/* 0x030d: find */
+ 0xf080f900,
+ 0x31f45887,
+/* 0x0315: find_loop */
+ 0x008a9801,
+ 0xf406aeb8,
+ 0x80b6100b,
+ 0x6886b158,
+ 0xf01bf402,
+/* 0x032b: find_done */
+ 0xb90132f4,
+ 0x80fc028e,
+/* 0x0332: send */
+ 0x21f500f8,
+ 0x01f4030d,
+/* 0x033b: recv */
+ 0x9800f897,
+ 0xe99805e8,
+ 0x0132f404,
+ 0xf40689b8,
+ 0x89c43d0b,
+ 0x0180b603,
+ 0x800784f0,
+ 0xea9805e8,
+ 0xfef0f902,
+ 0xf0f9018f,
+ 0x9402efb9,
+ 0xe9bb0499,
+ 0x18e0b600,
+ 0x9803eb98,
+ 0xed9802ec,
+ 0x00ee9801,
+ 0xf0fca5f9,
+ 0xf400f8fe,
+ 0xf0fc0131,
+/* 0x0384: recv_done */
+/* 0x0386: init */
0x17f100f8,
- 0x13f14e49,
- 0xe1b85254,
- 0xaa0bf406,
-/* 0x0448: host_recv_wait */
- 0x04cc17f1,
+ 0x14b60108,
+ 0x0011cf06,
+ 0x010911e7,
+ 0xfe0814b6,
+ 0x17f10014,
+ 0x13f000e0,
+ 0x1c07f000,
+ 0xd00604b6,
+ 0x04bd0001,
+ 0xf0ff17f0,
+ 0x04b61407,
+ 0x0001d006,
+ 0x17f004bd,
+ 0x0015f102,
+ 0x1007f008,
+ 0xd00604b6,
+ 0x04bd0001,
+ 0x010a17f1,
+ 0xfe0013f0,
+ 0x31f40010,
+ 0x0117f010,
+ 0xb63807f0,
+ 0x01d00604,
+ 0xf004bd00,
+/* 0x03ea: init_proc */
+ 0xf19858f7,
+ 0x0016b001,
+ 0xf9fa0bf4,
+ 0x58f0b615,
+/* 0x03fb: mulu32_32_64 */
+ 0xf9f20ef4,
+ 0xf920f910,
+ 0x9540f930,
+ 0xd29510e1,
+ 0xbdc4bd10,
+ 0xc0edffb4,
+ 0xb9301dff,
+ 0x34f10234,
+ 0x34b6ffff,
+ 0x1045b610,
+ 0xbb00c3bb,
+ 0xe2ff01b4,
+ 0x0234b930,
+ 0xffff34f1,
+ 0xb61034b6,
+ 0xc3bb1045,
+ 0x01b4bb00,
+ 0xbb3012ff,
+ 0x40fc00b3,
+ 0x20fc30fc,
+ 0x00f810fc,
+/* 0x044c: host_send */
+ 0x04b017f1,
0xcf0614b6,
0x27f10011,
- 0x24b604c8,
+ 0x24b604a0,
0x0022cf06,
- 0xb80816f0,
- 0x0bf40612,
- 0x0723c4e6,
- 0xb70434b6,
- 0x8002f030,
- 0x3c80033b,
- 0x013d8002,
- 0xb6003e80,
- 0x24f00120,
- 0xc807f10f,
+ 0xf40612b8,
+ 0x1ec4320b,
+ 0x04ee9407,
+ 0x0270e0b7,
+ 0x9803eb98,
+ 0xed9802ec,
+ 0x00ee9801,
+ 0x033221f5,
+ 0xc40110b6,
+ 0x07f10f1e,
+ 0x04b604b0,
+ 0x000ed006,
+ 0x0ef404bd,
+/* 0x0495: host_send_done */
+/* 0x0497: host_recv */
+ 0xf100f8ba,
+ 0xf14e4917,
+ 0xb8525413,
+ 0x0bf406e1,
+/* 0x04a5: host_recv_wait */
+ 0xcc17f1aa,
+ 0x0614b604,
+ 0xf10011cf,
+ 0xb604c827,
+ 0x22cf0624,
+ 0x0816f000,
+ 0xf40612b8,
+ 0x23c4e60b,
+ 0x0434b607,
+ 0x02f030b7,
+ 0x80033b80,
+ 0x3d80023c,
+ 0x003e8001,
+ 0xf00120b6,
+ 0x07f10f24,
+ 0x04b604c8,
+ 0x0002d006,
+ 0x27f004bd,
+ 0x0007f040,
+ 0xd00604b6,
+ 0x04bd0002,
+/* 0x04fa: host_init */
+ 0x17f100f8,
+ 0x14b60080,
+ 0x7015f110,
+ 0xd007f102,
0x0604b604,
- 0xbd0002d0,
- 0x4027f004,
- 0xb60007f0,
- 0x02d00604,
- 0xf804bd00,
-/* 0x049d: host_init */
- 0x8017f100,
+ 0xbd0001d0,
+ 0x8017f104,
0x1014b600,
- 0x027015f1,
- 0x04d007f1,
+ 0x02f015f1,
+ 0x04dc07f1,
0xd00604b6,
0x04bd0001,
- 0x008017f1,
- 0xf11014b6,
- 0xf102f015,
- 0xb604dc07,
+ 0xf10117f0,
+ 0xb604c407,
0x01d00604,
- 0xf004bd00,
- 0x07f10117,
- 0x04b604c4,
- 0x0001d006,
- 0x00f804bd,
-/* 0x04dc: memx_func_enter */
+ 0xf804bd00,
+/* 0x0539: memx_func_enter */
+ 0x0467f000,
+ 0x07e007f1,
+ 0xd00604b6,
+ 0x04bd0006,
+/* 0x0548: memx_func_enter_wait */
+ 0x07c067f1,
+ 0xcf0664b6,
+ 0x64f00066,
+ 0xf30bf404,
+ 0xb6001698,
+ 0x00f80410,
+/* 0x0560: memx_func_leave */
0xf10467f0,
- 0xb607e007,
+ 0xb607e407,
0x06d00604,
-/* 0x04eb: memx_func_enter_wait */
+/* 0x056f: memx_func_leave_wait */
0xf104bd00,
0xb607c067,
0x66cf0664,
0x0464f000,
- 0x98f30bf4,
- 0x10b60016,
-/* 0x0503: memx_func_leave */
- 0xf000f804,
- 0x07f10467,
- 0x04b607e4,
- 0x0006d006,
-/* 0x0512: memx_func_leave_wait */
- 0x67f104bd,
- 0x64b607c0,
- 0x0066cf06,
- 0xf40464f0,
- 0x00f8f31b,
-/* 0x0524: memx_func_wr32 */
- 0x98001698,
- 0x10b60115,
- 0xf960f908,
- 0xfcd0fc50,
- 0x3f21f4e0,
- 0xf40242b6,
- 0x00f8e91b,
-/* 0x0540: memx_func_wait */
- 0xb62c87f0,
- 0x88cf0684,
- 0x001e9800,
- 0x98011d98,
- 0x1b98021c,
- 0x1010b603,
- 0xf89c21f4,
-/* 0x055d: memx_func_delay */
- 0x001e9800,
- 0xf40410b6,
- 0x00f87f21,
-/* 0x0568: memx_exec */
- 0xd0f9e0f9,
- 0xb902c1b9,
-/* 0x0572: memx_exec_next */
- 0x139802b2,
+ 0xf8f31bf4,
+/* 0x0581: memx_func_wr32 */
+ 0x00169800,
+ 0xb6011598,
+ 0x60f90810,
+ 0xd0fc50f9,
+ 0x21f4e0fc,
+ 0x0242b63f,
+ 0xf8e91bf4,
+/* 0x059d: memx_func_wait */
+ 0x2c87f000,
+ 0xcf0684b6,
+ 0x1e980088,
+ 0x011d9800,
+ 0x98021c98,
+ 0x10b6031b,
+ 0x9c21f410,
+/* 0x05ba: memx_func_delay */
+ 0x1e9800f8,
0x0410b600,
- 0xf0103495,
- 0x35980c30,
- 0xb855f9de,
- 0x1ef40612,
- 0xfcd0fcec,
- 0xd521f5e0,
-/* 0x0593: memx_info */
- 0xf100f802,
- 0xf103acc7,
- 0xf50800b7,
- 0xf802d521,
-/* 0x05a1: memx_recv */
- 0x01d6b000,
- 0xb0c40bf4,
- 0x0bf400d6,
-/* 0x05af: memx_init */
- 0xf800f8e9,
-/* 0x05b1: perf_recv */
-/* 0x05b3: perf_init */
- 0xf800f800,
-/* 0x05b5: i2c_drive_scl */
- 0x0036b000,
- 0xf1110bf4,
- 0xb607e007,
- 0x01d00604,
- 0xf804bd00,
-/* 0x05c9: i2c_drive_scl_lo */
- 0xe407f100,
- 0x0604b607,
- 0xbd0001d0,
-/* 0x05d7: i2c_drive_sda */
- 0xb000f804,
- 0x0bf40036,
- 0xe007f111,
- 0x0604b607,
- 0xbd0002d0,
-/* 0x05eb: i2c_drive_sda_lo */
- 0xf100f804,
- 0xb607e407,
- 0x02d00604,
- 0xf804bd00,
-/* 0x05f9: i2c_sense_scl */
- 0x0132f400,
- 0x07c437f1,
- 0xcf0634b6,
- 0x31fd0033,
- 0x060bf404,
-/* 0x060f: i2c_sense_scl_done */
- 0xf80131f4,
-/* 0x0611: i2c_sense_sda */
- 0x0132f400,
- 0x07c437f1,
- 0xcf0634b6,
- 0x32fd0033,
- 0x060bf404,
-/* 0x0627: i2c_sense_sda_done */
- 0xf80131f4,
-/* 0x0629: i2c_raise_scl */
- 0xf140f900,
- 0xf0089847,
+ 0xf87f21f4,
+/* 0x05c5: memx_exec */
+ 0xf9e0f900,
+ 0x02c1b9d0,
+/* 0x05cf: memx_exec_next */
+ 0x9802b2b9,
+ 0x10b60013,
+ 0x10349504,
+ 0x980c30f0,
+ 0x55f9de35,
+ 0xf40612b8,
+ 0xd0fcec1e,
+ 0x21f5e0fc,
+ 0x00f80332,
+/* 0x05f0: memx_info */
+ 0x03acc7f1,
+ 0x0800b7f1,
+ 0x033221f5,
+/* 0x05fe: memx_recv */
+ 0xd6b000f8,
+ 0xc40bf401,
+ 0xf400d6b0,
+ 0x00f8e90b,
+/* 0x060c: memx_init */
+/* 0x060e: perf_recv */
+ 0x00f800f8,
+/* 0x0610: perf_init */
+/* 0x0612: i2c_drive_scl */
+ 0x36b000f8,
+ 0x110bf400,
+ 0x07e007f1,
+ 0xd00604b6,
+ 0x04bd0001,
+/* 0x0626: i2c_drive_scl_lo */
+ 0x07f100f8,
+ 0x04b607e4,
+ 0x0001d006,
+ 0x00f804bd,
+/* 0x0634: i2c_drive_sda */
+ 0xf40036b0,
+ 0x07f1110b,
+ 0x04b607e0,
+ 0x0002d006,
+ 0x00f804bd,
+/* 0x0648: i2c_drive_sda_lo */
+ 0x07e407f1,
+ 0xd00604b6,
+ 0x04bd0002,
+/* 0x0656: i2c_sense_scl */
+ 0x32f400f8,
+ 0xc437f101,
+ 0x0634b607,
+ 0xfd0033cf,
+ 0x0bf40431,
+ 0x0131f406,
+/* 0x066c: i2c_sense_scl_done */
+/* 0x066e: i2c_sense_sda */
+ 0x32f400f8,
+ 0xc437f101,
+ 0x0634b607,
+ 0xfd0033cf,
+ 0x0bf40432,
+ 0x0131f406,
+/* 0x0684: i2c_sense_sda_done */
+/* 0x0686: i2c_raise_scl */
+ 0x40f900f8,
+ 0x089847f1,
+ 0xf50137f0,
+/* 0x0693: i2c_raise_scl_wait */
+ 0xf1061221,
+ 0xf403e8e7,
+ 0x21f57f21,
+ 0x01f40656,
+ 0x0142b609,
+/* 0x06a7: i2c_raise_scl_done */
+ 0xfcef1bf4,
+/* 0x06ab: i2c_start */
+ 0xf500f840,
+ 0xf4065621,
+ 0x21f50d11,
+ 0x11f4066e,
+ 0x300ef406,
+/* 0x06bc: i2c_start_rep */
+ 0xf50037f0,
+ 0xf0061221,
0x21f50137,
-/* 0x0636: i2c_raise_scl_wait */
- 0xe7f105b5,
- 0x21f403e8,
- 0xf921f57f,
- 0x0901f405,
- 0xf40142b6,
-/* 0x064a: i2c_raise_scl_done */
- 0x40fcef1b,
-/* 0x064e: i2c_start */
- 0x21f500f8,
- 0x11f405f9,
- 0x1121f50d,
- 0x0611f406,
-/* 0x065f: i2c_start_rep */
- 0xf0300ef4,
+ 0x76bb0634,
+ 0x0465b600,
+ 0x659450f9,
+ 0x0256bb04,
+ 0x75fd50bd,
+ 0xf550fc04,
+ 0xb6068621,
+ 0x11f40464,
+/* 0x06e9: i2c_start_send */
+ 0x0037f01f,
+ 0x063421f5,
+ 0x1388e7f1,
+ 0xf07f21f4,
0x21f50037,
- 0x37f005b5,
- 0xd721f501,
- 0x0076bb05,
+ 0xe7f10612,
+ 0x21f41388,
+/* 0x0705: i2c_start_out */
+/* 0x0707: i2c_stop */
+ 0xf000f87f,
+ 0x21f50037,
+ 0x37f00612,
+ 0x3421f500,
+ 0xe8e7f106,
+ 0x7f21f403,
+ 0xf50137f0,
+ 0xf1061221,
+ 0xf41388e7,
+ 0x37f07f21,
+ 0x3421f501,
+ 0x88e7f106,
+ 0x7f21f413,
+/* 0x073a: i2c_bitw */
+ 0x21f500f8,
+ 0xe7f10634,
+ 0x21f403e8,
+ 0x0076bb7f,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b60629,
- 0x1f11f404,
-/* 0x068c: i2c_start_send */
- 0xf50037f0,
- 0xf105d721,
- 0xf41388e7,
- 0x37f07f21,
- 0xb521f500,
- 0x88e7f105,
- 0x7f21f413,
-/* 0x06a8: i2c_start_out */
-/* 0x06aa: i2c_stop */
- 0x37f000f8,
- 0xb521f500,
- 0x0037f005,
- 0x05d721f5,
- 0x03e8e7f1,
- 0xf07f21f4,
- 0x21f50137,
- 0xe7f105b5,
- 0x21f41388,
- 0x0137f07f,
- 0x05d721f5,
+ 0x64b60686,
+ 0x1811f404,
0x1388e7f1,
- 0xf87f21f4,
-/* 0x06dd: i2c_bitw */
- 0xd721f500,
- 0xe8e7f105,
- 0x7f21f403,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x2921f550,
- 0x0464b606,
- 0xf11811f4,
- 0xf41388e7,
- 0x37f07f21,
- 0xb521f500,
- 0x88e7f105,
- 0x7f21f413,
-/* 0x071c: i2c_bitw_out */
-/* 0x071e: i2c_bitr */
- 0x37f000f8,
- 0xd721f501,
- 0xe8e7f105,
- 0x7f21f403,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x2921f550,
- 0x0464b606,
- 0xf51b11f4,
- 0xf0061121,
+ 0xf07f21f4,
0x21f50037,
- 0xe7f105b5,
+ 0xe7f10612,
0x21f41388,
- 0x013cf07f,
-/* 0x0763: i2c_bitr_done */
- 0xf80131f4,
-/* 0x0765: i2c_get_byte */
- 0x0057f000,
-/* 0x076b: i2c_get_byte_next */
- 0xb60847f0,
- 0x76bb0154,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6071e21,
- 0x11f40464,
- 0x0553fd2b,
- 0xf40142b6,
- 0x37f0d81b,
- 0x0076bb01,
+/* 0x0779: i2c_bitw_out */
+/* 0x077b: i2c_bitr */
+ 0xf000f87f,
+ 0x21f50137,
+ 0xe7f10634,
+ 0x21f403e8,
+ 0x0076bb7f,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b606dd,
-/* 0x07b5: i2c_get_byte_done */
-/* 0x07b7: i2c_put_byte */
- 0xf000f804,
-/* 0x07ba: i2c_put_byte_next */
- 0x42b60847,
- 0x3854ff01,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0xdd21f550,
- 0x0464b606,
- 0xb03411f4,
- 0x1bf40046,
- 0x0076bbd8,
+ 0x64b60686,
+ 0x1b11f404,
+ 0x066e21f5,
+ 0xf50037f0,
+ 0xf1061221,
+ 0xf41388e7,
+ 0x3cf07f21,
+ 0x0131f401,
+/* 0x07c0: i2c_bitr_done */
+/* 0x07c2: i2c_get_byte */
+ 0x57f000f8,
+ 0x0847f000,
+/* 0x07c8: i2c_get_byte_next */
+ 0xbb0154b6,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x077b21f5,
+ 0xf40464b6,
+ 0x53fd2b11,
+ 0x0142b605,
+ 0xf0d81bf4,
+ 0x76bb0137,
+ 0x0465b600,
+ 0x659450f9,
+ 0x0256bb04,
+ 0x75fd50bd,
+ 0xf550fc04,
+ 0xb6073a21,
+/* 0x0812: i2c_get_byte_done */
+ 0x00f80464,
+/* 0x0814: i2c_put_byte */
+/* 0x0817: i2c_put_byte_next */
+ 0xb60847f0,
+ 0x54ff0142,
+ 0x0076bb38,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b6071e,
- 0x0f11f404,
- 0xb00076bb,
- 0x1bf40136,
- 0x0132f406,
-/* 0x0810: i2c_put_byte_done */
-/* 0x0812: i2c_addr */
- 0x76bb00f8,
+ 0x64b6073a,
+ 0x3411f404,
+ 0xf40046b0,
+ 0x76bbd81b,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6064e21,
+ 0xb6077b21,
0x11f40464,
- 0x2ec3e729,
- 0x0134b601,
- 0xbb0553fd,
+ 0x0076bb0f,
+ 0xf40136b0,
+ 0x32f4061b,
+/* 0x086d: i2c_put_byte_done */
+/* 0x086f: i2c_addr */
+ 0xbb00f801,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x07b721f5,
-/* 0x0857: i2c_addr_done */
- 0xf80464b6,
-/* 0x0859: i2c_acquire_addr */
- 0xf8cec700,
- 0xb702e4b6,
- 0x980bfce0,
- 0x00f800ee,
-/* 0x0868: i2c_acquire */
- 0x085921f5,
- 0xf00421f4,
- 0x21f403d9,
-/* 0x0877: i2c_release */
- 0xf500f83f,
- 0xf4085921,
- 0xdaf00421,
- 0x3f21f403,
-/* 0x0886: i2c_recv */
- 0x32f400f8,
- 0xf8c1c701,
- 0xb00214b6,
- 0x1ff52816,
- 0x13a0013a,
- 0x32980bd4,
- 0xac13a000,
- 0x0031980b,
- 0xf90231f4,
- 0xf9e0f9d0,
- 0x0067f1d0,
- 0x0063f100,
- 0x01679210,
+ 0x06ab21f5,
+ 0xf40464b6,
+ 0xc3e72911,
+ 0x34b6012e,
+ 0x0553fd01,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x6821f550,
+ 0x1421f550,
0x0464b608,
- 0xd6b0d0fc,
- 0xb31bf500,
- 0x0057f000,
+/* 0x08b4: i2c_addr_done */
+/* 0x08b6: i2c_acquire_addr */
+ 0xcec700f8,
+ 0x02e4b6f8,
+ 0x0bfce0b7,
+ 0xf800ee98,
+/* 0x08c5: i2c_acquire */
+ 0xb621f500,
+ 0x0421f408,
+ 0xf403d9f0,
+ 0x00f83f21,
+/* 0x08d4: i2c_release */
+ 0x08b621f5,
+ 0xf00421f4,
+ 0x21f403da,
+/* 0x08e3: i2c_recv */
+ 0xf400f83f,
+ 0xc1c70132,
+ 0x0214b6f8,
+ 0xf52816b0,
+ 0xa0013a1f,
+ 0x980bd413,
+ 0x13a00032,
+ 0x31980bac,
+ 0x0231f400,
+ 0xe0f9d0f9,
+ 0x67f1d0f9,
+ 0x63f10000,
+ 0x67921000,
+ 0x0076bb01,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b608c5,
+ 0xb0d0fc04,
+ 0x1bf500d6,
+ 0x57f000b3,
+ 0x0076bb00,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b6086f,
+ 0xd011f504,
+ 0xe0c5c700,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x1221f550,
+ 0x1421f550,
0x0464b608,
- 0x00d011f5,
- 0xbbe0c5c7,
+ 0x00ad11f5,
+ 0xbb0157f0,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x07b721f5,
+ 0x086f21f5,
0xf50464b6,
- 0xf000ad11,
- 0x76bb0157,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6081221,
- 0x11f50464,
- 0x76bb008a,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6076521,
- 0x11f40464,
- 0xe05bcb6a,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0xaa21f550,
- 0x0464b606,
- 0xbd025bb9,
- 0x430ef474,
-/* 0x098c: i2c_recv_not_rd08 */
- 0xf401d6b0,
- 0x57f03d1b,
- 0x1221f500,
- 0x3311f408,
- 0xf5e0c5c7,
- 0xf407b721,
- 0x57f02911,
- 0x1221f500,
- 0x1f11f408,
- 0xf5e0b5c7,
- 0xf407b721,
- 0x21f51511,
- 0x74bd06aa,
- 0xf408c5c7,
- 0x32f4091b,
- 0x030ef402,
-/* 0x09cc: i2c_recv_not_wr08 */
-/* 0x09cc: i2c_recv_done */
- 0xf5f8cec7,
- 0xfc087721,
- 0xf4d0fce0,
- 0x7cb90a12,
- 0xd521f502,
-/* 0x09e1: i2c_recv_exit */
-/* 0x09e3: i2c_init */
+ 0xbb008a11,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x07c221f5,
+ 0xf40464b6,
+ 0x5bcb6a11,
+ 0x0076bbe0,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b60707,
+ 0x025bb904,
+ 0x0ef474bd,
+/* 0x09e9: i2c_recv_not_rd08 */
+ 0x01d6b043,
+ 0xf03d1bf4,
+ 0x21f50057,
+ 0x11f4086f,
+ 0xe0c5c733,
+ 0x081421f5,
+ 0xf02911f4,
+ 0x21f50057,
+ 0x11f4086f,
+ 0xe0b5c71f,
+ 0x081421f5,
+ 0xf51511f4,
+ 0xbd070721,
+ 0x08c5c774,
+ 0xf4091bf4,
+ 0x0ef40232,
+/* 0x0a29: i2c_recv_not_wr08 */
+/* 0x0a29: i2c_recv_done */
+ 0xf8cec703,
+ 0x08d421f5,
+ 0xd0fce0fc,
+ 0xb90a12f4,
+ 0x21f5027c,
+/* 0x0a3e: i2c_recv_exit */
+ 0x00f80332,
+/* 0x0a40: i2c_init */
+/* 0x0a42: test_recv */
+ 0x17f100f8,
+ 0x14b605d8,
+ 0x0011cf06,
+ 0xf10110b6,
+ 0xb605d807,
+ 0x01d00604,
+ 0xf104bd00,
+ 0xf1d900e7,
+ 0xf5134fe3,
+ 0xf8025221,
+/* 0x0a69: test_init */
+ 0x00e7f100,
+ 0x5221f508,
+/* 0x0a73: idle_recv */
0xf800f802,
-/* 0x09e5: test_recv */
- 0xd817f100,
- 0x0614b605,
- 0xb60011cf,
- 0x07f10110,
- 0x04b605d8,
- 0x0001d006,
- 0xe7f104bd,
- 0xe3f1d900,
- 0x21f5134f,
- 0x00f801f5,
-/* 0x0a0c: test_init */
- 0x0800e7f1,
- 0x01f521f5,
-/* 0x0a16: idle_recv */
- 0x00f800f8,
-/* 0x0a18: idle */
- 0xf10031f4,
- 0xb605d417,
- 0x11cf0614,
- 0x0110b600,
- 0x05d407f1,
- 0xd00604b6,
- 0x04bd0001,
-/* 0x0a34: idle_loop */
- 0xf45817f0,
-/* 0x0a3a: idle_proc */
-/* 0x0a3a: idle_proc_exec */
- 0x10f90232,
- 0xf5021eb9,
- 0xfc02de21,
- 0x0911f410,
- 0xf40231f4,
-/* 0x0a4e: 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,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
+/* 0x0a75: idle */
+ 0x0031f400,
+ 0x05d417f1,
+ 0xcf0614b6,
+ 0x10b60011,
+ 0xd407f101,
+ 0x0604b605,
+ 0xbd0001d0,
+/* 0x0a91: idle_loop */
+ 0x5817f004,
+/* 0x0a97: idle_proc */
+/* 0x0a97: idle_proc_exec */
+ 0xf90232f4,
+ 0x021eb910,
+ 0x033b21f5,
+ 0x11f410fc,
+ 0x0231f409,
+/* 0x0aab: idle_proc_next */
+ 0xb6ef0ef4,
+ 0x1fb85810,
+ 0xe61bf406,
+ 0xf4dd02f4,
+ 0x0ef40028,
+ 0x000000bb,
0x00000000,
0x00000000,
0x00000000,
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc
index 125439ed5d87..b85443261569 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc
@@ -23,6 +23,7 @@
*/
#define NVKM_PPWR_CHIPSET GF119
+#define HW_TICKS_PER_US 324
//#define NVKM_FALCON_PC24
#define NVKM_FALCON_UNSHIFTED_IO
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc.h b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc.h
index 21929dd7d2ee..1cf8473fcb48 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc.h
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/nvd0.fuc.h
@@ -24,8 +24,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
/* 0x0058: proc_list_head */
0x54534f48,
- 0x00000428,
- 0x000003d1,
+ 0x00000485,
+ 0x0000042e,
0x00000000,
0x00000000,
0x00000000,
@@ -46,8 +46,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
0x00000000,
0x584d454d,
- 0x00000522,
- 0x00000514,
+ 0x0000057f,
+ 0x00000571,
0x00000000,
0x00000000,
0x00000000,
@@ -68,8 +68,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
0x00000000,
0x46524550,
- 0x00000526,
- 0x00000524,
+ 0x00000583,
+ 0x00000581,
0x00000000,
0x00000000,
0x00000000,
@@ -90,8 +90,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
0x00000000,
0x5f433249,
- 0x00000941,
- 0x000007e4,
+ 0x0000099e,
+ 0x00000841,
0x00000000,
0x00000000,
0x00000000,
@@ -112,8 +112,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
0x00000000,
0x54534554,
- 0x00000964,
- 0x00000943,
+ 0x000009c1,
+ 0x000009a0,
0x00000000,
0x00000000,
0x00000000,
@@ -134,8 +134,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000,
0x00000000,
0x454c4449,
- 0x00000970,
- 0x0000096e,
+ 0x000009cd,
+ 0x000009cb,
0x00000000,
0x00000000,
0x00000000,
@@ -229,20 +229,20 @@ uint32_t nvd0_pwr_data[] = {
/* 0x0370: memx_func_head */
0x00010000,
0x00000000,
- 0x0000045e,
+ 0x000004bb,
/* 0x037c: memx_func_next */
0x00000001,
0x00000000,
- 0x0000047f,
+ 0x000004dc,
0x00000002,
0x00000002,
- 0x0000049a,
+ 0x000004f7,
0x00040003,
0x00000000,
- 0x000004b6,
+ 0x00000513,
0x00010004,
0x00000000,
- 0x000004d0,
+ 0x0000052d,
/* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */
0x00000000,
@@ -784,7 +784,7 @@ uint32_t nvd0_pwr_data[] = {
};
uint32_t nvd0_pwr_code[] = {
- 0x02d80ef5,
+ 0x03350ef5,
/* 0x0004: rd32 */
0x07a007f1,
0xbd000ed0,
@@ -841,7 +841,7 @@ uint32_t nvd0_pwr_code[] = {
0xbb9a0a98,
0x1cf4029a,
0x01d7f00f,
- 0x021f21f5,
+ 0x027c21f5,
0x0ef494bd,
/* 0x00c5: intr_watchdog_next_time */
0x9b0a9815,
@@ -889,7 +889,7 @@ uint32_t nvd0_pwr_code[] = {
0xf14f48e7,
0xf05453e3,
0x21f500d7,
- 0xc0fc0284,
+ 0xc0fc02e1,
0x04c007f1,
0xbd000cd0,
/* 0x0175: intr_subintr_skip_fifo */
@@ -912,597 +912,666 @@ uint32_t nvd0_pwr_code[] = {
0xfca0fcb0,
0xfc80fc90,
0x0032f400,
-/* 0x01b6: timer */
- 0x90f901f8,
- 0x32f480f9,
- 0x03f89810,
- 0xf40086b0,
- 0x84bd531c,
- 0xd03807f0,
- 0x04bd0008,
- 0xcf3487f0,
- 0x09980088,
- 0x0298bb9a,
- 0x8000e9bb,
- 0x87f003fe,
- 0x0088cf08,
- 0xf40284f0,
- 0x87f0201b,
- 0x0088cf34,
- 0xf406e0b8,
- 0xe8b8090b,
- 0x0e1cf406,
-/* 0x0200: timer_reset */
- 0xd03407f0,
- 0x04bd000e,
-/* 0x020b: timer_enable */
- 0xf09a0e80,
- 0x07f00187,
- 0x0008d038,
-/* 0x0216: timer_done */
- 0x31f404bd,
- 0xfc80fc10,
-/* 0x021f: send_proc */
- 0xf900f890,
- 0x9890f980,
- 0xe99805e8,
- 0x0486f004,
- 0xf40689b8,
- 0x98c42a0b,
- 0x04889403,
- 0xbb1880b6,
- 0xfa98008e,
- 0x008a8000,
- 0x80018d80,
- 0x8b80028c,
- 0x0190b603,
- 0x800794f0,
- 0x31f404e9,
-/* 0x0259: send_done */
- 0xfc90fc02,
-/* 0x025f: find */
- 0xf900f880,
- 0x5887f080,
-/* 0x0267: find_loop */
- 0x980131f4,
- 0xaeb8008a,
- 0x100bf406,
- 0xb15880b6,
- 0xf4026886,
- 0x32f4f01b,
-/* 0x027d: find_done */
- 0x028eb901,
+/* 0x01b6: ticks_from_ns */
+ 0xc0f901f8,
+ 0xd7f1b0f9,
+ 0xd3f00144,
+ 0x9b21f500,
+ 0xe8ccec03,
+ 0x00b4b003,
+ 0xec120bf4,
+ 0xf103e8ee,
+ 0xf00144d7,
+ 0x21f500d3,
+/* 0x01de: ticks_from_ns_quit */
+ 0xceb9039b,
+ 0xfcb0fc02,
+/* 0x01e7: ticks_from_us */
+ 0xf900f8c0,
+ 0xf1b0f9c0,
+ 0xf00144d7,
+ 0x21f500d3,
+ 0xceb9039b,
+ 0x00b4b002,
+ 0xbd050bf4,
+/* 0x0201: ticks_from_us_quit */
+ 0xfcb0fce4,
+/* 0x0207: ticks_to_us */
+ 0xf100f8c0,
+ 0xf00144d7,
+ 0xedff00d3,
+/* 0x0213: timer */
+ 0xf900f8ec,
+ 0xf480f990,
+ 0xf8981032,
+ 0x0086b003,
+ 0xbd531cf4,
+ 0x3807f084,
+ 0xbd0008d0,
+ 0x3487f004,
+ 0x980088cf,
+ 0x98bb9a09,
+ 0x00e9bb02,
+ 0xf003fe80,
+ 0x88cf0887,
+ 0x0284f000,
+ 0xf0201bf4,
+ 0x88cf3487,
+ 0x06e0b800,
+ 0xb8090bf4,
+ 0x1cf406e8,
+/* 0x025d: timer_reset */
+ 0x3407f00e,
+ 0xbd000ed0,
+ 0x9a0e8004,
+/* 0x0268: timer_enable */
+ 0xf00187f0,
+ 0x08d03807,
+/* 0x0273: timer_done */
+ 0xf404bd00,
+ 0x80fc1031,
+ 0x00f890fc,
+/* 0x027c: send_proc */
+ 0x90f980f9,
+ 0x9805e898,
+ 0x86f004e9,
+ 0x0689b804,
+ 0xc42a0bf4,
+ 0x88940398,
+ 0x1880b604,
+ 0x98008ebb,
+ 0x8a8000fa,
+ 0x018d8000,
+ 0x80028c80,
+ 0x90b6038b,
+ 0x0794f001,
+ 0xf404e980,
+/* 0x02b6: send_done */
+ 0x90fc0231,
0x00f880fc,
-/* 0x0284: send */
- 0x025f21f5,
- 0xf89701f4,
-/* 0x028d: recv */
- 0x05e89800,
- 0xf404e998,
- 0x89b80132,
- 0x3d0bf406,
- 0xb60389c4,
- 0x84f00180,
- 0x05e88007,
- 0xf902ea98,
- 0x018ffef0,
- 0xefb9f0f9,
- 0x04999402,
- 0xb600e9bb,
- 0xeb9818e0,
- 0x02ec9803,
- 0x9801ed98,
- 0xa5f900ee,
- 0xf8fef0fc,
- 0x0131f400,
-/* 0x02d6: recv_done */
- 0x00f8f0fc,
-/* 0x02d8: init */
- 0x010817f1,
- 0xe70011cf,
- 0xb6010911,
- 0x14fe0814,
- 0xe017f100,
- 0x0013f000,
- 0xd01c07f0,
+/* 0x02bc: find */
+ 0x87f080f9,
+ 0x0131f458,
+/* 0x02c4: find_loop */
+ 0xb8008a98,
+ 0x0bf406ae,
+ 0x5880b610,
+ 0x026886b1,
+ 0xf4f01bf4,
+/* 0x02da: find_done */
+ 0x8eb90132,
+ 0xf880fc02,
+/* 0x02e1: send */
+ 0xbc21f500,
+ 0x9701f402,
+/* 0x02ea: recv */
+ 0xe89800f8,
+ 0x04e99805,
+ 0xb80132f4,
+ 0x0bf40689,
+ 0x0389c43d,
+ 0xf00180b6,
+ 0xe8800784,
+ 0x02ea9805,
+ 0x8ffef0f9,
+ 0xb9f0f901,
+ 0x999402ef,
+ 0x00e9bb04,
+ 0x9818e0b6,
+ 0xec9803eb,
+ 0x01ed9802,
+ 0xf900ee98,
+ 0xfef0fca5,
+ 0x31f400f8,
+/* 0x0333: recv_done */
+ 0xf8f0fc01,
+/* 0x0335: init */
+ 0x0817f100,
+ 0x0011cf01,
+ 0x010911e7,
+ 0xfe0814b6,
+ 0x17f10014,
+ 0x13f000e0,
+ 0x1c07f000,
+ 0xbd0001d0,
+ 0xff17f004,
+ 0xd01407f0,
0x04bd0001,
- 0xf0ff17f0,
- 0x01d01407,
- 0xf004bd00,
- 0x15f10217,
- 0x07f00800,
- 0x0001d010,
- 0x17f104bd,
- 0x13f000e6,
- 0x0010fe00,
- 0xf01031f4,
- 0x07f00117,
- 0x0001d038,
- 0xf7f004bd,
-/* 0x032d: init_proc */
- 0x01f19858,
- 0xf40016b0,
- 0x15f9fa0b,
- 0xf458f0b6,
-/* 0x033e: mulu32_32_64 */
- 0x10f9f20e,
- 0x30f920f9,
- 0xe19540f9,
- 0x10d29510,
- 0xb4bdc4bd,
- 0xffc0edff,
- 0x34b9301d,
- 0xff34f102,
- 0x1034b6ff,
- 0xbb1045b6,
- 0xb4bb00c3,
- 0x30e2ff01,
- 0xf10234b9,
- 0xb6ffff34,
- 0x45b61034,
- 0x00c3bb10,
- 0xff01b4bb,
- 0xb3bb3012,
- 0xfc40fc00,
- 0xfc20fc30,
-/* 0x038f: host_send */
- 0xf100f810,
- 0xcf04b017,
- 0x27f10011,
- 0x22cf04a0,
- 0x0612b800,
- 0xc42f0bf4,
- 0xee94071e,
- 0x70e0b704,
- 0x03eb9802,
- 0x9802ec98,
- 0xee9801ed,
- 0x8421f500,
- 0x0110b602,
- 0xf10f1ec4,
- 0xd004b007,
- 0x04bd000e,
-/* 0x03cf: host_send_done */
- 0xf8c30ef4,
-/* 0x03d1: host_recv */
- 0x4917f100,
- 0x5413f14e,
- 0x06e1b852,
-/* 0x03df: host_recv_wait */
- 0xf1b30bf4,
- 0xcf04cc17,
- 0x27f10011,
- 0x22cf04c8,
- 0x0816f000,
- 0xf40612b8,
- 0x23c4ec0b,
- 0x0434b607,
- 0x02f030b7,
- 0x80033b80,
- 0x3d80023c,
- 0x003e8001,
- 0xf00120b6,
- 0x07f10f24,
- 0x02d004c8,
+ 0xf10217f0,
+ 0xf0080015,
+ 0x01d01007,
+ 0xf104bd00,
+ 0xf000e617,
+ 0x10fe0013,
+ 0x1031f400,
+ 0xf00117f0,
+ 0x01d03807,
0xf004bd00,
- 0x07f04027,
- 0x0002d000,
- 0x00f804bd,
-/* 0x0428: host_init */
- 0x008017f1,
- 0xf11014b6,
- 0xf1027015,
- 0xd004d007,
- 0x04bd0001,
- 0x008017f1,
- 0xf11014b6,
- 0xf102f015,
- 0xd004dc07,
- 0x04bd0001,
- 0xf10117f0,
- 0xd004c407,
- 0x04bd0001,
-/* 0x045e: memx_func_enter */
- 0x67f000f8,
- 0xe007f104,
- 0x0006d007,
-/* 0x046a: memx_func_enter_wait */
- 0x67f104bd,
- 0x66cf07c0,
- 0x0464f000,
- 0x98f60bf4,
- 0x10b60016,
-/* 0x047f: memx_func_leave */
+/* 0x038a: init_proc */
+ 0xf19858f7,
+ 0x0016b001,
+ 0xf9fa0bf4,
+ 0x58f0b615,
+/* 0x039b: mulu32_32_64 */
+ 0xf9f20ef4,
+ 0xf920f910,
+ 0x9540f930,
+ 0xd29510e1,
+ 0xbdc4bd10,
+ 0xc0edffb4,
+ 0xb9301dff,
+ 0x34f10234,
+ 0x34b6ffff,
+ 0x1045b610,
+ 0xbb00c3bb,
+ 0xe2ff01b4,
+ 0x0234b930,
+ 0xffff34f1,
+ 0xb61034b6,
+ 0xc3bb1045,
+ 0x01b4bb00,
+ 0xbb3012ff,
+ 0x40fc00b3,
+ 0x20fc30fc,
+ 0x00f810fc,
+/* 0x03ec: host_send */
+ 0x04b017f1,
+ 0xf10011cf,
+ 0xcf04a027,
+ 0x12b80022,
+ 0x2f0bf406,
+ 0x94071ec4,
+ 0xe0b704ee,
+ 0xeb980270,
+ 0x02ec9803,
+ 0x9801ed98,
+ 0x21f500ee,
+ 0x10b602e1,
+ 0x0f1ec401,
+ 0x04b007f1,
+ 0xbd000ed0,
+ 0xc30ef404,
+/* 0x042c: host_send_done */
+/* 0x042e: host_recv */
+ 0x17f100f8,
+ 0x13f14e49,
+ 0xe1b85254,
+ 0xb30bf406,
+/* 0x043c: host_recv_wait */
+ 0x04cc17f1,
+ 0xf10011cf,
+ 0xcf04c827,
+ 0x16f00022,
+ 0x0612b808,
+ 0xc4ec0bf4,
+ 0x34b60723,
+ 0xf030b704,
+ 0x033b8002,
+ 0x80023c80,
+ 0x3e80013d,
+ 0x0120b600,
+ 0xf10f24f0,
+ 0xd004c807,
+ 0x04bd0002,
+ 0xf04027f0,
+ 0x02d00007,
+ 0xf804bd00,
+/* 0x0485: host_init */
+ 0x8017f100,
+ 0x1014b600,
+ 0x027015f1,
+ 0x04d007f1,
+ 0xbd0001d0,
+ 0x8017f104,
+ 0x1014b600,
+ 0x02f015f1,
+ 0x04dc07f1,
+ 0xbd0001d0,
+ 0x0117f004,
+ 0x04c407f1,
+ 0xbd0001d0,
+/* 0x04bb: memx_func_enter */
0xf000f804,
0x07f10467,
- 0x06d007e4,
-/* 0x048b: memx_func_leave_wait */
+ 0x06d007e0,
+/* 0x04c7: memx_func_enter_wait */
0xf104bd00,
0xcf07c067,
0x64f00066,
- 0xf61bf404,
-/* 0x049a: memx_func_wr32 */
- 0x169800f8,
- 0x01159800,
- 0xf90810b6,
- 0xfc50f960,
- 0xf4e0fcd0,
- 0x42b63321,
- 0xe91bf402,
-/* 0x04b6: memx_func_wait */
- 0x87f000f8,
- 0x0088cf2c,
- 0x98001e98,
- 0x1c98011d,
- 0x031b9802,
- 0xf41010b6,
- 0x00f87e21,
-/* 0x04d0: memx_func_delay */
- 0xb6001e98,
- 0x21f40410,
-/* 0x04db: memx_exec */
- 0xf900f867,
- 0xb9d0f9e0,
- 0xb2b902c1,
-/* 0x04e5: memx_exec_next */
- 0x00139802,
- 0x950410b6,
- 0x30f01034,
- 0xde35980c,
- 0x12b855f9,
- 0xec1ef406,
+ 0xf60bf404,
+ 0xb6001698,
+ 0x00f80410,
+/* 0x04dc: memx_func_leave */
+ 0xf10467f0,
+ 0xd007e407,
+ 0x04bd0006,
+/* 0x04e8: memx_func_leave_wait */
+ 0x07c067f1,
+ 0xf00066cf,
+ 0x1bf40464,
+/* 0x04f7: memx_func_wr32 */
+ 0x9800f8f6,
+ 0x15980016,
+ 0x0810b601,
+ 0x50f960f9,
0xe0fcd0fc,
- 0x028421f5,
-/* 0x0506: memx_info */
- 0xc7f100f8,
- 0xb7f103ac,
- 0x21f50800,
- 0x00f80284,
-/* 0x0514: memx_recv */
- 0xf401d6b0,
- 0xd6b0c40b,
- 0xe90bf400,
-/* 0x0522: memx_init */
- 0x00f800f8,
-/* 0x0524: perf_recv */
-/* 0x0526: perf_init */
- 0x00f800f8,
-/* 0x0528: i2c_drive_scl */
- 0xf40036b0,
- 0x07f10e0b,
- 0x01d007e0,
+ 0xb63321f4,
+ 0x1bf40242,
+/* 0x0513: memx_func_wait */
+ 0xf000f8e9,
+ 0x88cf2c87,
+ 0x001e9800,
+ 0x98011d98,
+ 0x1b98021c,
+ 0x1010b603,
+ 0xf87e21f4,
+/* 0x052d: memx_func_delay */
+ 0x001e9800,
+ 0xf40410b6,
+ 0x00f86721,
+/* 0x0538: memx_exec */
+ 0xd0f9e0f9,
+ 0xb902c1b9,
+/* 0x0542: memx_exec_next */
+ 0x139802b2,
+ 0x0410b600,
+ 0xf0103495,
+ 0x35980c30,
+ 0xb855f9de,
+ 0x1ef40612,
+ 0xfcd0fcec,
+ 0xe121f5e0,
+/* 0x0563: memx_info */
+ 0xf100f802,
+ 0xf103acc7,
+ 0xf50800b7,
+ 0xf802e121,
+/* 0x0571: memx_recv */
+ 0x01d6b000,
+ 0xb0c40bf4,
+ 0x0bf400d6,
+/* 0x057f: memx_init */
+ 0xf800f8e9,
+/* 0x0581: perf_recv */
+/* 0x0583: perf_init */
+ 0xf800f800,
+/* 0x0585: i2c_drive_scl */
+ 0x0036b000,
+ 0xf10e0bf4,
+ 0xd007e007,
+ 0x04bd0001,
+/* 0x0596: i2c_drive_scl_lo */
+ 0x07f100f8,
+ 0x01d007e4,
0xf804bd00,
-/* 0x0539: i2c_drive_scl_lo */
- 0xe407f100,
- 0x0001d007,
- 0x00f804bd,
-/* 0x0544: i2c_drive_sda */
- 0xf40036b0,
- 0x07f10e0b,
- 0x02d007e0,
+/* 0x05a1: i2c_drive_sda */
+ 0x0036b000,
+ 0xf10e0bf4,
+ 0xd007e007,
+ 0x04bd0002,
+/* 0x05b2: i2c_drive_sda_lo */
+ 0x07f100f8,
+ 0x02d007e4,
0xf804bd00,
-/* 0x0555: i2c_drive_sda_lo */
- 0xe407f100,
- 0x0002d007,
- 0x00f804bd,
-/* 0x0560: i2c_sense_scl */
- 0xf10132f4,
- 0xcf07c437,
- 0x31fd0033,
- 0x060bf404,
-/* 0x0573: i2c_sense_scl_done */
- 0xf80131f4,
-/* 0x0575: i2c_sense_sda */
+/* 0x05bd: i2c_sense_scl */
0x0132f400,
0x07c437f1,
0xfd0033cf,
- 0x0bf40432,
+ 0x0bf40431,
0x0131f406,
-/* 0x0588: i2c_sense_sda_done */
-/* 0x058a: i2c_raise_scl */
- 0x40f900f8,
- 0x089847f1,
+/* 0x05d0: i2c_sense_scl_done */
+/* 0x05d2: i2c_sense_sda */
+ 0x32f400f8,
+ 0xc437f101,
+ 0x0033cf07,
+ 0xf40432fd,
+ 0x31f4060b,
+/* 0x05e5: i2c_sense_sda_done */
+/* 0x05e7: i2c_raise_scl */
+ 0xf900f801,
+ 0x9847f140,
+ 0x0137f008,
+ 0x058521f5,
+/* 0x05f4: i2c_raise_scl_wait */
+ 0x03e8e7f1,
+ 0xf56721f4,
+ 0xf405bd21,
+ 0x42b60901,
+ 0xef1bf401,
+/* 0x0608: i2c_raise_scl_done */
+ 0x00f840fc,
+/* 0x060c: i2c_start */
+ 0x05bd21f5,
+ 0xf50d11f4,
+ 0xf405d221,
+ 0x0ef40611,
+/* 0x061d: i2c_start_rep */
+ 0x0037f030,
+ 0x058521f5,
0xf50137f0,
-/* 0x0597: i2c_raise_scl_wait */
- 0xf1052821,
- 0xf403e8e7,
- 0x21f56721,
- 0x01f40560,
- 0x0142b609,
-/* 0x05ab: i2c_raise_scl_done */
- 0xfcef1bf4,
-/* 0x05af: i2c_start */
- 0xf500f840,
- 0xf4056021,
- 0x21f50d11,
- 0x11f40575,
- 0x300ef406,
-/* 0x05c0: i2c_start_rep */
+ 0xbb05a121,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x05e721f5,
+ 0xf40464b6,
+/* 0x064a: i2c_start_send */
+ 0x37f01f11,
+ 0xa121f500,
+ 0x88e7f105,
+ 0x6721f413,
0xf50037f0,
- 0xf0052821,
+ 0xf1058521,
+ 0xf41388e7,
+/* 0x0666: i2c_start_out */
+ 0x00f86721,
+/* 0x0668: i2c_stop */
+ 0xf50037f0,
+ 0xf0058521,
+ 0x21f50037,
+ 0xe7f105a1,
+ 0x21f403e8,
+ 0x0137f067,
+ 0x058521f5,
+ 0x1388e7f1,
+ 0xf06721f4,
0x21f50137,
- 0x76bb0544,
+ 0xe7f105a1,
+ 0x21f41388,
+/* 0x069b: i2c_bitw */
+ 0xf500f867,
+ 0xf105a121,
+ 0xf403e8e7,
+ 0x76bb6721,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6058a21,
+ 0xb605e721,
0x11f40464,
-/* 0x05ed: i2c_start_send */
- 0x0037f01f,
- 0x054421f5,
- 0x1388e7f1,
- 0xf06721f4,
- 0x21f50037,
- 0xe7f10528,
- 0x21f41388,
-/* 0x0609: i2c_start_out */
-/* 0x060b: i2c_stop */
- 0xf000f867,
- 0x21f50037,
- 0x37f00528,
- 0x4421f500,
- 0xe8e7f105,
- 0x6721f403,
- 0xf50137f0,
- 0xf1052821,
- 0xf41388e7,
- 0x37f06721,
- 0x4421f501,
- 0x88e7f105,
+ 0x88e7f118,
0x6721f413,
-/* 0x063e: i2c_bitw */
- 0x21f500f8,
- 0xe7f10544,
- 0x21f403e8,
- 0x0076bb67,
- 0xf90465b6,
- 0x04659450,
- 0xbd0256bb,
- 0x0475fd50,
- 0x21f550fc,
- 0x64b6058a,
- 0x1811f404,
- 0x1388e7f1,
- 0xf06721f4,
- 0x21f50037,
- 0xe7f10528,
- 0x21f41388,
-/* 0x067d: i2c_bitw_out */
-/* 0x067f: i2c_bitr */
- 0xf000f867,
- 0x21f50137,
- 0xe7f10544,
- 0x21f403e8,
- 0x0076bb67,
- 0xf90465b6,
- 0x04659450,
- 0xbd0256bb,
- 0x0475fd50,
- 0x21f550fc,
- 0x64b6058a,
- 0x1b11f404,
- 0x057521f5,
0xf50037f0,
- 0xf1052821,
+ 0xf1058521,
0xf41388e7,
- 0x3cf06721,
- 0x0131f401,
-/* 0x06c4: i2c_bitr_done */
-/* 0x06c6: i2c_get_byte */
- 0x57f000f8,
- 0x0847f000,
-/* 0x06cc: i2c_get_byte_next */
- 0xbb0154b6,
- 0x65b60076,
- 0x9450f904,
- 0x56bb0465,
- 0xfd50bd02,
- 0x50fc0475,
- 0x067f21f5,
- 0xf40464b6,
- 0x53fd2b11,
- 0x0142b605,
- 0xf0d81bf4,
- 0x76bb0137,
+/* 0x06da: i2c_bitw_out */
+ 0x00f86721,
+/* 0x06dc: i2c_bitr */
+ 0xf50137f0,
+ 0xf105a121,
+ 0xf403e8e7,
+ 0x76bb6721,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6063e21,
-/* 0x0716: i2c_get_byte_done */
- 0x00f80464,
-/* 0x0718: i2c_put_byte */
-/* 0x071b: i2c_put_byte_next */
- 0xb60847f0,
- 0x54ff0142,
- 0x0076bb38,
- 0xf90465b6,
- 0x04659450,
- 0xbd0256bb,
- 0x0475fd50,
- 0x21f550fc,
- 0x64b6063e,
- 0x3411f404,
- 0xf40046b0,
- 0x76bbd81b,
+ 0xb605e721,
+ 0x11f40464,
+ 0xd221f51b,
+ 0x0037f005,
+ 0x058521f5,
+ 0x1388e7f1,
+ 0xf06721f4,
+ 0x31f4013c,
+/* 0x0721: i2c_bitr_done */
+/* 0x0723: i2c_get_byte */
+ 0xf000f801,
+ 0x47f00057,
+/* 0x0729: i2c_get_byte_next */
+ 0x0154b608,
+ 0xb60076bb,
+ 0x50f90465,
+ 0xbb046594,
+ 0x50bd0256,
+ 0xfc0475fd,
+ 0xdc21f550,
+ 0x0464b606,
+ 0xfd2b11f4,
+ 0x42b60553,
+ 0xd81bf401,
+ 0xbb0137f0,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x069b21f5,
+/* 0x0773: i2c_get_byte_done */
+ 0xf80464b6,
+/* 0x0775: i2c_put_byte */
+ 0x0847f000,
+/* 0x0778: i2c_put_byte_next */
+ 0xff0142b6,
+ 0x76bb3854,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6067f21,
+ 0xb6069b21,
0x11f40464,
- 0x0076bb0f,
- 0xf40136b0,
- 0x32f4061b,
-/* 0x0771: i2c_put_byte_done */
-/* 0x0773: i2c_addr */
- 0xbb00f801,
+ 0x0046b034,
+ 0xbbd81bf4,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
- 0x05af21f5,
+ 0x06dc21f5,
0xf40464b6,
- 0xc3e72911,
- 0x34b6012e,
- 0x0553fd01,
+ 0x76bb0f11,
+ 0x0136b000,
+ 0xf4061bf4,
+/* 0x07ce: i2c_put_byte_done */
+ 0x00f80132,
+/* 0x07d0: i2c_addr */
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
- 0x1821f550,
- 0x0464b607,
-/* 0x07b8: i2c_addr_done */
-/* 0x07ba: i2c_acquire_addr */
- 0xcec700f8,
- 0x05e4b6f8,
- 0xd014e0b7,
-/* 0x07c6: i2c_acquire */
+ 0x0c21f550,
+ 0x0464b606,
+ 0xe72911f4,
+ 0xb6012ec3,
+ 0x53fd0134,
+ 0x0076bb05,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b60775,
+/* 0x0815: i2c_addr_done */
+/* 0x0817: i2c_acquire_addr */
+ 0xc700f804,
+ 0xe4b6f8ce,
+ 0x14e0b705,
+/* 0x0823: i2c_acquire */
+ 0xf500f8d0,
+ 0xf4081721,
+ 0xd9f00421,
+ 0x3321f403,
+/* 0x0832: i2c_release */
0x21f500f8,
- 0x21f407ba,
- 0x03d9f004,
+ 0x21f40817,
+ 0x03daf004,
0xf83321f4,
-/* 0x07d5: i2c_release */
- 0xba21f500,
- 0x0421f407,
- 0xf403daf0,
- 0x00f83321,
-/* 0x07e4: i2c_recv */
- 0xc70132f4,
- 0x14b6f8c1,
- 0x2816b002,
- 0x013a1ff5,
- 0x0bd413a0,
- 0xa0003298,
- 0x980bac13,
- 0x31f40031,
- 0xf9d0f902,
- 0xf1d0f9e0,
- 0xf1000067,
- 0x92100063,
- 0x76bb0167,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb607c621,
- 0xd0fc0464,
- 0xf500d6b0,
- 0xf000b31b,
- 0x76bb0057,
+/* 0x0841: i2c_recv */
+ 0x0132f400,
+ 0xb6f8c1c7,
+ 0x16b00214,
+ 0x3a1ff528,
+ 0xd413a001,
+ 0x0032980b,
+ 0x0bac13a0,
+ 0xf4003198,
+ 0xd0f90231,
+ 0xd0f9e0f9,
+ 0x000067f1,
+ 0x100063f1,
+ 0xbb016792,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x082321f5,
+ 0xfc0464b6,
+ 0x00d6b0d0,
+ 0x00b31bf5,
+ 0xbb0057f0,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x07d021f5,
+ 0xf50464b6,
+ 0xc700d011,
+ 0x76bbe0c5,
0x0465b600,
0x659450f9,
0x0256bb04,
0x75fd50bd,
0xf550fc04,
- 0xb6077321,
+ 0xb6077521,
0x11f50464,
- 0xc5c700d0,
- 0x0076bbe0,
+ 0x57f000ad,
+ 0x0076bb01,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
- 0x64b60718,
- 0xad11f504,
- 0x0157f000,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0x7321f550,
- 0x0464b607,
- 0x008a11f5,
- 0xb60076bb,
- 0x50f90465,
- 0xbb046594,
- 0x50bd0256,
- 0xfc0475fd,
- 0xc621f550,
- 0x0464b606,
- 0xcb6a11f4,
- 0x76bbe05b,
- 0x0465b600,
- 0x659450f9,
- 0x0256bb04,
- 0x75fd50bd,
- 0xf550fc04,
- 0xb6060b21,
- 0x5bb90464,
- 0xf474bd02,
-/* 0x08ea: i2c_recv_not_rd08 */
- 0xd6b0430e,
- 0x3d1bf401,
- 0xf50057f0,
- 0xf4077321,
- 0xc5c73311,
- 0x1821f5e0,
- 0x2911f407,
- 0xf50057f0,
- 0xf4077321,
- 0xb5c71f11,
- 0x1821f5e0,
- 0x1511f407,
- 0x060b21f5,
- 0xc5c774bd,
- 0x091bf408,
- 0xf40232f4,
-/* 0x092a: i2c_recv_not_wr08 */
-/* 0x092a: i2c_recv_done */
- 0xcec7030e,
- 0xd521f5f8,
- 0xfce0fc07,
- 0x0a12f4d0,
- 0xf5027cb9,
-/* 0x093f: i2c_recv_exit */
- 0xf8028421,
-/* 0x0941: i2c_init */
-/* 0x0943: test_recv */
- 0xf100f800,
- 0xcf05d817,
- 0x10b60011,
- 0xd807f101,
- 0x0001d005,
- 0xe7f104bd,
- 0xe3f1d900,
- 0x21f5134f,
- 0x00f801b6,
-/* 0x0964: test_init */
- 0x0800e7f1,
- 0x01b621f5,
-/* 0x096e: idle_recv */
+ 0x64b607d0,
+ 0x8a11f504,
+ 0x0076bb00,
+ 0xf90465b6,
+ 0x04659450,
+ 0xbd0256bb,
+ 0x0475fd50,
+ 0x21f550fc,
+ 0x64b60723,
+ 0x6a11f404,
+ 0xbbe05bcb,
+ 0x65b60076,
+ 0x9450f904,
+ 0x56bb0465,
+ 0xfd50bd02,
+ 0x50fc0475,
+ 0x066821f5,
+ 0xb90464b6,
+ 0x74bd025b,
+/* 0x0947: i2c_recv_not_rd08 */
+ 0xb0430ef4,
+ 0x1bf401d6,
+ 0x0057f03d,
+ 0x07d021f5,
+ 0xc73311f4,
+ 0x21f5e0c5,
+ 0x11f40775,
+ 0x0057f029,
+ 0x07d021f5,
+ 0xc71f11f4,
+ 0x21f5e0b5,
+ 0x11f40775,
+ 0x6821f515,
+ 0xc774bd06,
+ 0x1bf408c5,
+ 0x0232f409,
+/* 0x0987: i2c_recv_not_wr08 */
+/* 0x0987: i2c_recv_done */
+ 0xc7030ef4,
+ 0x21f5f8ce,
+ 0xe0fc0832,
+ 0x12f4d0fc,
+ 0x027cb90a,
+ 0x02e121f5,
+/* 0x099c: i2c_recv_exit */
+/* 0x099e: i2c_init */
0x00f800f8,
-/* 0x0970: idle */
- 0xf10031f4,
- 0xcf05d417,
- 0x10b60011,
- 0xd407f101,
- 0x0001d005,
-/* 0x0986: idle_loop */
- 0x17f004bd,
- 0x0232f458,
-/* 0x098c: idle_proc */
-/* 0x098c: idle_proc_exec */
- 0x1eb910f9,
- 0x8d21f502,
- 0xf410fc02,
- 0x31f40911,
- 0xef0ef402,
-/* 0x09a0: idle_proc_next */
- 0xb85810b6,
- 0x1bf4061f,
- 0xdd02f4e6,
- 0xf40028f4,
- 0x0000c10e,
+/* 0x09a0: test_recv */
+ 0x05d817f1,
+ 0xb60011cf,
+ 0x07f10110,
+ 0x01d005d8,
+ 0xf104bd00,
+ 0xf1d900e7,
+ 0xf5134fe3,
+ 0xf8021321,
+/* 0x09c1: test_init */
+ 0x00e7f100,
+ 0x1321f508,
+/* 0x09cb: idle_recv */
+ 0xf800f802,
+/* 0x09cd: idle */
+ 0x0031f400,
+ 0x05d417f1,
+ 0xb60011cf,
+ 0x07f10110,
+ 0x01d005d4,
+/* 0x09e3: idle_loop */
+ 0xf004bd00,
+ 0x32f45817,
+/* 0x09e9: idle_proc */
+/* 0x09e9: idle_proc_exec */
+ 0xb910f902,
+ 0x21f5021e,
+ 0x10fc02ea,
+ 0xf40911f4,
+ 0x0ef40231,
+/* 0x09fd: idle_proc_next */
+ 0x5810b6ef,
+ 0xf4061fb8,
+ 0x02f4e61b,
+ 0x0028f4dd,
+ 0x00c10ef4,
+ 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,