Commit 9db66fce authored by Martin Peres's avatar Martin Peres Committed by Ben Skeggs

drm/nouveau/pwr: fix the timers implementation with concurent processes

The problem with the current implementation is that adding a timer improperly
checked which process would time up first by not taking into account how much
time elapsed since their timer got scheduled. Rework the re-scheduling
decision t fix this.

The catch with this fix is that we are limited to scheduling timers of up to
2^31 ticks to avoid any potential overflow. Since we are unlikely to need to
wait for more than a second, this won't be a problem :)

Another possible fix would be to decrement the timeouts of all processes but
it would duplicate a lot of code and dealing with edge cases wasn't pretty
last time I checked.
Signed-off-by: default avatarMartin Peres <martin.peres@free.fr>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 2a5e5fa7
...@@ -245,9 +245,12 @@ intr: ...@@ -245,9 +245,12 @@ intr:
// request the current process be sent a message after a timeout expires // request the current process be sent a message after a timeout expires
// //
// $r15 - current // $r15 - current
// $r14 - ticks // $r14 - ticks (make sure it is < 2^31 to avoid any possible overflow)
// $r0 - zero // $r0 - zero
timer: timer:
push $r9
push $r8
// interrupts off to prevent racing with timer isr // interrupts off to prevent racing with timer isr
bclr $flags ie0 bclr $flags ie0
...@@ -255,13 +258,22 @@ timer: ...@@ -255,13 +258,22 @@ timer:
ld b32 $r8 D[$r15 + #proc_time] ld b32 $r8 D[$r15 + #proc_time]
cmp b32 $r8 0 cmp b32 $r8 0
bra g #timer_done bra g #timer_done
st b32 D[$r15 + #proc_time] $r14
// halt watchdog timer temporarily and check for a pending // halt watchdog timer temporarily
// interrupt. if there's one already pending, we can just clear b32 $r8
// bail since the timer isr will queue the next soonest
// right after it's done
nv_iowr(NV_PPWR_WATCHDOG_ENABLE, $r8) nv_iowr(NV_PPWR_WATCHDOG_ENABLE, $r8)
// find out how much time elapsed since the last update
// of the watchdog and add this time to the wanted ticks
nv_iord($r8, NV_PPWR_WATCHDOG_TIME)
ld b32 $r9 D[$r0 + #time_prev]
sub b32 $r9 $r8
add b32 $r14 $r9
st b32 D[$r15 + #proc_time] $r14
// check for a pending interrupt. if there's one already
// pending, we can just bail since the timer isr will
// queue the next soonest right after it's done
nv_iord($r8, NV_PPWR_INTR) nv_iord($r8, NV_PPWR_INTR)
and $r8 NV_PPWR_INTR_WATCHDOG and $r8 NV_PPWR_INTR_WATCHDOG
bra nz #timer_enable bra nz #timer_enable
...@@ -272,7 +284,7 @@ timer: ...@@ -272,7 +284,7 @@ timer:
cmp b32 $r14 $r0 cmp b32 $r14 $r0
bra e #timer_reset bra e #timer_reset
cmp b32 $r14 $r8 cmp b32 $r14 $r8
bra l #timer_done bra g #timer_enable
timer_reset: timer_reset:
nv_iowr(NV_PPWR_WATCHDOG_TIME, $r14) nv_iowr(NV_PPWR_WATCHDOG_TIME, $r14)
st b32 D[$r0 + #time_prev] $r14 st b32 D[$r0 + #time_prev] $r14
...@@ -285,6 +297,9 @@ timer: ...@@ -285,6 +297,9 @@ timer:
// interrupts back on // interrupts back on
timer_done: timer_done:
bset $flags ie0 bset $flags ie0
pop $r8
pop $r9
ret ret
// send message to another process // send message to another process
......
...@@ -24,8 +24,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -24,8 +24,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
/* 0x0058: proc_list_head */ /* 0x0058: proc_list_head */
0x54534f48, 0x54534f48,
0x00000379, 0x00000391,
0x0000032a, 0x00000342,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -46,8 +46,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -46,8 +46,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x584d454d, 0x584d454d,
0x00000464, 0x0000047c,
0x00000456, 0x0000046e,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -68,8 +68,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -68,8 +68,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x46524550, 0x46524550,
0x00000468, 0x00000480,
0x00000466, 0x0000047e,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -90,8 +90,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -90,8 +90,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x5f433249, 0x5f433249,
0x0000086c, 0x00000884,
0x00000713, 0x0000072b,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -112,8 +112,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -112,8 +112,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x54534554, 0x54534554,
0x0000088d, 0x000008a5,
0x0000086e, 0x00000886,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -134,8 +134,8 @@ uint32_t nv108_pwr_data[] = { ...@@ -134,8 +134,8 @@ uint32_t nv108_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x454c4449, 0x454c4449,
0x00000898, 0x000008b0,
0x00000896, 0x000008ae,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -229,20 +229,20 @@ uint32_t nv108_pwr_data[] = { ...@@ -229,20 +229,20 @@ uint32_t nv108_pwr_data[] = {
/* 0x0370: memx_func_head */ /* 0x0370: memx_func_head */
0x00010000, 0x00010000,
0x00000000, 0x00000000,
0x000003a9, 0x000003c1,
/* 0x037c: memx_func_next */ /* 0x037c: memx_func_next */
0x00000001, 0x00000001,
0x00000000, 0x00000000,
0x000003c7, 0x000003df,
0x00000002, 0x00000002,
0x00000002, 0x00000002,
0x000003df, 0x000003f7,
0x00040003, 0x00040003,
0x00000000, 0x00000000,
0x000003fc, 0x00000414,
0x00010004, 0x00010004,
0x00000000, 0x00000000,
0x00000416, 0x0000042e,
/* 0x03ac: memx_func_tail */ /* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */ /* 0x03ac: memx_data_head */
0x00000000, 0x00000000,
...@@ -784,7 +784,7 @@ uint32_t nv108_pwr_data[] = { ...@@ -784,7 +784,7 @@ uint32_t nv108_pwr_data[] = {
}; };
uint32_t nv108_pwr_code[] = { uint32_t nv108_pwr_code[] = {
0x02910ef5, 0x02a90ef5,
/* 0x0004: rd32 */ /* 0x0004: rd32 */
0xf607a040, 0xf607a040,
0x04bd000e, 0x04bd000e,
...@@ -836,7 +836,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -836,7 +836,7 @@ uint32_t nv108_pwr_code[] = {
0x0a98280b, 0x0a98280b,
0x029abb9a, 0x029abb9a,
0x0d0e1cf4, 0x0d0e1cf4,
0x01de7e01, 0x01f67e01,
0xf494bd00, 0xf494bd00,
/* 0x00b2: intr_watchdog_next_time */ /* 0x00b2: intr_watchdog_next_time */
0x0a98140e, 0x0a98140e,
...@@ -881,7 +881,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -881,7 +881,7 @@ uint32_t nv108_pwr_code[] = {
0xc0f900cc, 0xc0f900cc,
0xf14f484e, 0xf14f484e,
0x0d5453e3, 0x0d5453e3,
0x023f7e00, 0x02577e00,
0x40c0fc00, 0x40c0fc00,
0x0cf604c0, 0x0cf604c0,
/* 0x0157: intr_subintr_skip_fifo */ /* 0x0157: intr_subintr_skip_fifo */
...@@ -905,28 +905,34 @@ uint32_t nv108_pwr_code[] = { ...@@ -905,28 +905,34 @@ uint32_t nv108_pwr_code[] = {
0xfc80fc90, 0xfc80fc90,
0x0032f400, 0x0032f400,
/* 0x0196: timer */ /* 0x0196: timer */
0x32f401f8, 0x90f901f8,
0x32f480f9,
0x03f89810, 0x03f89810,
0xf40086b0, 0xf40086b0,
0xfeb53a1c, 0x84bd4a1c,
0xf6380003, 0x08f63800,
0x04bd0008, 0x0804bd00,
0x0088cf34,
0xbb9a0998,
0xe9bb0298,
0x03feb500,
0x88cf0808, 0x88cf0808,
0x0284f000, 0x0284f000,
0x081c1bf4, 0x081c1bf4,
0x0088cf34, 0x0088cf34,
0x0bf4e0a6, 0x0bf4e0a6,
0xf4e8a608, 0xf4e8a608,
/* 0x01c6: timer_reset */ /* 0x01da: timer_reset */
0x3400161e, 0x34000d1c,
0xbd000ef6, 0xbd000ef6,
0x9a0eb504, 0x9a0eb504,
/* 0x01d0: timer_enable */ /* 0x01e4: timer_enable */
0x38000108, 0x38000108,
0xbd0008f6, 0xbd0008f6,
/* 0x01d9: timer_done */ /* 0x01ed: timer_done */
0x1031f404, 0x1031f404,
/* 0x01de: send_proc */ 0x90fc80fc,
/* 0x01f6: send_proc */
0x80f900f8, 0x80f900f8,
0xe89890f9, 0xe89890f9,
0x04e99805, 0x04e99805,
...@@ -941,25 +947,25 @@ uint32_t nv108_pwr_code[] = { ...@@ -941,25 +947,25 @@ uint32_t nv108_pwr_code[] = {
0xb6038bb5, 0xb6038bb5,
0x94f00190, 0x94f00190,
0x04e9b507, 0x04e9b507,
/* 0x0217: send_done */ /* 0x022f: send_done */
0xfc0231f4, 0xfc0231f4,
0xf880fc90, 0xf880fc90,
/* 0x021d: find */ /* 0x0235: find */
0x0880f900, 0x0880f900,
0x0131f458, 0x0131f458,
/* 0x0224: find_loop */ /* 0x023c: find_loop */
0xa6008a98, 0xa6008a98,
0x100bf4ae, 0x100bf4ae,
0xb15880b6, 0xb15880b6,
0xf4026886, 0xf4026886,
0x32f4f11b, 0x32f4f11b,
/* 0x0239: find_done */ /* 0x0251: find_done */
0xfc8eb201, 0xfc8eb201,
/* 0x023f: send */ /* 0x0257: send */
0x7e00f880, 0x7e00f880,
0xf400021d, 0xf4000235,
0x00f89b01, 0x00f89b01,
/* 0x0248: recv */ /* 0x0260: recv */
0x9805e898, 0x9805e898,
0x32f404e9, 0x32f404e9,
0xf489a601, 0xf489a601,
...@@ -977,9 +983,9 @@ uint32_t nv108_pwr_code[] = { ...@@ -977,9 +983,9 @@ uint32_t nv108_pwr_code[] = {
0xf900ee98, 0xf900ee98,
0xfef0fca5, 0xfef0fca5,
0x31f400f8, 0x31f400f8,
/* 0x028f: recv_done */ /* 0x02a7: recv_done */
0xf8f0fc01, 0xf8f0fc01,
/* 0x0291: init */ /* 0x02a9: init */
0x01084100, 0x01084100,
0xe70011cf, 0xe70011cf,
0xb6010911, 0xb6010911,
...@@ -998,13 +1004,13 @@ uint32_t nv108_pwr_code[] = { ...@@ -998,13 +1004,13 @@ uint32_t nv108_pwr_code[] = {
0x1031f400, 0x1031f400,
0x38000101, 0x38000101,
0xbd0001f6, 0xbd0001f6,
/* 0x02db: init_proc */ /* 0x02f3: init_proc */
0x98580f04, 0x98580f04,
0x16b001f1, 0x16b001f1,
0xfa0bf400, 0xfa0bf400,
0xf0b615f9, 0xf0b615f9,
0xf20ef458, 0xf20ef458,
/* 0x02ec: host_send */ /* 0x0304: host_send */
0xcf04b041, 0xcf04b041,
0xa0420011, 0xa0420011,
0x0022cf04, 0x0022cf04,
...@@ -1015,17 +1021,17 @@ uint32_t nv108_pwr_code[] = { ...@@ -1015,17 +1021,17 @@ uint32_t nv108_pwr_code[] = {
0xec9803eb, 0xec9803eb,
0x01ed9802, 0x01ed9802,
0x7e00ee98, 0x7e00ee98,
0xb600023f, 0xb6000257,
0x1ec40110, 0x1ec40110,
0x04b0400f, 0x04b0400f,
0xbd000ef6, 0xbd000ef6,
0xc70ef404, 0xc70ef404,
/* 0x0328: host_send_done */ /* 0x0340: host_send_done */
/* 0x032a: host_recv */ /* 0x0342: host_recv */
0x494100f8, 0x494100f8,
0x5413f14e, 0x5413f14e,
0xf4e1a652, 0xf4e1a652,
/* 0x0336: host_recv_wait */ /* 0x034e: host_recv_wait */
0xcc41b90b, 0xcc41b90b,
0x0011cf04, 0x0011cf04,
0xcf04c842, 0xcf04c842,
...@@ -1043,7 +1049,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1043,7 +1049,7 @@ uint32_t nv108_pwr_code[] = {
0x400204bd, 0x400204bd,
0x02f60000, 0x02f60000,
0xf804bd00, 0xf804bd00,
/* 0x0379: host_init */ /* 0x0391: host_init */
0x00804100, 0x00804100,
0xf11014b6, 0xf11014b6,
0x40027015, 0x40027015,
...@@ -1056,24 +1062,24 @@ uint32_t nv108_pwr_code[] = { ...@@ -1056,24 +1062,24 @@ uint32_t nv108_pwr_code[] = {
0x40010104, 0x40010104,
0x01f604c4, 0x01f604c4,
0xf804bd00, 0xf804bd00,
/* 0x03a9: memx_func_enter */ /* 0x03c1: memx_func_enter */
0x40040600, 0x40040600,
0x06f607e0, 0x06f607e0,
/* 0x03b3: memx_func_enter_wait */ /* 0x03cb: memx_func_enter_wait */
0x4604bd00, 0x4604bd00,
0x66cf07c0, 0x66cf07c0,
0x0464f000, 0x0464f000,
0x98f70bf4, 0x98f70bf4,
0x10b60016, 0x10b60016,
/* 0x03c7: memx_func_leave */ /* 0x03df: memx_func_leave */
0x0600f804, 0x0600f804,
0x07e44004, 0x07e44004,
0xbd0006f6, 0xbd0006f6,
/* 0x03d1: memx_func_leave_wait */ /* 0x03e9: memx_func_leave_wait */
0x07c04604, 0x07c04604,
0xf00066cf, 0xf00066cf,
0x1bf40464, 0x1bf40464,
/* 0x03df: memx_func_wr32 */ /* 0x03f7: memx_func_wr32 */
0x9800f8f7, 0x9800f8f7,
0x15980016, 0x15980016,
0x0810b601, 0x0810b601,
...@@ -1082,21 +1088,21 @@ uint32_t nv108_pwr_code[] = { ...@@ -1082,21 +1088,21 @@ uint32_t nv108_pwr_code[] = {
0x00002e7e, 0x00002e7e,
0xf40242b6, 0xf40242b6,
0x00f8e81b, 0x00f8e81b,
/* 0x03fc: memx_func_wait */ /* 0x0414: memx_func_wait */
0x88cf2c08, 0x88cf2c08,
0x001e9800, 0x001e9800,
0x98011d98, 0x98011d98,
0x1b98021c, 0x1b98021c,
0x1010b603, 0x1010b603,
0x0000717e, 0x0000717e,
/* 0x0416: memx_func_delay */ /* 0x042e: memx_func_delay */
0x1e9800f8, 0x1e9800f8,
0x0410b600, 0x0410b600,
0x00005d7e, 0x00005d7e,
/* 0x0422: memx_exec */ /* 0x043a: memx_exec */
0xe0f900f8, 0xe0f900f8,
0xc1b2d0f9, 0xc1b2d0f9,
/* 0x042a: memx_exec_next */ /* 0x0442: memx_exec_next */
0x1398b2b2, 0x1398b2b2,
0x0410b600, 0x0410b600,
0xf0103495, 0xf0103495,
...@@ -1104,104 +1110,104 @@ uint32_t nv108_pwr_code[] = { ...@@ -1104,104 +1110,104 @@ uint32_t nv108_pwr_code[] = {
0xa655f9de, 0xa655f9de,
0xed1ef412, 0xed1ef412,
0xe0fcd0fc, 0xe0fcd0fc,
0x00023f7e, 0x0002577e,
/* 0x044a: memx_info */ /* 0x0462: memx_info */
0xac4c00f8, 0xac4c00f8,
0x08004b03, 0x08004b03,
0x00023f7e, 0x0002577e,
/* 0x0456: memx_recv */ /* 0x046e: memx_recv */
0xd6b000f8, 0xd6b000f8,
0xc90bf401, 0xc90bf401,
0xf400d6b0, 0xf400d6b0,
0x00f8eb0b, 0x00f8eb0b,
/* 0x0464: memx_init */ /* 0x047c: memx_init */
/* 0x0466: perf_recv */ /* 0x047e: perf_recv */
0x00f800f8, 0x00f800f8,
/* 0x0468: perf_init */ /* 0x0480: perf_init */
/* 0x046a: i2c_drive_scl */ /* 0x0482: i2c_drive_scl */
0x36b000f8, 0x36b000f8,
0x0d0bf400, 0x0d0bf400,
0xf607e040, 0xf607e040,
0x04bd0001, 0x04bd0001,
/* 0x047a: i2c_drive_scl_lo */ /* 0x0492: i2c_drive_scl_lo */
0xe44000f8, 0xe44000f8,
0x0001f607, 0x0001f607,
0x00f804bd, 0x00f804bd,
/* 0x0484: i2c_drive_sda */ /* 0x049c: i2c_drive_sda */
0xf40036b0, 0xf40036b0,
0xe0400d0b, 0xe0400d0b,
0x0002f607, 0x0002f607,
0x00f804bd, 0x00f804bd,
/* 0x0494: i2c_drive_sda_lo */ /* 0x04ac: i2c_drive_sda_lo */
0xf607e440, 0xf607e440,
0x04bd0002, 0x04bd0002,
/* 0x049e: i2c_sense_scl */ /* 0x04b6: i2c_sense_scl */
0x32f400f8, 0x32f400f8,
0x07c44301, 0x07c44301,
0xfd0033cf, 0xfd0033cf,
0x0bf40431, 0x0bf40431,
0x0131f406, 0x0131f406,
/* 0x04b0: i2c_sense_scl_done */ /* 0x04c8: i2c_sense_scl_done */
/* 0x04b2: i2c_sense_sda */ /* 0x04ca: i2c_sense_sda */
0x32f400f8, 0x32f400f8,
0x07c44301, 0x07c44301,
0xfd0033cf, 0xfd0033cf,
0x0bf40432, 0x0bf40432,
0x0131f406, 0x0131f406,
/* 0x04c4: i2c_sense_sda_done */ /* 0x04dc: i2c_sense_sda_done */
/* 0x04c6: i2c_raise_scl */ /* 0x04de: i2c_raise_scl */
0x40f900f8, 0x40f900f8,
0x03089844, 0x03089844,
0x046a7e01, 0x04827e01,
/* 0x04d1: i2c_raise_scl_wait */ /* 0x04e9: i2c_raise_scl_wait */
0x03e84e00, 0x03e84e00,
0x00005d7e, 0x00005d7e,
0x00049e7e, 0x0004b67e,
0xb60901f4, 0xb60901f4,
0x1bf40142, 0x1bf40142,
/* 0x04e5: i2c_raise_scl_done */ /* 0x04fd: i2c_raise_scl_done */
0xf840fcef, 0xf840fcef,
/* 0x04e9: i2c_start */ /* 0x0501: i2c_start */
0x049e7e00, 0x04b67e00,
0x0d11f400, 0x0d11f400,
0x0004b27e, 0x0004ca7e,
0xf40611f4, 0xf40611f4,
/* 0x04fa: i2c_start_rep */ /* 0x0512: i2c_start_rep */
0x00032e0e, 0x00032e0e,
0x00046a7e, 0x0004827e,
0x847e0103, 0x9c7e0103,
0x76bb0004, 0x76bb0004,
0x0465b600, 0x0465b600,
0x659450f9, 0x659450f9,
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0x7e50fc04, 0x7e50fc04,
0xb60004c6, 0xb60004de,
0x11f40464, 0x11f40464,
/* 0x0525: i2c_start_send */ /* 0x053d: i2c_start_send */
0x7e00031d, 0x7e00031d,
0x4e000484, 0x4e00049c,
0x5d7e1388, 0x5d7e1388,
0x00030000, 0x00030000,
0x00046a7e, 0x0004827e,
0x7e13884e, 0x7e13884e,
/* 0x053f: i2c_start_out */ /* 0x0557: i2c_start_out */
0xf800005d, 0xf800005d,
/* 0x0541: i2c_stop */ /* 0x0559: i2c_stop */
0x7e000300, 0x7e000300,
0x0300046a, 0x03000482,
0x04847e00, 0x049c7e00,
0x03e84e00, 0x03e84e00,
0x00005d7e, 0x00005d7e,
0x6a7e0103, 0x827e0103,
0x884e0004, 0x884e0004,
0x005d7e13, 0x005d7e13,
0x7e010300, 0x7e010300,
0x4e000484, 0x4e00049c,
0x5d7e1388, 0x5d7e1388,
0x00f80000, 0x00f80000,
/* 0x0570: i2c_bitw */ /* 0x0588: i2c_bitw */
0x0004847e, 0x00049c7e,
0x7e03e84e, 0x7e03e84e,
0xbb00005d, 0xbb00005d,
0x65b60076, 0x65b60076,
...@@ -1209,17 +1215,17 @@ uint32_t nv108_pwr_code[] = { ...@@ -1209,17 +1215,17 @@ uint32_t nv108_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x0004c67e, 0x0004de7e,
0xf40464b6, 0xf40464b6,
0x884e1711, 0x884e1711,
0x005d7e13, 0x005d7e13,
0x7e000300, 0x7e000300,
0x4e00046a, 0x4e000482,
0x5d7e1388, 0x5d7e1388,
/* 0x05ae: i2c_bitw_out */ /* 0x05c6: i2c_bitw_out */
0x00f80000, 0x00f80000,
/* 0x05b0: i2c_bitr */ /* 0x05c8: i2c_bitr */
0x847e0103, 0x9c7e0103,
0xe84e0004, 0xe84e0004,
0x005d7e03, 0x005d7e03,
0x0076bb00, 0x0076bb00,
...@@ -1227,26 +1233,26 @@ uint32_t nv108_pwr_code[] = { ...@@ -1227,26 +1233,26 @@ uint32_t nv108_pwr_code[] = {
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0xc67e50fc, 0xde7e50fc,
0x64b60004, 0x64b60004,
0x1a11f404, 0x1a11f404,
0x0004b27e, 0x0004ca7e,
0x6a7e0003, 0x827e0003,
0x884e0004, 0x884e0004,
0x005d7e13, 0x005d7e13,
0x013cf000, 0x013cf000,
/* 0x05f3: i2c_bitr_done */ /* 0x060b: i2c_bitr_done */
0xf80131f4, 0xf80131f4,
/* 0x05f5: i2c_get_byte */ /* 0x060d: i2c_get_byte */
0x04000500, 0x04000500,
/* 0x05f9: i2c_get_byte_next */ /* 0x0611: i2c_get_byte_next */
0x0154b608, 0x0154b608,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x05b07e50, 0x05c87e50,
0x0464b600, 0x0464b600,
0xfd2a11f4, 0xfd2a11f4,
0x42b60553, 0x42b60553,
...@@ -1257,11 +1263,11 @@ uint32_t nv108_pwr_code[] = { ...@@ -1257,11 +1263,11 @@ uint32_t nv108_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0x7e50fc04, 0x7e50fc04,
0xb6000570, 0xb6000588,
/* 0x0642: i2c_get_byte_done */ /* 0x065a: i2c_get_byte_done */
0x00f80464, 0x00f80464,
/* 0x0644: i2c_put_byte */ /* 0x065c: i2c_put_byte */
/* 0x0646: i2c_put_byte_next */ /* 0x065e: i2c_put_byte_next */
0x42b60804, 0x42b60804,
0x3854ff01, 0x3854ff01,
0xb60076bb, 0xb60076bb,
...@@ -1269,7 +1275,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1269,7 +1275,7 @@ uint32_t nv108_pwr_code[] = {
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x05707e50, 0x05887e50,
0x0464b600, 0x0464b600,
0xb03411f4, 0xb03411f4,
0x1bf40046, 0x1bf40046,
...@@ -1278,21 +1284,21 @@ uint32_t nv108_pwr_code[] = { ...@@ -1278,21 +1284,21 @@ uint32_t nv108_pwr_code[] = {
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0xb07e50fc, 0xc87e50fc,
0x64b60005, 0x64b60005,
0x0f11f404, 0x0f11f404,
0xb00076bb, 0xb00076bb,
0x1bf40136, 0x1bf40136,
0x0132f406, 0x0132f406,
/* 0x069c: i2c_put_byte_done */ /* 0x06b4: i2c_put_byte_done */
/* 0x069e: i2c_addr */ /* 0x06b6: i2c_addr */
0x76bb00f8, 0x76bb00f8,
0x0465b600, 0x0465b600,
0x659450f9, 0x659450f9,
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0x7e50fc04, 0x7e50fc04,
0xb60004e9, 0xb6000501,
0x11f40464, 0x11f40464,
0x2ec3e729, 0x2ec3e729,
0x0134b601, 0x0134b601,
...@@ -1302,24 +1308,24 @@ uint32_t nv108_pwr_code[] = { ...@@ -1302,24 +1308,24 @@ uint32_t nv108_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x0006447e, 0x00065c7e,
/* 0x06e3: i2c_addr_done */ /* 0x06fb: i2c_addr_done */
0xf80464b6, 0xf80464b6,
/* 0x06e5: i2c_acquire_addr */ /* 0x06fd: i2c_acquire_addr */
0xf8cec700, 0xf8cec700,
0xb705e4b6, 0xb705e4b6,
0xf8d014e0, 0xf8d014e0,
/* 0x06f1: i2c_acquire */ /* 0x0709: i2c_acquire */
0x06e57e00, 0x06fd7e00,
0x00047e00, 0x00047e00,
0x03d9f000, 0x03d9f000,
0x00002e7e, 0x00002e7e,
/* 0x0702: i2c_release */ /* 0x071a: i2c_release */
0xe57e00f8, 0xfd7e00f8,
0x047e0006, 0x047e0006,
0xdaf00000, 0xdaf00000,
0x002e7e03, 0x002e7e03,
/* 0x0713: i2c_recv */ /* 0x072b: i2c_recv */
0xf400f800, 0xf400f800,
0xc1c70132, 0xc1c70132,
0x0214b6f8, 0x0214b6f8,
...@@ -1339,7 +1345,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1339,7 +1345,7 @@ uint32_t nv108_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x0006f17e, 0x0007097e,
0xfc0464b6, 0xfc0464b6,
0x00d6b0d0, 0x00d6b0d0,
0x00b01bf5, 0x00b01bf5,
...@@ -1349,7 +1355,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1349,7 +1355,7 @@ uint32_t nv108_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0x7e50fc04, 0x7e50fc04,
0xb600069e, 0xb60006b6,
0x11f50464, 0x11f50464,
0xc5c700cc, 0xc5c700cc,
0x0076bbe0, 0x0076bbe0,
...@@ -1357,7 +1363,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1357,7 +1363,7 @@ uint32_t nv108_pwr_code[] = {
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x447e50fc, 0x5c7e50fc,
0x64b60006, 0x64b60006,
0xa911f504, 0xa911f504,
0xbb010500, 0xbb010500,
...@@ -1366,7 +1372,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1366,7 +1372,7 @@ uint32_t nv108_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x00069e7e, 0x0006b67e,
0xf50464b6, 0xf50464b6,
0xbb008711, 0xbb008711,
0x65b60076, 0x65b60076,
...@@ -1374,7 +1380,7 @@ uint32_t nv108_pwr_code[] = { ...@@ -1374,7 +1380,7 @@ uint32_t nv108_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x0005f57e, 0x00060d7e,
0xf40464b6, 0xf40464b6,
0x5bcb6711, 0x5bcb6711,
0x0076bbe0, 0x0076bbe0,
...@@ -1382,37 +1388,37 @@ uint32_t nv108_pwr_code[] = { ...@@ -1382,37 +1388,37 @@ uint32_t nv108_pwr_code[] = {
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x417e50fc, 0x597e50fc,
0x64b60005, 0x64b60005,
0xbd5bb204, 0xbd5bb204,
0x410ef474, 0x410ef474,
/* 0x0818: i2c_recv_not_rd08 */ /* 0x0830: i2c_recv_not_rd08 */
0xf401d6b0, 0xf401d6b0,
0x00053b1b, 0x00053b1b,
0x00069e7e, 0x0006b67e,
0xc73211f4, 0xc73211f4,
0x447ee0c5, 0x5c7ee0c5,
0x11f40006, 0x11f40006,
0x7e000528, 0x7e000528,
0xf400069e, 0xf40006b6,
0xb5c71f11, 0xb5c71f11,
0x06447ee0, 0x065c7ee0,
0x1511f400, 0x1511f400,
0x0005417e, 0x0005597e,
0xc5c774bd, 0xc5c774bd,
0x091bf408, 0x091bf408,
0xf40232f4, 0xf40232f4,
/* 0x0856: i2c_recv_not_wr08 */ /* 0x086e: i2c_recv_not_wr08 */
/* 0x0856: i2c_recv_done */ /* 0x086e: i2c_recv_done */
0xcec7030e, 0xcec7030e,
0x07027ef8, 0x071a7ef8,
0xfce0fc00, 0xfce0fc00,
0x0912f4d0, 0x0912f4d0,
0x3f7e7cb2, 0x577e7cb2,
/* 0x086a: i2c_recv_exit */ /* 0x0882: i2c_recv_exit */
0x00f80002, 0x00f80002,
/* 0x086c: i2c_init */ /* 0x0884: i2c_init */
/* 0x086e: test_recv */ /* 0x0886: test_recv */
0x584100f8, 0x584100f8,
0x0011cf04, 0x0011cf04,
0x400110b6, 0x400110b6,
...@@ -1421,27 +1427,27 @@ uint32_t nv108_pwr_code[] = { ...@@ -1421,27 +1427,27 @@ uint32_t nv108_pwr_code[] = {
0xf1d900e7, 0xf1d900e7,
0x7e134fe3, 0x7e134fe3,
0xf8000196, 0xf8000196,
/* 0x088d: test_init */ /* 0x08a5: test_init */
0x08004e00, 0x08004e00,
0x0001967e, 0x0001967e,
/* 0x0896: idle_recv */ /* 0x08ae: idle_recv */
0x00f800f8, 0x00f800f8,
/* 0x0898: idle */ /* 0x08b0: idle */
0x410031f4, 0x410031f4,
0x11cf0454, 0x11cf0454,
0x0110b600, 0x0110b600,
0xf6045440, 0xf6045440,
0x04bd0001, 0x04bd0001,
/* 0x08ac: idle_loop */ /* 0x08c4: idle_loop */
0x32f45801, 0x32f45801,
/* 0x08b1: idle_proc */ /* 0x08c9: idle_proc */
/* 0x08b1: idle_proc_exec */ /* 0x08c9: idle_proc_exec */
0xb210f902, 0xb210f902,
0x02487e1e, 0x02607e1e,
0xf410fc00, 0xf410fc00,
0x31f40911, 0x31f40911,
0xf00ef402, 0xf00ef402,
/* 0x08c4: idle_proc_next */ /* 0x08dc: idle_proc_next */
0xa65810b6, 0xa65810b6,
0xe81bf41f, 0xe81bf41f,
0xf4e002f4, 0xf4e002f4,
...@@ -1451,10 +1457,4 @@ uint32_t nv108_pwr_code[] = { ...@@ -1451,10 +1457,4 @@ uint32_t nv108_pwr_code[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
}; };
...@@ -24,8 +24,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -24,8 +24,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
/* 0x0058: proc_list_head */ /* 0x0058: proc_list_head */
0x54534f48, 0x54534f48,
0x00000430, 0x0000044c,
0x000003cd, 0x000003e9,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -46,8 +46,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -46,8 +46,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x584d454d, 0x584d454d,
0x00000542, 0x0000055e,
0x00000534, 0x00000550,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -68,8 +68,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -68,8 +68,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x46524550, 0x46524550,
0x00000546, 0x00000562,
0x00000544, 0x00000560,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -90,8 +90,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -90,8 +90,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x5f433249, 0x5f433249,
0x00000976, 0x00000992,
0x00000819, 0x00000835,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -112,8 +112,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -112,8 +112,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x54534554, 0x54534554,
0x0000099f, 0x000009bb,
0x00000978, 0x00000994,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -134,8 +134,8 @@ uint32_t nva3_pwr_data[] = { ...@@ -134,8 +134,8 @@ uint32_t nva3_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x454c4449, 0x454c4449,
0x000009ab, 0x000009c7,
0x000009a9, 0x000009c5,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -229,20 +229,20 @@ uint32_t nva3_pwr_data[] = { ...@@ -229,20 +229,20 @@ uint32_t nva3_pwr_data[] = {
/* 0x0370: memx_func_head */ /* 0x0370: memx_func_head */
0x00010000, 0x00010000,
0x00000000, 0x00000000,
0x0000046f, 0x0000048b,
/* 0x037c: memx_func_next */ /* 0x037c: memx_func_next */
0x00000001, 0x00000001,
0x00000000, 0x00000000,
0x00000496, 0x000004b2,
0x00000002, 0x00000002,
0x00000002, 0x00000002,
0x000004b7, 0x000004d3,
0x00040003, 0x00040003,
0x00000000, 0x00000000,
0x000004d3, 0x000004ef,
0x00010004, 0x00010004,
0x00000000, 0x00000000,
0x000004f0, 0x0000050c,
/* 0x03ac: memx_func_tail */ /* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */ /* 0x03ac: memx_data_head */
0x00000000, 0x00000000,
...@@ -849,7 +849,7 @@ uint32_t nva3_pwr_data[] = { ...@@ -849,7 +849,7 @@ uint32_t nva3_pwr_data[] = {
}; };
uint32_t nva3_pwr_code[] = { uint32_t nva3_pwr_code[] = {
0x030d0ef5, 0x03290ef5,
/* 0x0004: rd32 */ /* 0x0004: rd32 */
0x07a007f1, 0x07a007f1,
0xd00604b6, 0xd00604b6,
...@@ -915,7 +915,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -915,7 +915,7 @@ uint32_t nva3_pwr_code[] = {
0xbb9a0a98, 0xbb9a0a98,
0x1cf4029a, 0x1cf4029a,
0x01d7f00f, 0x01d7f00f,
0x025421f5, 0x027021f5,
0x0ef494bd, 0x0ef494bd,
/* 0x00e9: intr_watchdog_next_time */ /* 0x00e9: intr_watchdog_next_time */
0x9b0a9815, 0x9b0a9815,
...@@ -967,7 +967,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -967,7 +967,7 @@ uint32_t nva3_pwr_code[] = {
0x48e7f1c0, 0x48e7f1c0,
0x53e3f14f, 0x53e3f14f,
0x00d7f054, 0x00d7f054,
0x02b921f5, 0x02d521f5,
0x07f1c0fc, 0x07f1c0fc,
0x04b604c0, 0x04b604c0,
0x000cd006, 0x000cd006,
...@@ -994,13 +994,19 @@ uint32_t nva3_pwr_code[] = { ...@@ -994,13 +994,19 @@ uint32_t nva3_pwr_code[] = {
0x00fc80fc, 0x00fc80fc,
0xf80032f4, 0xf80032f4,
/* 0x01f5: timer */ /* 0x01f5: timer */
0x1032f401, 0xf990f901,
0x1032f480,
0xb003f898, 0xb003f898,
0x1cf40086, 0x1cf40086,
0x03fe8051, 0xf084bd65,
0xb63807f0, 0x04b63807,
0x08d00604, 0x0008d006,
0xf004bd00, 0x87f004bd,
0x0684b634,
0x980088cf,
0x98bb9a09,
0x00e9bb02,
0xf003fe80,
0x84b60887, 0x84b60887,
0x0088cf06, 0x0088cf06,
0xf40284f0, 0xf40284f0,
...@@ -1009,19 +1015,20 @@ uint32_t nva3_pwr_code[] = { ...@@ -1009,19 +1015,20 @@ uint32_t nva3_pwr_code[] = {
0xb80088cf, 0xb80088cf,
0x0bf406e0, 0x0bf406e0,
0x06e8b809, 0x06e8b809,
/* 0x0233: timer_reset */ /* 0x024b: timer_reset */
0xf01f1ef4, 0xf0111cf4,
0x04b63407, 0x04b63407,
0x000ed006, 0x000ed006,
0x0e8004bd, 0x0e8004bd,
/* 0x0241: timer_enable */ /* 0x0259: timer_enable */
0x0187f09a, 0x0187f09a,
0xb63807f0, 0xb63807f0,
0x08d00604, 0x08d00604,
/* 0x024f: timer_done */ /* 0x0267: timer_done */
0xf404bd00, 0xf404bd00,
0x00f81031, 0x80fc1031,
/* 0x0254: send_proc */ 0x00f890fc,
/* 0x0270: send_proc */
0x90f980f9, 0x90f980f9,
0x9805e898, 0x9805e898,
0x86f004e9, 0x86f004e9,
...@@ -1036,25 +1043,25 @@ uint32_t nva3_pwr_code[] = { ...@@ -1036,25 +1043,25 @@ uint32_t nva3_pwr_code[] = {
0x90b6038b, 0x90b6038b,
0x0794f001, 0x0794f001,
0xf404e980, 0xf404e980,
/* 0x028e: send_done */ /* 0x02aa: send_done */
0x90fc0231, 0x90fc0231,
0x00f880fc, 0x00f880fc,
/* 0x0294: find */ /* 0x02b0: find */
0x87f080f9, 0x87f080f9,
0x0131f458, 0x0131f458,
/* 0x029c: find_loop */ /* 0x02b8: find_loop */
0xb8008a98, 0xb8008a98,
0x0bf406ae, 0x0bf406ae,
0x5880b610, 0x5880b610,
0x026886b1, 0x026886b1,
0xf4f01bf4, 0xf4f01bf4,
/* 0x02b2: find_done */ /* 0x02ce: find_done */
0x8eb90132, 0x8eb90132,
0xf880fc02, 0xf880fc02,
/* 0x02b9: send */ /* 0x02d5: send */
0x9421f500, 0xb021f500,
0x9701f402, 0x9701f402,
/* 0x02c2: recv */ /* 0x02de: recv */
0xe89800f8, 0xe89800f8,
0x04e99805, 0x04e99805,
0xb80132f4, 0xb80132f4,
...@@ -1073,9 +1080,9 @@ uint32_t nva3_pwr_code[] = { ...@@ -1073,9 +1080,9 @@ uint32_t nva3_pwr_code[] = {
0xf900ee98, 0xf900ee98,
0xfef0fca5, 0xfef0fca5,
0x31f400f8, 0x31f400f8,
/* 0x030b: recv_done */ /* 0x0327: recv_done */
0xf8f0fc01, 0xf8f0fc01,
/* 0x030d: init */ /* 0x0329: init */
0x0817f100, 0x0817f100,
0x0614b601, 0x0614b601,
0xe70011cf, 0xe70011cf,
...@@ -1101,12 +1108,12 @@ uint32_t nva3_pwr_code[] = { ...@@ -1101,12 +1108,12 @@ uint32_t nva3_pwr_code[] = {
0x04b63807, 0x04b63807,
0x0001d006, 0x0001d006,
0xf7f004bd, 0xf7f004bd,
/* 0x0371: init_proc */ /* 0x038d: init_proc */
0x01f19858, 0x01f19858,
0xf40016b0, 0xf40016b0,
0x15f9fa0b, 0x15f9fa0b,
0xf458f0b6, 0xf458f0b6,
/* 0x0382: host_send */ /* 0x039e: host_send */
0x17f1f20e, 0x17f1f20e,
0x14b604b0, 0x14b604b0,
0x0011cf06, 0x0011cf06,
...@@ -1120,18 +1127,18 @@ uint32_t nva3_pwr_code[] = { ...@@ -1120,18 +1127,18 @@ uint32_t nva3_pwr_code[] = {
0x02ec9803, 0x02ec9803,
0x9801ed98, 0x9801ed98,
0x21f500ee, 0x21f500ee,
0x10b602b9, 0x10b602d5,
0x0f1ec401, 0x0f1ec401,
0x04b007f1, 0x04b007f1,
0xd00604b6, 0xd00604b6,
0x04bd000e, 0x04bd000e,
/* 0x03cb: host_send_done */ /* 0x03e7: host_send_done */
0xf8ba0ef4, 0xf8ba0ef4,
/* 0x03cd: host_recv */ /* 0x03e9: host_recv */
0x4917f100, 0x4917f100,
0x5413f14e, 0x5413f14e,
0x06e1b852, 0x06e1b852,
/* 0x03db: host_recv_wait */ /* 0x03f7: host_recv_wait */
0xf1aa0bf4, 0xf1aa0bf4,
0xb604cc17, 0xb604cc17,
0x11cf0614, 0x11cf0614,
...@@ -1154,7 +1161,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1154,7 +1161,7 @@ uint32_t nva3_pwr_code[] = {
0x04b60007, 0x04b60007,
0x0002d006, 0x0002d006,
0x00f804bd, 0x00f804bd,
/* 0x0430: host_init */ /* 0x044c: host_init */
0x008017f1, 0x008017f1,
0xf11014b6, 0xf11014b6,
0xf1027015, 0xf1027015,
...@@ -1170,29 +1177,29 @@ uint32_t nva3_pwr_code[] = { ...@@ -1170,29 +1177,29 @@ uint32_t nva3_pwr_code[] = {
0xc407f101, 0xc407f101,
0x0604b604, 0x0604b604,
0xbd0001d0, 0xbd0001d0,
/* 0x046f: memx_func_enter */ /* 0x048b: memx_func_enter */
0xf000f804, 0xf000f804,
0x07f10467, 0x07f10467,
0x04b607e0, 0x04b607e0,
0x0006d006, 0x0006d006,
/* 0x047e: memx_func_enter_wait */ /* 0x049a: memx_func_enter_wait */
0x67f104bd, 0x67f104bd,
0x64b607c0, 0x64b607c0,
0x0066cf06, 0x0066cf06,
0xf40464f0, 0xf40464f0,
0x1698f30b, 0x1698f30b,
0x0410b600, 0x0410b600,
/* 0x0496: memx_func_leave */ /* 0x04b2: memx_func_leave */
0x67f000f8, 0x67f000f8,
0xe407f104, 0xe407f104,
0x0604b607, 0x0604b607,
0xbd0006d0, 0xbd0006d0,
/* 0x04a5: memx_func_leave_wait */ /* 0x04c1: memx_func_leave_wait */
0xc067f104, 0xc067f104,
0x0664b607, 0x0664b607,
0xf00066cf, 0xf00066cf,
0x1bf40464, 0x1bf40464,
/* 0x04b7: memx_func_wr32 */ /* 0x04d3: memx_func_wr32 */
0x9800f8f3, 0x9800f8f3,
0x15980016, 0x15980016,
0x0810b601, 0x0810b601,
...@@ -1200,7 +1207,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1200,7 +1207,7 @@ uint32_t nva3_pwr_code[] = {
0xe0fcd0fc, 0xe0fcd0fc,
0xb63f21f4, 0xb63f21f4,
0x1bf40242, 0x1bf40242,
/* 0x04d3: memx_func_wait */ /* 0x04ef: memx_func_wait */
0xf000f8e9, 0xf000f8e9,
0x84b62c87, 0x84b62c87,
0x0088cf06, 0x0088cf06,
...@@ -1209,14 +1216,14 @@ uint32_t nva3_pwr_code[] = { ...@@ -1209,14 +1216,14 @@ uint32_t nva3_pwr_code[] = {
0x031b9802, 0x031b9802,
0xf41010b6, 0xf41010b6,
0x00f89c21, 0x00f89c21,
/* 0x04f0: memx_func_delay */ /* 0x050c: memx_func_delay */
0xb6001e98, 0xb6001e98,
0x21f40410, 0x21f40410,
/* 0x04fb: memx_exec */ /* 0x0517: memx_exec */
0xf900f87f, 0xf900f87f,
0xb9d0f9e0, 0xb9d0f9e0,
0xb2b902c1, 0xb2b902c1,
/* 0x0505: memx_exec_next */ /* 0x0521: memx_exec_next */
0x00139802, 0x00139802,
0x950410b6, 0x950410b6,
0x30f01034, 0x30f01034,
...@@ -1224,113 +1231,113 @@ uint32_t nva3_pwr_code[] = { ...@@ -1224,113 +1231,113 @@ uint32_t nva3_pwr_code[] = {
0x12b855f9, 0x12b855f9,
0xec1ef406, 0xec1ef406,
0xe0fcd0fc, 0xe0fcd0fc,
0x02b921f5, 0x02d521f5,
/* 0x0526: memx_info */ /* 0x0542: memx_info */
0xc7f100f8, 0xc7f100f8,
0xb7f103ac, 0xb7f103ac,
0x21f50800, 0x21f50800,
0x00f802b9, 0x00f802d5,
/* 0x0534: memx_recv */ /* 0x0550: memx_recv */
0xf401d6b0, 0xf401d6b0,
0xd6b0c40b, 0xd6b0c40b,
0xe90bf400, 0xe90bf400,
/* 0x0542: memx_init */ /* 0x055e: memx_init */
0x00f800f8, 0x00f800f8,
/* 0x0544: perf_recv */ /* 0x0560: perf_recv */
/* 0x0546: perf_init */ /* 0x0562: perf_init */
0x00f800f8, 0x00f800f8,
/* 0x0548: i2c_drive_scl */ /* 0x0564: i2c_drive_scl */
0xf40036b0, 0xf40036b0,
0x07f1110b, 0x07f1110b,
0x04b607e0, 0x04b607e0,
0x0001d006, 0x0001d006,
0x00f804bd, 0x00f804bd,
/* 0x055c: i2c_drive_scl_lo */ /* 0x0578: i2c_drive_scl_lo */
0x07e407f1, 0x07e407f1,
0xd00604b6, 0xd00604b6,
0x04bd0001, 0x04bd0001,
/* 0x056a: i2c_drive_sda */ /* 0x0586: i2c_drive_sda */
0x36b000f8, 0x36b000f8,
0x110bf400, 0x110bf400,
0x07e007f1, 0x07e007f1,
0xd00604b6, 0xd00604b6,
0x04bd0002, 0x04bd0002,
/* 0x057e: i2c_drive_sda_lo */ /* 0x059a: i2c_drive_sda_lo */
0x07f100f8, 0x07f100f8,
0x04b607e4, 0x04b607e4,
0x0002d006, 0x0002d006,
0x00f804bd, 0x00f804bd,
/* 0x058c: i2c_sense_scl */ /* 0x05a8: i2c_sense_scl */
0xf10132f4, 0xf10132f4,
0xb607c437, 0xb607c437,
0x33cf0634, 0x33cf0634,
0x0431fd00, 0x0431fd00,
0xf4060bf4, 0xf4060bf4,
/* 0x05a2: i2c_sense_scl_done */ /* 0x05be: i2c_sense_scl_done */
0x00f80131, 0x00f80131,
/* 0x05a4: i2c_sense_sda */ /* 0x05c0: i2c_sense_sda */
0xf10132f4, 0xf10132f4,
0xb607c437, 0xb607c437,
0x33cf0634, 0x33cf0634,
0x0432fd00, 0x0432fd00,
0xf4060bf4, 0xf4060bf4,
/* 0x05ba: i2c_sense_sda_done */ /* 0x05d6: i2c_sense_sda_done */
0x00f80131, 0x00f80131,
/* 0x05bc: i2c_raise_scl */ /* 0x05d8: i2c_raise_scl */
0x47f140f9, 0x47f140f9,
0x37f00898, 0x37f00898,
0x4821f501, 0x6421f501,
/* 0x05c9: i2c_raise_scl_wait */ /* 0x05e5: i2c_raise_scl_wait */
0xe8e7f105, 0xe8e7f105,
0x7f21f403, 0x7f21f403,
0x058c21f5, 0x05a821f5,
0xb60901f4, 0xb60901f4,
0x1bf40142, 0x1bf40142,
/* 0x05dd: i2c_raise_scl_done */ /* 0x05f9: i2c_raise_scl_done */
0xf840fcef, 0xf840fcef,
/* 0x05e1: i2c_start */ /* 0x05fd: i2c_start */
0x8c21f500, 0xa821f500,
0x0d11f405, 0x0d11f405,
0x05a421f5, 0x05c021f5,
0xf40611f4, 0xf40611f4,
/* 0x05f2: i2c_start_rep */ /* 0x060e: i2c_start_rep */
0x37f0300e, 0x37f0300e,
0x4821f500, 0x6421f500,
0x0137f005, 0x0137f005,
0x056a21f5, 0x058621f5,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0xbc21f550, 0xd821f550,
0x0464b605, 0x0464b605,
/* 0x061f: i2c_start_send */ /* 0x063b: i2c_start_send */
0xf01f11f4, 0xf01f11f4,
0x21f50037, 0x21f50037,
0xe7f1056a, 0xe7f10586,
0x21f41388, 0x21f41388,
0x0037f07f, 0x0037f07f,
0x054821f5, 0x056421f5,
0x1388e7f1, 0x1388e7f1,
/* 0x063b: i2c_start_out */ /* 0x0657: i2c_start_out */
0xf87f21f4, 0xf87f21f4,
/* 0x063d: i2c_stop */ /* 0x0659: i2c_stop */
0x0037f000, 0x0037f000,
0x054821f5, 0x056421f5,
0xf50037f0, 0xf50037f0,
0xf1056a21, 0xf1058621,
0xf403e8e7, 0xf403e8e7,
0x37f07f21, 0x37f07f21,
0x4821f501, 0x6421f501,
0x88e7f105, 0x88e7f105,
0x7f21f413, 0x7f21f413,
0xf50137f0, 0xf50137f0,
0xf1056a21, 0xf1058621,
0xf41388e7, 0xf41388e7,
0x00f87f21, 0x00f87f21,
/* 0x0670: i2c_bitw */ /* 0x068c: i2c_bitw */
0x056a21f5, 0x058621f5,
0x03e8e7f1, 0x03e8e7f1,
0xbb7f21f4, 0xbb7f21f4,
0x65b60076, 0x65b60076,
...@@ -1338,18 +1345,18 @@ uint32_t nva3_pwr_code[] = { ...@@ -1338,18 +1345,18 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x05bc21f5, 0x05d821f5,
0xf40464b6, 0xf40464b6,
0xe7f11811, 0xe7f11811,
0x21f41388, 0x21f41388,
0x0037f07f, 0x0037f07f,
0x054821f5, 0x056421f5,
0x1388e7f1, 0x1388e7f1,
/* 0x06af: i2c_bitw_out */ /* 0x06cb: i2c_bitw_out */
0xf87f21f4, 0xf87f21f4,
/* 0x06b1: i2c_bitr */ /* 0x06cd: i2c_bitr */
0x0137f000, 0x0137f000,
0x056a21f5, 0x058621f5,
0x03e8e7f1, 0x03e8e7f1,
0xbb7f21f4, 0xbb7f21f4,
0x65b60076, 0x65b60076,
...@@ -1357,19 +1364,19 @@ uint32_t nva3_pwr_code[] = { ...@@ -1357,19 +1364,19 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x05bc21f5, 0x05d821f5,
0xf40464b6, 0xf40464b6,
0x21f51b11, 0x21f51b11,
0x37f005a4, 0x37f005c0,
0x4821f500, 0x6421f500,
0x88e7f105, 0x88e7f105,
0x7f21f413, 0x7f21f413,
0xf4013cf0, 0xf4013cf0,
/* 0x06f6: i2c_bitr_done */ /* 0x0712: i2c_bitr_done */
0x00f80131, 0x00f80131,
/* 0x06f8: i2c_get_byte */ /* 0x0714: i2c_get_byte */
0xf00057f0, 0xf00057f0,
/* 0x06fe: i2c_get_byte_next */ /* 0x071a: i2c_get_byte_next */
0x54b60847, 0x54b60847,
0x0076bb01, 0x0076bb01,
0xf90465b6, 0xf90465b6,
...@@ -1377,7 +1384,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1377,7 +1384,7 @@ uint32_t nva3_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b606b1, 0x64b606cd,
0x2b11f404, 0x2b11f404,
0xb60553fd, 0xb60553fd,
0x1bf40142, 0x1bf40142,
...@@ -1387,12 +1394,12 @@ uint32_t nva3_pwr_code[] = { ...@@ -1387,12 +1394,12 @@ uint32_t nva3_pwr_code[] = {
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x7021f550, 0x8c21f550,
0x0464b606, 0x0464b606,
/* 0x0748: i2c_get_byte_done */ /* 0x0764: i2c_get_byte_done */
/* 0x074a: i2c_put_byte */ /* 0x0766: i2c_put_byte */
0x47f000f8, 0x47f000f8,
/* 0x074d: i2c_put_byte_next */ /* 0x0769: i2c_put_byte_next */
0x0142b608, 0x0142b608,
0xbb3854ff, 0xbb3854ff,
0x65b60076, 0x65b60076,
...@@ -1400,7 +1407,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1400,7 +1407,7 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x067021f5, 0x068c21f5,
0xf40464b6, 0xf40464b6,
0x46b03411, 0x46b03411,
0xd81bf400, 0xd81bf400,
...@@ -1409,21 +1416,21 @@ uint32_t nva3_pwr_code[] = { ...@@ -1409,21 +1416,21 @@ uint32_t nva3_pwr_code[] = {
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0xb121f550, 0xcd21f550,
0x0464b606, 0x0464b606,
0xbb0f11f4, 0xbb0f11f4,
0x36b00076, 0x36b00076,
0x061bf401, 0x061bf401,
/* 0x07a3: i2c_put_byte_done */ /* 0x07bf: i2c_put_byte_done */
0xf80132f4, 0xf80132f4,
/* 0x07a5: i2c_addr */ /* 0x07c1: i2c_addr */
0x0076bb00, 0x0076bb00,
0xf90465b6, 0xf90465b6,
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b605e1, 0x64b605fd,
0x2911f404, 0x2911f404,
0x012ec3e7, 0x012ec3e7,
0xfd0134b6, 0xfd0134b6,
...@@ -1433,24 +1440,24 @@ uint32_t nva3_pwr_code[] = { ...@@ -1433,24 +1440,24 @@ uint32_t nva3_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0xf550fc04, 0xf550fc04,
0xb6074a21, 0xb6076621,
/* 0x07ea: i2c_addr_done */ /* 0x0806: i2c_addr_done */
0x00f80464, 0x00f80464,
/* 0x07ec: i2c_acquire_addr */ /* 0x0808: i2c_acquire_addr */
0xb6f8cec7, 0xb6f8cec7,
0xe0b702e4, 0xe0b702e4,
0xee980bfc, 0xee980bfc,
/* 0x07fb: i2c_acquire */ /* 0x0817: i2c_acquire */
0xf500f800, 0xf500f800,
0xf407ec21, 0xf4080821,
0xd9f00421, 0xd9f00421,
0x3f21f403, 0x3f21f403,
/* 0x080a: i2c_release */ /* 0x0826: i2c_release */
0x21f500f8, 0x21f500f8,
0x21f407ec, 0x21f40808,
0x03daf004, 0x03daf004,
0xf83f21f4, 0xf83f21f4,
/* 0x0819: i2c_recv */ /* 0x0835: i2c_recv */
0x0132f400, 0x0132f400,
0xb6f8c1c7, 0xb6f8c1c7,
0x16b00214, 0x16b00214,
...@@ -1469,7 +1476,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1469,7 +1476,7 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x07fb21f5, 0x081721f5,
0xfc0464b6, 0xfc0464b6,
0x00d6b0d0, 0x00d6b0d0,
0x00b31bf5, 0x00b31bf5,
...@@ -1479,7 +1486,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1479,7 +1486,7 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x07a521f5, 0x07c121f5,
0xf50464b6, 0xf50464b6,
0xc700d011, 0xc700d011,
0x76bbe0c5, 0x76bbe0c5,
...@@ -1488,7 +1495,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1488,7 +1495,7 @@ uint32_t nva3_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0xf550fc04, 0xf550fc04,
0xb6074a21, 0xb6076621,
0x11f50464, 0x11f50464,
0x57f000ad, 0x57f000ad,
0x0076bb01, 0x0076bb01,
...@@ -1497,7 +1504,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1497,7 +1504,7 @@ uint32_t nva3_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b607a5, 0x64b607c1,
0x8a11f504, 0x8a11f504,
0x0076bb00, 0x0076bb00,
0xf90465b6, 0xf90465b6,
...@@ -1505,7 +1512,7 @@ uint32_t nva3_pwr_code[] = { ...@@ -1505,7 +1512,7 @@ uint32_t nva3_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b606f8, 0x64b60714,
0x6a11f404, 0x6a11f404,
0xbbe05bcb, 0xbbe05bcb,
0x65b60076, 0x65b60076,
...@@ -1513,38 +1520,38 @@ uint32_t nva3_pwr_code[] = { ...@@ -1513,38 +1520,38 @@ uint32_t nva3_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x063d21f5, 0x065921f5,
0xb90464b6, 0xb90464b6,
0x74bd025b, 0x74bd025b,
/* 0x091f: i2c_recv_not_rd08 */ /* 0x093b: i2c_recv_not_rd08 */
0xb0430ef4, 0xb0430ef4,
0x1bf401d6, 0x1bf401d6,
0x0057f03d, 0x0057f03d,
0x07a521f5, 0x07c121f5,
0xc73311f4, 0xc73311f4,
0x21f5e0c5, 0x21f5e0c5,
0x11f4074a, 0x11f40766,
0x0057f029, 0x0057f029,
0x07a521f5, 0x07c121f5,
0xc71f11f4, 0xc71f11f4,
0x21f5e0b5, 0x21f5e0b5,
0x11f4074a, 0x11f40766,
0x3d21f515, 0x5921f515,
0xc774bd06, 0xc774bd06,
0x1bf408c5, 0x1bf408c5,
0x0232f409, 0x0232f409,
/* 0x095f: i2c_recv_not_wr08 */ /* 0x097b: i2c_recv_not_wr08 */
/* 0x095f: i2c_recv_done */ /* 0x097b: i2c_recv_done */
0xc7030ef4, 0xc7030ef4,
0x21f5f8ce, 0x21f5f8ce,
0xe0fc080a, 0xe0fc0826,
0x12f4d0fc, 0x12f4d0fc,
0x027cb90a, 0x027cb90a,
0x02b921f5, 0x02d521f5,
/* 0x0974: i2c_recv_exit */ /* 0x0990: i2c_recv_exit */
/* 0x0976: i2c_init */ /* 0x0992: i2c_init */
0x00f800f8, 0x00f800f8,
/* 0x0978: test_recv */ /* 0x0994: test_recv */
0x05d817f1, 0x05d817f1,
0xcf0614b6, 0xcf0614b6,
0x10b60011, 0x10b60011,
...@@ -1554,12 +1561,12 @@ uint32_t nva3_pwr_code[] = { ...@@ -1554,12 +1561,12 @@ uint32_t nva3_pwr_code[] = {
0x00e7f104, 0x00e7f104,
0x4fe3f1d9, 0x4fe3f1d9,
0xf521f513, 0xf521f513,
/* 0x099f: test_init */ /* 0x09bb: test_init */
0xf100f801, 0xf100f801,
0xf50800e7, 0xf50800e7,
0xf801f521, 0xf801f521,
/* 0x09a9: idle_recv */ /* 0x09c5: idle_recv */
/* 0x09ab: idle */ /* 0x09c7: idle */
0xf400f800, 0xf400f800,
0x17f10031, 0x17f10031,
0x14b605d4, 0x14b605d4,
...@@ -1567,17 +1574,17 @@ uint32_t nva3_pwr_code[] = { ...@@ -1567,17 +1574,17 @@ uint32_t nva3_pwr_code[] = {
0xf10110b6, 0xf10110b6,
0xb605d407, 0xb605d407,
0x01d00604, 0x01d00604,
/* 0x09c7: idle_loop */ /* 0x09e3: idle_loop */
0xf004bd00, 0xf004bd00,
0x32f45817, 0x32f45817,
/* 0x09cd: idle_proc */ /* 0x09e9: idle_proc */
/* 0x09cd: idle_proc_exec */ /* 0x09e9: idle_proc_exec */
0xb910f902, 0xb910f902,
0x21f5021e, 0x21f5021e,
0x10fc02c2, 0x10fc02de,
0xf40911f4, 0xf40911f4,
0x0ef40231, 0x0ef40231,
/* 0x09e1: idle_proc_next */ /* 0x09fd: idle_proc_next */
0x5810b6ef, 0x5810b6ef,
0xf4061fb8, 0xf4061fb8,
0x02f4e61b, 0x02f4e61b,
...@@ -1586,4 +1593,61 @@ uint32_t nva3_pwr_code[] = { ...@@ -1586,4 +1593,61 @@ uint32_t nva3_pwr_code[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
}; };
...@@ -24,8 +24,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -24,8 +24,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
/* 0x0058: proc_list_head */ /* 0x0058: proc_list_head */
0x54534f48, 0x54534f48,
0x00000430, 0x0000044c,
0x000003cd, 0x000003e9,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -46,8 +46,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -46,8 +46,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x584d454d, 0x584d454d,
0x00000542, 0x0000055e,
0x00000534, 0x00000550,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -68,8 +68,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -68,8 +68,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x46524550, 0x46524550,
0x00000546, 0x00000562,
0x00000544, 0x00000560,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -90,8 +90,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -90,8 +90,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x5f433249, 0x5f433249,
0x00000976, 0x00000992,
0x00000819, 0x00000835,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -112,8 +112,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -112,8 +112,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x54534554, 0x54534554,
0x0000099f, 0x000009bb,
0x00000978, 0x00000994,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -134,8 +134,8 @@ uint32_t nvc0_pwr_data[] = { ...@@ -134,8 +134,8 @@ uint32_t nvc0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x454c4449, 0x454c4449,
0x000009ab, 0x000009c7,
0x000009a9, 0x000009c5,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -229,20 +229,20 @@ uint32_t nvc0_pwr_data[] = { ...@@ -229,20 +229,20 @@ uint32_t nvc0_pwr_data[] = {
/* 0x0370: memx_func_head */ /* 0x0370: memx_func_head */
0x00010000, 0x00010000,
0x00000000, 0x00000000,
0x0000046f, 0x0000048b,
/* 0x037c: memx_func_next */ /* 0x037c: memx_func_next */
0x00000001, 0x00000001,
0x00000000, 0x00000000,
0x00000496, 0x000004b2,
0x00000002, 0x00000002,
0x00000002, 0x00000002,
0x000004b7, 0x000004d3,
0x00040003, 0x00040003,
0x00000000, 0x00000000,
0x000004d3, 0x000004ef,
0x00010004, 0x00010004,
0x00000000, 0x00000000,
0x000004f0, 0x0000050c,
/* 0x03ac: memx_func_tail */ /* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */ /* 0x03ac: memx_data_head */
0x00000000, 0x00000000,
...@@ -849,7 +849,7 @@ uint32_t nvc0_pwr_data[] = { ...@@ -849,7 +849,7 @@ uint32_t nvc0_pwr_data[] = {
}; };
uint32_t nvc0_pwr_code[] = { uint32_t nvc0_pwr_code[] = {
0x030d0ef5, 0x03290ef5,
/* 0x0004: rd32 */ /* 0x0004: rd32 */
0x07a007f1, 0x07a007f1,
0xd00604b6, 0xd00604b6,
...@@ -915,7 +915,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -915,7 +915,7 @@ uint32_t nvc0_pwr_code[] = {
0xbb9a0a98, 0xbb9a0a98,
0x1cf4029a, 0x1cf4029a,
0x01d7f00f, 0x01d7f00f,
0x025421f5, 0x027021f5,
0x0ef494bd, 0x0ef494bd,
/* 0x00e9: intr_watchdog_next_time */ /* 0x00e9: intr_watchdog_next_time */
0x9b0a9815, 0x9b0a9815,
...@@ -967,7 +967,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -967,7 +967,7 @@ uint32_t nvc0_pwr_code[] = {
0x48e7f1c0, 0x48e7f1c0,
0x53e3f14f, 0x53e3f14f,
0x00d7f054, 0x00d7f054,
0x02b921f5, 0x02d521f5,
0x07f1c0fc, 0x07f1c0fc,
0x04b604c0, 0x04b604c0,
0x000cd006, 0x000cd006,
...@@ -994,13 +994,19 @@ uint32_t nvc0_pwr_code[] = { ...@@ -994,13 +994,19 @@ uint32_t nvc0_pwr_code[] = {
0x00fc80fc, 0x00fc80fc,
0xf80032f4, 0xf80032f4,
/* 0x01f5: timer */ /* 0x01f5: timer */
0x1032f401, 0xf990f901,
0x1032f480,
0xb003f898, 0xb003f898,
0x1cf40086, 0x1cf40086,
0x03fe8051, 0xf084bd65,
0xb63807f0, 0x04b63807,
0x08d00604, 0x0008d006,
0xf004bd00, 0x87f004bd,
0x0684b634,
0x980088cf,
0x98bb9a09,
0x00e9bb02,
0xf003fe80,
0x84b60887, 0x84b60887,
0x0088cf06, 0x0088cf06,
0xf40284f0, 0xf40284f0,
...@@ -1009,19 +1015,20 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1009,19 +1015,20 @@ uint32_t nvc0_pwr_code[] = {
0xb80088cf, 0xb80088cf,
0x0bf406e0, 0x0bf406e0,
0x06e8b809, 0x06e8b809,
/* 0x0233: timer_reset */ /* 0x024b: timer_reset */
0xf01f1ef4, 0xf0111cf4,
0x04b63407, 0x04b63407,
0x000ed006, 0x000ed006,
0x0e8004bd, 0x0e8004bd,
/* 0x0241: timer_enable */ /* 0x0259: timer_enable */
0x0187f09a, 0x0187f09a,
0xb63807f0, 0xb63807f0,
0x08d00604, 0x08d00604,
/* 0x024f: timer_done */ /* 0x0267: timer_done */
0xf404bd00, 0xf404bd00,
0x00f81031, 0x80fc1031,
/* 0x0254: send_proc */ 0x00f890fc,
/* 0x0270: send_proc */
0x90f980f9, 0x90f980f9,
0x9805e898, 0x9805e898,
0x86f004e9, 0x86f004e9,
...@@ -1036,25 +1043,25 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1036,25 +1043,25 @@ uint32_t nvc0_pwr_code[] = {
0x90b6038b, 0x90b6038b,
0x0794f001, 0x0794f001,
0xf404e980, 0xf404e980,
/* 0x028e: send_done */ /* 0x02aa: send_done */
0x90fc0231, 0x90fc0231,
0x00f880fc, 0x00f880fc,
/* 0x0294: find */ /* 0x02b0: find */
0x87f080f9, 0x87f080f9,
0x0131f458, 0x0131f458,
/* 0x029c: find_loop */ /* 0x02b8: find_loop */
0xb8008a98, 0xb8008a98,
0x0bf406ae, 0x0bf406ae,
0x5880b610, 0x5880b610,
0x026886b1, 0x026886b1,
0xf4f01bf4, 0xf4f01bf4,
/* 0x02b2: find_done */ /* 0x02ce: find_done */
0x8eb90132, 0x8eb90132,
0xf880fc02, 0xf880fc02,
/* 0x02b9: send */ /* 0x02d5: send */
0x9421f500, 0xb021f500,
0x9701f402, 0x9701f402,
/* 0x02c2: recv */ /* 0x02de: recv */
0xe89800f8, 0xe89800f8,
0x04e99805, 0x04e99805,
0xb80132f4, 0xb80132f4,
...@@ -1073,9 +1080,9 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1073,9 +1080,9 @@ uint32_t nvc0_pwr_code[] = {
0xf900ee98, 0xf900ee98,
0xfef0fca5, 0xfef0fca5,
0x31f400f8, 0x31f400f8,
/* 0x030b: recv_done */ /* 0x0327: recv_done */
0xf8f0fc01, 0xf8f0fc01,
/* 0x030d: init */ /* 0x0329: init */
0x0817f100, 0x0817f100,
0x0614b601, 0x0614b601,
0xe70011cf, 0xe70011cf,
...@@ -1101,12 +1108,12 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1101,12 +1108,12 @@ uint32_t nvc0_pwr_code[] = {
0x04b63807, 0x04b63807,
0x0001d006, 0x0001d006,
0xf7f004bd, 0xf7f004bd,
/* 0x0371: init_proc */ /* 0x038d: init_proc */
0x01f19858, 0x01f19858,
0xf40016b0, 0xf40016b0,
0x15f9fa0b, 0x15f9fa0b,
0xf458f0b6, 0xf458f0b6,
/* 0x0382: host_send */ /* 0x039e: host_send */
0x17f1f20e, 0x17f1f20e,
0x14b604b0, 0x14b604b0,
0x0011cf06, 0x0011cf06,
...@@ -1120,18 +1127,18 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1120,18 +1127,18 @@ uint32_t nvc0_pwr_code[] = {
0x02ec9803, 0x02ec9803,
0x9801ed98, 0x9801ed98,
0x21f500ee, 0x21f500ee,
0x10b602b9, 0x10b602d5,
0x0f1ec401, 0x0f1ec401,
0x04b007f1, 0x04b007f1,
0xd00604b6, 0xd00604b6,
0x04bd000e, 0x04bd000e,
/* 0x03cb: host_send_done */ /* 0x03e7: host_send_done */
0xf8ba0ef4, 0xf8ba0ef4,
/* 0x03cd: host_recv */ /* 0x03e9: host_recv */
0x4917f100, 0x4917f100,
0x5413f14e, 0x5413f14e,
0x06e1b852, 0x06e1b852,
/* 0x03db: host_recv_wait */ /* 0x03f7: host_recv_wait */
0xf1aa0bf4, 0xf1aa0bf4,
0xb604cc17, 0xb604cc17,
0x11cf0614, 0x11cf0614,
...@@ -1154,7 +1161,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1154,7 +1161,7 @@ uint32_t nvc0_pwr_code[] = {
0x04b60007, 0x04b60007,
0x0002d006, 0x0002d006,
0x00f804bd, 0x00f804bd,
/* 0x0430: host_init */ /* 0x044c: host_init */
0x008017f1, 0x008017f1,
0xf11014b6, 0xf11014b6,
0xf1027015, 0xf1027015,
...@@ -1170,29 +1177,29 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1170,29 +1177,29 @@ uint32_t nvc0_pwr_code[] = {
0xc407f101, 0xc407f101,
0x0604b604, 0x0604b604,
0xbd0001d0, 0xbd0001d0,
/* 0x046f: memx_func_enter */ /* 0x048b: memx_func_enter */
0xf000f804, 0xf000f804,
0x07f10467, 0x07f10467,
0x04b607e0, 0x04b607e0,
0x0006d006, 0x0006d006,
/* 0x047e: memx_func_enter_wait */ /* 0x049a: memx_func_enter_wait */
0x67f104bd, 0x67f104bd,
0x64b607c0, 0x64b607c0,
0x0066cf06, 0x0066cf06,
0xf40464f0, 0xf40464f0,
0x1698f30b, 0x1698f30b,
0x0410b600, 0x0410b600,
/* 0x0496: memx_func_leave */ /* 0x04b2: memx_func_leave */
0x67f000f8, 0x67f000f8,
0xe407f104, 0xe407f104,
0x0604b607, 0x0604b607,
0xbd0006d0, 0xbd0006d0,
/* 0x04a5: memx_func_leave_wait */ /* 0x04c1: memx_func_leave_wait */
0xc067f104, 0xc067f104,
0x0664b607, 0x0664b607,
0xf00066cf, 0xf00066cf,
0x1bf40464, 0x1bf40464,
/* 0x04b7: memx_func_wr32 */ /* 0x04d3: memx_func_wr32 */
0x9800f8f3, 0x9800f8f3,
0x15980016, 0x15980016,
0x0810b601, 0x0810b601,
...@@ -1200,7 +1207,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1200,7 +1207,7 @@ uint32_t nvc0_pwr_code[] = {
0xe0fcd0fc, 0xe0fcd0fc,
0xb63f21f4, 0xb63f21f4,
0x1bf40242, 0x1bf40242,
/* 0x04d3: memx_func_wait */ /* 0x04ef: memx_func_wait */
0xf000f8e9, 0xf000f8e9,
0x84b62c87, 0x84b62c87,
0x0088cf06, 0x0088cf06,
...@@ -1209,14 +1216,14 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1209,14 +1216,14 @@ uint32_t nvc0_pwr_code[] = {
0x031b9802, 0x031b9802,
0xf41010b6, 0xf41010b6,
0x00f89c21, 0x00f89c21,
/* 0x04f0: memx_func_delay */ /* 0x050c: memx_func_delay */
0xb6001e98, 0xb6001e98,
0x21f40410, 0x21f40410,
/* 0x04fb: memx_exec */ /* 0x0517: memx_exec */
0xf900f87f, 0xf900f87f,
0xb9d0f9e0, 0xb9d0f9e0,
0xb2b902c1, 0xb2b902c1,
/* 0x0505: memx_exec_next */ /* 0x0521: memx_exec_next */
0x00139802, 0x00139802,
0x950410b6, 0x950410b6,
0x30f01034, 0x30f01034,
...@@ -1224,113 +1231,113 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1224,113 +1231,113 @@ uint32_t nvc0_pwr_code[] = {
0x12b855f9, 0x12b855f9,
0xec1ef406, 0xec1ef406,
0xe0fcd0fc, 0xe0fcd0fc,
0x02b921f5, 0x02d521f5,
/* 0x0526: memx_info */ /* 0x0542: memx_info */
0xc7f100f8, 0xc7f100f8,
0xb7f103ac, 0xb7f103ac,
0x21f50800, 0x21f50800,
0x00f802b9, 0x00f802d5,
/* 0x0534: memx_recv */ /* 0x0550: memx_recv */
0xf401d6b0, 0xf401d6b0,
0xd6b0c40b, 0xd6b0c40b,
0xe90bf400, 0xe90bf400,
/* 0x0542: memx_init */ /* 0x055e: memx_init */
0x00f800f8, 0x00f800f8,
/* 0x0544: perf_recv */ /* 0x0560: perf_recv */
/* 0x0546: perf_init */ /* 0x0562: perf_init */
0x00f800f8, 0x00f800f8,
/* 0x0548: i2c_drive_scl */ /* 0x0564: i2c_drive_scl */
0xf40036b0, 0xf40036b0,
0x07f1110b, 0x07f1110b,
0x04b607e0, 0x04b607e0,
0x0001d006, 0x0001d006,
0x00f804bd, 0x00f804bd,
/* 0x055c: i2c_drive_scl_lo */ /* 0x0578: i2c_drive_scl_lo */
0x07e407f1, 0x07e407f1,
0xd00604b6, 0xd00604b6,
0x04bd0001, 0x04bd0001,
/* 0x056a: i2c_drive_sda */ /* 0x0586: i2c_drive_sda */
0x36b000f8, 0x36b000f8,
0x110bf400, 0x110bf400,
0x07e007f1, 0x07e007f1,
0xd00604b6, 0xd00604b6,
0x04bd0002, 0x04bd0002,
/* 0x057e: i2c_drive_sda_lo */ /* 0x059a: i2c_drive_sda_lo */
0x07f100f8, 0x07f100f8,
0x04b607e4, 0x04b607e4,
0x0002d006, 0x0002d006,
0x00f804bd, 0x00f804bd,
/* 0x058c: i2c_sense_scl */ /* 0x05a8: i2c_sense_scl */
0xf10132f4, 0xf10132f4,
0xb607c437, 0xb607c437,
0x33cf0634, 0x33cf0634,
0x0431fd00, 0x0431fd00,
0xf4060bf4, 0xf4060bf4,
/* 0x05a2: i2c_sense_scl_done */ /* 0x05be: i2c_sense_scl_done */
0x00f80131, 0x00f80131,
/* 0x05a4: i2c_sense_sda */ /* 0x05c0: i2c_sense_sda */
0xf10132f4, 0xf10132f4,
0xb607c437, 0xb607c437,
0x33cf0634, 0x33cf0634,
0x0432fd00, 0x0432fd00,
0xf4060bf4, 0xf4060bf4,
/* 0x05ba: i2c_sense_sda_done */ /* 0x05d6: i2c_sense_sda_done */
0x00f80131, 0x00f80131,
/* 0x05bc: i2c_raise_scl */ /* 0x05d8: i2c_raise_scl */
0x47f140f9, 0x47f140f9,
0x37f00898, 0x37f00898,
0x4821f501, 0x6421f501,
/* 0x05c9: i2c_raise_scl_wait */ /* 0x05e5: i2c_raise_scl_wait */
0xe8e7f105, 0xe8e7f105,
0x7f21f403, 0x7f21f403,
0x058c21f5, 0x05a821f5,
0xb60901f4, 0xb60901f4,
0x1bf40142, 0x1bf40142,
/* 0x05dd: i2c_raise_scl_done */ /* 0x05f9: i2c_raise_scl_done */
0xf840fcef, 0xf840fcef,
/* 0x05e1: i2c_start */ /* 0x05fd: i2c_start */
0x8c21f500, 0xa821f500,
0x0d11f405, 0x0d11f405,
0x05a421f5, 0x05c021f5,
0xf40611f4, 0xf40611f4,
/* 0x05f2: i2c_start_rep */ /* 0x060e: i2c_start_rep */
0x37f0300e, 0x37f0300e,
0x4821f500, 0x6421f500,
0x0137f005, 0x0137f005,
0x056a21f5, 0x058621f5,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0xbc21f550, 0xd821f550,
0x0464b605, 0x0464b605,
/* 0x061f: i2c_start_send */ /* 0x063b: i2c_start_send */
0xf01f11f4, 0xf01f11f4,
0x21f50037, 0x21f50037,
0xe7f1056a, 0xe7f10586,
0x21f41388, 0x21f41388,
0x0037f07f, 0x0037f07f,
0x054821f5, 0x056421f5,
0x1388e7f1, 0x1388e7f1,
/* 0x063b: i2c_start_out */ /* 0x0657: i2c_start_out */
0xf87f21f4, 0xf87f21f4,
/* 0x063d: i2c_stop */ /* 0x0659: i2c_stop */
0x0037f000, 0x0037f000,
0x054821f5, 0x056421f5,
0xf50037f0, 0xf50037f0,
0xf1056a21, 0xf1058621,
0xf403e8e7, 0xf403e8e7,
0x37f07f21, 0x37f07f21,
0x4821f501, 0x6421f501,
0x88e7f105, 0x88e7f105,
0x7f21f413, 0x7f21f413,
0xf50137f0, 0xf50137f0,
0xf1056a21, 0xf1058621,
0xf41388e7, 0xf41388e7,
0x00f87f21, 0x00f87f21,
/* 0x0670: i2c_bitw */ /* 0x068c: i2c_bitw */
0x056a21f5, 0x058621f5,
0x03e8e7f1, 0x03e8e7f1,
0xbb7f21f4, 0xbb7f21f4,
0x65b60076, 0x65b60076,
...@@ -1338,18 +1345,18 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1338,18 +1345,18 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x05bc21f5, 0x05d821f5,
0xf40464b6, 0xf40464b6,
0xe7f11811, 0xe7f11811,
0x21f41388, 0x21f41388,
0x0037f07f, 0x0037f07f,
0x054821f5, 0x056421f5,
0x1388e7f1, 0x1388e7f1,
/* 0x06af: i2c_bitw_out */ /* 0x06cb: i2c_bitw_out */
0xf87f21f4, 0xf87f21f4,
/* 0x06b1: i2c_bitr */ /* 0x06cd: i2c_bitr */
0x0137f000, 0x0137f000,
0x056a21f5, 0x058621f5,
0x03e8e7f1, 0x03e8e7f1,
0xbb7f21f4, 0xbb7f21f4,
0x65b60076, 0x65b60076,
...@@ -1357,19 +1364,19 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1357,19 +1364,19 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x05bc21f5, 0x05d821f5,
0xf40464b6, 0xf40464b6,
0x21f51b11, 0x21f51b11,
0x37f005a4, 0x37f005c0,
0x4821f500, 0x6421f500,
0x88e7f105, 0x88e7f105,
0x7f21f413, 0x7f21f413,
0xf4013cf0, 0xf4013cf0,
/* 0x06f6: i2c_bitr_done */ /* 0x0712: i2c_bitr_done */
0x00f80131, 0x00f80131,
/* 0x06f8: i2c_get_byte */ /* 0x0714: i2c_get_byte */
0xf00057f0, 0xf00057f0,
/* 0x06fe: i2c_get_byte_next */ /* 0x071a: i2c_get_byte_next */
0x54b60847, 0x54b60847,
0x0076bb01, 0x0076bb01,
0xf90465b6, 0xf90465b6,
...@@ -1377,7 +1384,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1377,7 +1384,7 @@ uint32_t nvc0_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b606b1, 0x64b606cd,
0x2b11f404, 0x2b11f404,
0xb60553fd, 0xb60553fd,
0x1bf40142, 0x1bf40142,
...@@ -1387,12 +1394,12 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1387,12 +1394,12 @@ uint32_t nvc0_pwr_code[] = {
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x7021f550, 0x8c21f550,
0x0464b606, 0x0464b606,
/* 0x0748: i2c_get_byte_done */ /* 0x0764: i2c_get_byte_done */
/* 0x074a: i2c_put_byte */ /* 0x0766: i2c_put_byte */
0x47f000f8, 0x47f000f8,
/* 0x074d: i2c_put_byte_next */ /* 0x0769: i2c_put_byte_next */
0x0142b608, 0x0142b608,
0xbb3854ff, 0xbb3854ff,
0x65b60076, 0x65b60076,
...@@ -1400,7 +1407,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1400,7 +1407,7 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x067021f5, 0x068c21f5,
0xf40464b6, 0xf40464b6,
0x46b03411, 0x46b03411,
0xd81bf400, 0xd81bf400,
...@@ -1409,21 +1416,21 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1409,21 +1416,21 @@ uint32_t nvc0_pwr_code[] = {
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0xb121f550, 0xcd21f550,
0x0464b606, 0x0464b606,
0xbb0f11f4, 0xbb0f11f4,
0x36b00076, 0x36b00076,
0x061bf401, 0x061bf401,
/* 0x07a3: i2c_put_byte_done */ /* 0x07bf: i2c_put_byte_done */
0xf80132f4, 0xf80132f4,
/* 0x07a5: i2c_addr */ /* 0x07c1: i2c_addr */
0x0076bb00, 0x0076bb00,
0xf90465b6, 0xf90465b6,
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b605e1, 0x64b605fd,
0x2911f404, 0x2911f404,
0x012ec3e7, 0x012ec3e7,
0xfd0134b6, 0xfd0134b6,
...@@ -1433,24 +1440,24 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1433,24 +1440,24 @@ uint32_t nvc0_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0xf550fc04, 0xf550fc04,
0xb6074a21, 0xb6076621,
/* 0x07ea: i2c_addr_done */ /* 0x0806: i2c_addr_done */
0x00f80464, 0x00f80464,
/* 0x07ec: i2c_acquire_addr */ /* 0x0808: i2c_acquire_addr */
0xb6f8cec7, 0xb6f8cec7,
0xe0b702e4, 0xe0b702e4,
0xee980bfc, 0xee980bfc,
/* 0x07fb: i2c_acquire */ /* 0x0817: i2c_acquire */
0xf500f800, 0xf500f800,
0xf407ec21, 0xf4080821,
0xd9f00421, 0xd9f00421,
0x3f21f403, 0x3f21f403,
/* 0x080a: i2c_release */ /* 0x0826: i2c_release */
0x21f500f8, 0x21f500f8,
0x21f407ec, 0x21f40808,
0x03daf004, 0x03daf004,
0xf83f21f4, 0xf83f21f4,
/* 0x0819: i2c_recv */ /* 0x0835: i2c_recv */
0x0132f400, 0x0132f400,
0xb6f8c1c7, 0xb6f8c1c7,
0x16b00214, 0x16b00214,
...@@ -1469,7 +1476,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1469,7 +1476,7 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x07fb21f5, 0x081721f5,
0xfc0464b6, 0xfc0464b6,
0x00d6b0d0, 0x00d6b0d0,
0x00b31bf5, 0x00b31bf5,
...@@ -1479,7 +1486,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1479,7 +1486,7 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x07a521f5, 0x07c121f5,
0xf50464b6, 0xf50464b6,
0xc700d011, 0xc700d011,
0x76bbe0c5, 0x76bbe0c5,
...@@ -1488,7 +1495,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1488,7 +1495,7 @@ uint32_t nvc0_pwr_code[] = {
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0xf550fc04, 0xf550fc04,
0xb6074a21, 0xb6076621,
0x11f50464, 0x11f50464,
0x57f000ad, 0x57f000ad,
0x0076bb01, 0x0076bb01,
...@@ -1497,7 +1504,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1497,7 +1504,7 @@ uint32_t nvc0_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b607a5, 0x64b607c1,
0x8a11f504, 0x8a11f504,
0x0076bb00, 0x0076bb00,
0xf90465b6, 0xf90465b6,
...@@ -1505,7 +1512,7 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1505,7 +1512,7 @@ uint32_t nvc0_pwr_code[] = {
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b606f8, 0x64b60714,
0x6a11f404, 0x6a11f404,
0xbbe05bcb, 0xbbe05bcb,
0x65b60076, 0x65b60076,
...@@ -1513,38 +1520,38 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1513,38 +1520,38 @@ uint32_t nvc0_pwr_code[] = {
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x063d21f5, 0x065921f5,
0xb90464b6, 0xb90464b6,
0x74bd025b, 0x74bd025b,
/* 0x091f: i2c_recv_not_rd08 */ /* 0x093b: i2c_recv_not_rd08 */
0xb0430ef4, 0xb0430ef4,
0x1bf401d6, 0x1bf401d6,
0x0057f03d, 0x0057f03d,
0x07a521f5, 0x07c121f5,
0xc73311f4, 0xc73311f4,
0x21f5e0c5, 0x21f5e0c5,
0x11f4074a, 0x11f40766,
0x0057f029, 0x0057f029,
0x07a521f5, 0x07c121f5,
0xc71f11f4, 0xc71f11f4,
0x21f5e0b5, 0x21f5e0b5,
0x11f4074a, 0x11f40766,
0x3d21f515, 0x5921f515,
0xc774bd06, 0xc774bd06,
0x1bf408c5, 0x1bf408c5,
0x0232f409, 0x0232f409,
/* 0x095f: i2c_recv_not_wr08 */ /* 0x097b: i2c_recv_not_wr08 */
/* 0x095f: i2c_recv_done */ /* 0x097b: i2c_recv_done */
0xc7030ef4, 0xc7030ef4,
0x21f5f8ce, 0x21f5f8ce,
0xe0fc080a, 0xe0fc0826,
0x12f4d0fc, 0x12f4d0fc,
0x027cb90a, 0x027cb90a,
0x02b921f5, 0x02d521f5,
/* 0x0974: i2c_recv_exit */ /* 0x0990: i2c_recv_exit */
/* 0x0976: i2c_init */ /* 0x0992: i2c_init */
0x00f800f8, 0x00f800f8,
/* 0x0978: test_recv */ /* 0x0994: test_recv */
0x05d817f1, 0x05d817f1,
0xcf0614b6, 0xcf0614b6,
0x10b60011, 0x10b60011,
...@@ -1554,12 +1561,12 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1554,12 +1561,12 @@ uint32_t nvc0_pwr_code[] = {
0x00e7f104, 0x00e7f104,
0x4fe3f1d9, 0x4fe3f1d9,
0xf521f513, 0xf521f513,
/* 0x099f: test_init */ /* 0x09bb: test_init */
0xf100f801, 0xf100f801,
0xf50800e7, 0xf50800e7,
0xf801f521, 0xf801f521,
/* 0x09a9: idle_recv */ /* 0x09c5: idle_recv */
/* 0x09ab: idle */ /* 0x09c7: idle */
0xf400f800, 0xf400f800,
0x17f10031, 0x17f10031,
0x14b605d4, 0x14b605d4,
...@@ -1567,17 +1574,17 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1567,17 +1574,17 @@ uint32_t nvc0_pwr_code[] = {
0xf10110b6, 0xf10110b6,
0xb605d407, 0xb605d407,
0x01d00604, 0x01d00604,
/* 0x09c7: idle_loop */ /* 0x09e3: idle_loop */
0xf004bd00, 0xf004bd00,
0x32f45817, 0x32f45817,
/* 0x09cd: idle_proc */ /* 0x09e9: idle_proc */
/* 0x09cd: idle_proc_exec */ /* 0x09e9: idle_proc_exec */
0xb910f902, 0xb910f902,
0x21f5021e, 0x21f5021e,
0x10fc02c2, 0x10fc02de,
0xf40911f4, 0xf40911f4,
0x0ef40231, 0x0ef40231,
/* 0x09e1: idle_proc_next */ /* 0x09fd: idle_proc_next */
0x5810b6ef, 0x5810b6ef,
0xf4061fb8, 0xf4061fb8,
0x02f4e61b, 0x02f4e61b,
...@@ -1586,4 +1593,61 @@ uint32_t nvc0_pwr_code[] = { ...@@ -1586,4 +1593,61 @@ uint32_t nvc0_pwr_code[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
}; };
...@@ -24,8 +24,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -24,8 +24,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
/* 0x0058: proc_list_head */ /* 0x0058: proc_list_head */
0x54534f48, 0x54534f48,
0x000003be, 0x000003d7,
0x00000367, 0x00000380,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -46,8 +46,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -46,8 +46,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x584d454d, 0x584d454d,
0x000004b8, 0x000004d1,
0x000004aa, 0x000004c3,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -68,8 +68,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -68,8 +68,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x46524550, 0x46524550,
0x000004bc, 0x000004d5,
0x000004ba, 0x000004d3,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -90,8 +90,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -90,8 +90,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x5f433249, 0x5f433249,
0x000008d7, 0x000008f0,
0x0000077a, 0x00000793,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -112,8 +112,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -112,8 +112,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x54534554, 0x54534554,
0x000008fa, 0x00000913,
0x000008d9, 0x000008f2,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -134,8 +134,8 @@ uint32_t nvd0_pwr_data[] = { ...@@ -134,8 +134,8 @@ uint32_t nvd0_pwr_data[] = {
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x454c4449, 0x454c4449,
0x00000906, 0x0000091f,
0x00000904, 0x0000091d,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
...@@ -229,20 +229,20 @@ uint32_t nvd0_pwr_data[] = { ...@@ -229,20 +229,20 @@ uint32_t nvd0_pwr_data[] = {
/* 0x0370: memx_func_head */ /* 0x0370: memx_func_head */
0x00010000, 0x00010000,
0x00000000, 0x00000000,
0x000003f4, 0x0000040d,
/* 0x037c: memx_func_next */ /* 0x037c: memx_func_next */
0x00000001, 0x00000001,
0x00000000, 0x00000000,
0x00000415, 0x0000042e,
0x00000002, 0x00000002,
0x00000002, 0x00000002,
0x00000430, 0x00000449,
0x00040003, 0x00040003,
0x00000000, 0x00000000,
0x0000044c, 0x00000465,
0x00010004, 0x00010004,
0x00000000, 0x00000000,
0x00000466, 0x0000047f,
/* 0x03ac: memx_func_tail */ /* 0x03ac: memx_func_tail */
/* 0x03ac: memx_data_head */ /* 0x03ac: memx_data_head */
0x00000000, 0x00000000,
...@@ -784,7 +784,7 @@ uint32_t nvd0_pwr_data[] = { ...@@ -784,7 +784,7 @@ uint32_t nvd0_pwr_data[] = {
}; };
uint32_t nvd0_pwr_code[] = { uint32_t nvd0_pwr_code[] = {
0x02bf0ef5, 0x02d80ef5,
/* 0x0004: rd32 */ /* 0x0004: rd32 */
0x07a007f1, 0x07a007f1,
0xbd000ed0, 0xbd000ed0,
...@@ -841,7 +841,7 @@ uint32_t nvd0_pwr_code[] = { ...@@ -841,7 +841,7 @@ uint32_t nvd0_pwr_code[] = {
0xbb9a0a98, 0xbb9a0a98,
0x1cf4029a, 0x1cf4029a,
0x01d7f00f, 0x01d7f00f,
0x020621f5, 0x021f21f5,
0x0ef494bd, 0x0ef494bd,
/* 0x00c5: intr_watchdog_next_time */ /* 0x00c5: intr_watchdog_next_time */
0x9b0a9815, 0x9b0a9815,
...@@ -889,7 +889,7 @@ uint32_t nvd0_pwr_code[] = { ...@@ -889,7 +889,7 @@ uint32_t nvd0_pwr_code[] = {
0xf14f48e7, 0xf14f48e7,
0xf05453e3, 0xf05453e3,
0x21f500d7, 0x21f500d7,
0xc0fc026b, 0xc0fc0284,
0x04c007f1, 0x04c007f1,
0xbd000cd0, 0xbd000cd0,
/* 0x0175: intr_subintr_skip_fifo */ /* 0x0175: intr_subintr_skip_fifo */
...@@ -913,575 +913,575 @@ uint32_t nvd0_pwr_code[] = { ...@@ -913,575 +913,575 @@ uint32_t nvd0_pwr_code[] = {
0xfc80fc90, 0xfc80fc90,
0x0032f400, 0x0032f400,
/* 0x01b6: timer */ /* 0x01b6: timer */
0x32f401f8, 0x90f901f8,
0x32f480f9,
0x03f89810, 0x03f89810,
0xf40086b0, 0xf40086b0,
0xfe80421c, 0x84bd531c,
0x3807f003, 0xd03807f0,
0xbd0008d0, 0x04bd0008,
0x0887f004, 0xcf3487f0,
0xf00088cf, 0x09980088,
0x1bf40284, 0x0298bb9a,
0x3487f020, 0x8000e9bb,
0xb80088cf, 0x87f003fe,
0x0bf406e0, 0x0088cf08,
0x06e8b809, 0xf40284f0,
/* 0x01eb: timer_reset */ 0x87f0201b,
0xf0191ef4, 0x0088cf34,
0x0ed03407, 0xf406e0b8,
0x8004bd00, 0xe8b8090b,
/* 0x01f6: timer_enable */ 0x0e1cf406,
0x87f09a0e, /* 0x0200: timer_reset */
0x3807f001, 0xd03407f0,
0xbd0008d0, 0x04bd000e,
/* 0x0201: timer_done */ /* 0x020b: timer_enable */
0x1031f404, 0xf09a0e80,
/* 0x0206: send_proc */ 0x07f00187,
0x80f900f8, 0x0008d038,
0xe89890f9, /* 0x0216: timer_done */
0x04e99805, 0x31f404bd,
0xb80486f0, 0xfc80fc10,
0x0bf40689, /* 0x021f: send_proc */
0x0398c42a, 0xf900f890,
0xb6048894, 0x9890f980,
0x8ebb1880, 0xe99805e8,
0x00fa9800, 0x0486f004,
0x80008a80, 0xf40689b8,
0x8c80018d, 0x98c42a0b,
0x038b8002, 0x04889403,
0xf00190b6, 0xbb1880b6,
0xe9800794, 0xfa98008e,
0x0231f404, 0x008a8000,
/* 0x0240: send_done */ 0x80018d80,
0x80fc90fc, 0x8b80028c,
/* 0x0246: find */ 0x0190b603,
0x80f900f8, 0x800794f0,
0xf45887f0, 0x31f404e9,
/* 0x024e: find_loop */ /* 0x0259: send_done */
0x8a980131, 0xfc90fc02,
0x06aeb800, /* 0x025f: find */
0xb6100bf4, 0xf900f880,
0x86b15880, 0x5887f080,
0x1bf40268, /* 0x0267: find_loop */
0x0132f4f0, 0x980131f4,
/* 0x0264: find_done */ 0xaeb8008a,
0xfc028eb9, 0x100bf406,
/* 0x026b: send */ 0xb15880b6,
0xf500f880, 0xf4026886,
0xf4024621, 0x32f4f01b,
0x00f89701, /* 0x027d: find_done */
/* 0x0274: recv */ 0x028eb901,
0x9805e898, 0x00f880fc,
0x32f404e9, /* 0x0284: send */
0x0689b801, 0x025f21f5,
0xc43d0bf4, 0xf89701f4,
0x80b60389, /* 0x028d: recv */
0x0784f001, 0x05e89800,
0x9805e880, 0xf404e998,
0xf0f902ea, 0x89b80132,
0xf9018ffe, 0x3d0bf406,
0x02efb9f0, 0xb60389c4,
0xbb049994, 0x84f00180,
0xe0b600e9, 0x05e88007,
0x03eb9818, 0xf902ea98,
0x9802ec98, 0x018ffef0,
0xee9801ed, 0xefb9f0f9,
0xfca5f900, 0x04999402,
0x00f8fef0, 0xb600e9bb,
0xfc0131f4, 0xeb9818e0,
/* 0x02bd: recv_done */ 0x02ec9803,
/* 0x02bf: init */ 0x9801ed98,
0xf100f8f0, 0xa5f900ee,
0xcf010817, 0xf8fef0fc,
0x11e70011, 0x0131f400,
0x14b60109, /* 0x02d6: recv_done */
0x0014fe08, 0x00f8f0fc,
0x00e017f1, /* 0x02d8: init */
0xf00013f0, 0x010817f1,
0x01d01c07, 0xe70011cf,
0xf004bd00, 0xb6010911,
0x07f0ff17, 0x14fe0814,
0x0001d014, 0xe017f100,
0x17f004bd,
0x0015f102,
0x1007f008,
0xbd0001d0,
0xe617f104,
0x0013f000, 0x0013f000,
0xf40010fe, 0xd01c07f0,
0x17f01031, 0x04bd0001,
0x3807f001, 0xf0ff17f0,
0xbd0001d0, 0x01d01407,
0x58f7f004, 0xf004bd00,
/* 0x0314: init_proc */ 0x15f10217,
0xb001f198, 0x07f00800,
0x0bf40016, 0x0001d010,
0xb615f9fa, 0x17f104bd,
0x0ef458f0, 0x13f000e6,
/* 0x0325: host_send */ 0x0010fe00,
0xb017f1f2, 0xf01031f4,
0x0011cf04, 0x07f00117,
0x04a027f1, 0x0001d038,
0xb80022cf, 0xf7f004bd,
/* 0x032d: init_proc */
0x01f19858,
0xf40016b0,
0x15f9fa0b,
0xf458f0b6,
/* 0x033e: host_send */
0x17f1f20e,
0x11cf04b0,
0xa027f100,
0x0022cf04,
0xf40612b8,
0x1ec42f0b,
0x04ee9407,
0x0270e0b7,
0x9803eb98,
0xed9802ec,
0x00ee9801,
0x028421f5,
0xc40110b6,
0x07f10f1e,
0x0ed004b0,
0xf404bd00,
/* 0x037e: host_send_done */
0x00f8c30e,
/* 0x0380: host_recv */
0x4e4917f1,
0x525413f1,
0xf406e1b8,
/* 0x038e: host_recv_wait */
0x17f1b30b,
0x11cf04cc,
0xc827f100,
0x0022cf04,
0xb80816f0,
0x0bf40612, 0x0bf40612,
0x071ec42f, 0x0723c4ec,
0xb704ee94, 0xb70434b6,
0x980270e0, 0x8002f030,
0xec9803eb, 0x3c80033b,
0x01ed9802, 0x013d8002,
0xf500ee98, 0xb6003e80,
0xb6026b21, 0x24f00120,
0x1ec40110, 0xc807f10f,
0xb007f10f, 0x0002d004,
0x000ed004, 0x27f004bd,
0x0ef404bd, 0x0007f040,
/* 0x0365: host_send_done */
/* 0x0367: host_recv */
0xf100f8c3,
0xf14e4917,
0xb8525413,
0x0bf406e1,
/* 0x0375: host_recv_wait */
0xcc17f1b3,
0x0011cf04,
0x04c827f1,
0xf00022cf,
0x12b80816,
0xec0bf406,
0xb60723c4,
0x30b70434,
0x3b8002f0,
0x023c8003,
0x80013d80,
0x20b6003e,
0x0f24f001,
0x04c807f1,
0xbd0002d0, 0xbd0002d0,
0x4027f004, /* 0x03d7: host_init */
0xd00007f0, 0xf100f804,
0x04bd0002, 0xb6008017,
/* 0x03be: host_init */ 0x15f11014,
0x17f100f8, 0x07f10270,
0x14b60080, 0x01d004d0,
0x7015f110, 0xf104bd00,
0xd007f102, 0xb6008017,
0x0001d004, 0x15f11014,
0x17f104bd, 0x07f102f0,
0x14b60080, 0x01d004dc,
0xf015f110, 0xf004bd00,
0xdc07f102, 0x07f10117,
0x0001d004, 0x01d004c4,
0x17f004bd, 0xf804bd00,
0xc407f101, /* 0x040d: memx_func_enter */
0x0001d004,
0x00f804bd,
/* 0x03f4: memx_func_enter */
0xf10467f0,
0xd007e007,
0x04bd0006,
/* 0x0400: memx_func_enter_wait */
0x07c067f1,
0xf00066cf,
0x0bf40464,
0x001698f6,
0xf80410b6,
/* 0x0415: memx_func_leave */
0x0467f000, 0x0467f000,
0x07e407f1, 0x07e007f1,
0xbd0006d0, 0xbd0006d0,
/* 0x0421: memx_func_leave_wait */ /* 0x0419: memx_func_enter_wait */
0xc067f104, 0xc067f104,
0x0066cf07, 0x0066cf07,
0xf40464f0, 0xf40464f0,
0x00f8f61b, 0x1698f60b,
/* 0x0430: memx_func_wr32 */
0x98001698,
0x10b60115,
0xf960f908,
0xfcd0fc50,
0x3321f4e0,
0xf40242b6,
0x00f8e91b,
/* 0x044c: memx_func_wait */
0xcf2c87f0,
0x1e980088,
0x011d9800,
0x98021c98,
0x10b6031b,
0x7e21f410,
/* 0x0466: memx_func_delay */
0x1e9800f8,
0x0410b600, 0x0410b600,
0xf86721f4, /* 0x042e: memx_func_leave */
/* 0x0471: memx_exec */ 0x67f000f8,
0xf9e0f900, 0xe407f104,
0x02c1b9d0, 0x0006d007,
/* 0x047b: memx_exec_next */ /* 0x043a: memx_func_leave_wait */
0x9802b2b9, 0x67f104bd,
0x10b60013, 0x66cf07c0,
0x10349504, 0x0464f000,
0x980c30f0, 0xf8f61bf4,
0x55f9de35, /* 0x0449: memx_func_wr32 */
0xf40612b8, 0x00169800,
0xd0fcec1e, 0xb6011598,
0x21f5e0fc, 0x60f90810,
0x00f8026b, 0xd0fc50f9,
/* 0x049c: memx_info */ 0x21f4e0fc,
0x03acc7f1, 0x0242b633,
0x0800b7f1, 0xf8e91bf4,
0x026b21f5, /* 0x0465: memx_func_wait */
/* 0x04aa: memx_recv */ 0x2c87f000,
0xd6b000f8, 0x980088cf,
0xc40bf401, 0x1d98001e,
0xf400d6b0, 0x021c9801,
0x00f8e90b, 0xb6031b98,
/* 0x04b8: memx_init */ 0x21f41010,
/* 0x04ba: perf_recv */ /* 0x047f: memx_func_delay */
0x00f800f8, 0x9800f87e,
/* 0x04bc: perf_init */ 0x10b6001e,
/* 0x04be: i2c_drive_scl */ 0x6721f404,
0x36b000f8, /* 0x048a: memx_exec */
0x0e0bf400, 0xe0f900f8,
0x07e007f1, 0xc1b9d0f9,
0x02b2b902,
/* 0x0494: memx_exec_next */
0xb6001398,
0x34950410,
0x0c30f010,
0xf9de3598,
0x0612b855,
0xfcec1ef4,
0xf5e0fcd0,
0xf8028421,
/* 0x04b5: memx_info */
0xacc7f100,
0x00b7f103,
0x8421f508,
/* 0x04c3: memx_recv */
0xb000f802,
0x0bf401d6,
0x00d6b0c4,
0xf8e90bf4,
/* 0x04d1: memx_init */
/* 0x04d3: perf_recv */
0xf800f800,
/* 0x04d5: perf_init */
/* 0x04d7: i2c_drive_scl */
0xb000f800,
0x0bf40036,
0xe007f10e,
0x0001d007,
0x00f804bd,
/* 0x04e8: i2c_drive_scl_lo */
0x07e407f1,
0xbd0001d0, 0xbd0001d0,
/* 0x04cf: i2c_drive_scl_lo */ /* 0x04f3: i2c_drive_sda */
0xf100f804, 0xb000f804,
0xd007e407, 0x0bf40036,
0x04bd0001, 0xe007f10e,
/* 0x04da: i2c_drive_sda */ 0x0002d007,
0x36b000f8, 0x00f804bd,
0x0e0bf400, /* 0x0504: i2c_drive_sda_lo */
0x07e007f1, 0x07e407f1,
0xbd0002d0, 0xbd0002d0,
/* 0x04eb: i2c_drive_sda_lo */ /* 0x050f: i2c_sense_scl */
0xf100f804, 0xf400f804,
0xd007e407,
0x04bd0002,
/* 0x04f6: i2c_sense_scl */
0x32f400f8,
0xc437f101,
0x0033cf07,
0xf40431fd,
0x31f4060b,
/* 0x0509: i2c_sense_scl_done */
/* 0x050b: i2c_sense_sda */
0xf400f801,
0x37f10132, 0x37f10132,
0x33cf07c4, 0x33cf07c4,
0x0432fd00, 0x0431fd00,
0xf4060bf4, 0xf4060bf4,
/* 0x051e: i2c_sense_sda_done */ /* 0x0522: i2c_sense_scl_done */
0x00f80131, 0x00f80131,
/* 0x0520: i2c_raise_scl */ /* 0x0524: i2c_sense_sda */
0x47f140f9, 0xf10132f4,
0x37f00898, 0xcf07c437,
0xbe21f501, 0x32fd0033,
/* 0x052d: i2c_raise_scl_wait */ 0x060bf404,
/* 0x0537: i2c_sense_sda_done */
0xf80131f4,
/* 0x0539: i2c_raise_scl */
0xf140f900,
0xf0089847,
0x21f50137,
/* 0x0546: i2c_raise_scl_wait */
0xe7f104d7,
0x21f403e8,
0x0f21f567,
0x0901f405,
0xf40142b6,
/* 0x055a: i2c_raise_scl_done */
0x40fcef1b,
/* 0x055e: i2c_start */
0x21f500f8,
0x11f4050f,
0x2421f50d,
0x0611f405,
/* 0x056f: i2c_start_rep */
0xf0300ef4,
0x21f50037,
0x37f004d7,
0xf321f501,
0x0076bb04,
0xf90465b6,
0x04659450,
0xbd0256bb,
0x0475fd50,
0x21f550fc,
0x64b60539,
0x1f11f404,
/* 0x059c: i2c_start_send */
0xf50037f0,
0xf104f321,
0xf41388e7,
0x37f06721,
0xd721f500,
0x88e7f104,
0x6721f413,
/* 0x05b8: i2c_start_out */
/* 0x05ba: i2c_stop */
0x37f000f8,
0xd721f500,
0x0037f004,
0x04f321f5,
0x03e8e7f1,
0xf06721f4,
0x21f50137,
0xe7f104d7,
0x21f41388,
0x0137f067,
0x04f321f5,
0x1388e7f1,
0xf86721f4,
/* 0x05ed: i2c_bitw */
0xf321f500,
0xe8e7f104, 0xe8e7f104,
0x6721f403, 0x6721f403,
0x04f621f5,
0xb60901f4,
0x1bf40142,
/* 0x0541: i2c_raise_scl_done */
0xf840fcef,
/* 0x0545: i2c_start */
0xf621f500,
0x0d11f404,
0x050b21f5,
0xf40611f4,
/* 0x0556: i2c_start_rep */
0x37f0300e,
0xbe21f500,
0x0137f004,
0x04da21f5,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x2021f550, 0x3921f550,
0x0464b605, 0x0464b605,
/* 0x0583: i2c_start_send */ 0xf11811f4,
0xf01f11f4, 0xf41388e7,
0x21f50037,
0xe7f104da,
0x21f41388,
0x0037f067,
0x04be21f5,
0x1388e7f1,
/* 0x059f: i2c_start_out */
0xf86721f4,
/* 0x05a1: i2c_stop */
0x0037f000,
0x04be21f5,
0xf50037f0,
0xf104da21,
0xf403e8e7,
0x37f06721, 0x37f06721,
0xbe21f501, 0xd721f500,
0x88e7f104, 0x88e7f104,
0x6721f413, 0x6721f413,
0xf50137f0, /* 0x062c: i2c_bitw_out */
0xf104da21, /* 0x062e: i2c_bitr */
0xf41388e7, 0x37f000f8,
0x00f86721, 0xf321f501,
/* 0x05d4: i2c_bitw */ 0xe8e7f104,
0x04da21f5, 0x6721f403,
0x03e8e7f1, 0xb60076bb,
0xbb6721f4, 0x50f90465,
0x65b60076, 0xbb046594,
0x9450f904, 0x50bd0256,
0x56bb0465, 0xfc0475fd,
0xfd50bd02, 0x3921f550,
0x50fc0475, 0x0464b605,
0x052021f5, 0xf51b11f4,
0xf40464b6, 0xf0052421,
0xe7f11811, 0x21f50037,
0xe7f104d7,
0x21f41388, 0x21f41388,
0x0037f067, 0x013cf067,
0x04be21f5, /* 0x0673: i2c_bitr_done */
0x1388e7f1, 0xf80131f4,
/* 0x0613: i2c_bitw_out */ /* 0x0675: i2c_get_byte */
0xf86721f4, 0x0057f000,
/* 0x0615: i2c_bitr */ /* 0x067b: i2c_get_byte_next */
0x0137f000, 0xb60847f0,
0x04da21f5, 0x76bb0154,
0x03e8e7f1, 0x0465b600,
0xbb6721f4, 0x659450f9,
0x65b60076, 0x0256bb04,
0x9450f904, 0x75fd50bd,
0x56bb0465, 0xf550fc04,
0xfd50bd02, 0xb6062e21,
0x50fc0475, 0x11f40464,
0x052021f5, 0x0553fd2b,
0xf40464b6, 0xf40142b6,
0x21f51b11, 0x37f0d81b,
0x37f0050b,
0xbe21f500,
0x88e7f104,
0x6721f413,
0xf4013cf0,
/* 0x065a: i2c_bitr_done */
0x00f80131,
/* 0x065c: i2c_get_byte */
0xf00057f0,
/* 0x0662: i2c_get_byte_next */
0x54b60847,
0x0076bb01, 0x0076bb01,
0xf90465b6, 0xf90465b6,
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b60615, 0x64b605ed,
0x2b11f404, /* 0x06c5: i2c_get_byte_done */
0xb60553fd, /* 0x06c7: i2c_put_byte */
0x1bf40142, 0xf000f804,
0x0137f0d8, /* 0x06ca: i2c_put_byte_next */
0x42b60847,
0x3854ff01,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0xd421f550, 0xed21f550,
0x0464b605, 0x0464b605,
/* 0x06ac: i2c_get_byte_done */ 0xb03411f4,
/* 0x06ae: i2c_put_byte */ 0x1bf40046,
0x47f000f8, 0x0076bbd8,
/* 0x06b1: i2c_put_byte_next */
0x0142b608,
0xbb3854ff,
0x65b60076,
0x9450f904,
0x56bb0465,
0xfd50bd02,
0x50fc0475,
0x05d421f5,
0xf40464b6,
0x46b03411,
0xd81bf400,
0xb60076bb,
0x50f90465,
0xbb046594,
0x50bd0256,
0xfc0475fd,
0x1521f550,
0x0464b606,
0xbb0f11f4,
0x36b00076,
0x061bf401,
/* 0x0707: i2c_put_byte_done */
0xf80132f4,
/* 0x0709: i2c_addr */
0x0076bb00,
0xf90465b6, 0xf90465b6,
0x04659450, 0x04659450,
0xbd0256bb, 0xbd0256bb,
0x0475fd50, 0x0475fd50,
0x21f550fc, 0x21f550fc,
0x64b60545, 0x64b6062e,
0x2911f404, 0x0f11f404,
0x012ec3e7, 0xb00076bb,
0xfd0134b6, 0x1bf40136,
0x76bb0553, 0x0132f406,
/* 0x0720: i2c_put_byte_done */
/* 0x0722: i2c_addr */
0x76bb00f8,
0x0465b600, 0x0465b600,
0x659450f9, 0x659450f9,
0x0256bb04, 0x0256bb04,
0x75fd50bd, 0x75fd50bd,
0xf550fc04, 0xf550fc04,
0xb606ae21, 0xb6055e21,
/* 0x074e: i2c_addr_done */ 0x11f40464,
0x00f80464, 0x2ec3e729,
/* 0x0750: i2c_acquire_addr */ 0x0134b601,
0xb6f8cec7, 0xbb0553fd,
0xe0b705e4, 0x65b60076,
0x00f8d014, 0x9450f904,
/* 0x075c: i2c_acquire */ 0x56bb0465,
0x075021f5, 0xfd50bd02,
0x50fc0475,
0x06c721f5,
/* 0x0767: i2c_addr_done */
0xf80464b6,
/* 0x0769: i2c_acquire_addr */
0xf8cec700,
0xb705e4b6,
0xf8d014e0,
/* 0x0775: i2c_acquire */
0x6921f500,
0x0421f407,
0xf403d9f0,
0x00f83321,
/* 0x0784: i2c_release */
0x076921f5,
0xf00421f4, 0xf00421f4,
0x21f403d9, 0x21f403da,
/* 0x076b: i2c_release */ /* 0x0793: i2c_recv */
0xf500f833, 0xf400f833,
0xf4075021, 0xc1c70132,
0xdaf00421, 0x0214b6f8,
0x3321f403, 0xf52816b0,
/* 0x077a: i2c_recv */ 0xa0013a1f,
0x32f400f8, 0x980bd413,
0xf8c1c701, 0x13a00032,
0xb00214b6, 0x31980bac,
0x1ff52816, 0x0231f400,
0x13a0013a, 0xe0f9d0f9,
0x32980bd4, 0x67f1d0f9,
0xac13a000, 0x63f10000,
0x0031980b, 0x67921000,
0xf90231f4, 0x0076bb01,
0xf9e0f9d0, 0xf90465b6,
0x0067f1d0, 0x04659450,
0x0063f100, 0xbd0256bb,
0x01679210, 0x0475fd50,
0xb60076bb, 0x21f550fc,
0x50f90465, 0x64b60775,
0xbb046594, 0xb0d0fc04,
0x50bd0256, 0x1bf500d6,
0xfc0475fd, 0x57f000b3,
0x5c21f550, 0x0076bb00,
0x0464b607, 0xf90465b6,
0xd6b0d0fc, 0x04659450,
0xb31bf500, 0xbd0256bb,
0x0057f000, 0x0475fd50,
0x21f550fc,
0x64b60722,
0xd011f504,
0xe0c5c700,
0xb60076bb, 0xb60076bb,
0x50f90465, 0x50f90465,
0xbb046594, 0xbb046594,
0x50bd0256, 0x50bd0256,
0xfc0475fd, 0xfc0475fd,
0x0921f550, 0xc721f550,
0x0464b607, 0x0464b606,
0x00d011f5, 0x00ad11f5,
0xbbe0c5c7, 0xbb0157f0,
0x65b60076, 0x65b60076,
0x9450f904, 0x9450f904,
0x56bb0465, 0x56bb0465,
0xfd50bd02, 0xfd50bd02,
0x50fc0475, 0x50fc0475,
0x06ae21f5, 0x072221f5,
0xf50464b6, 0xf50464b6,
0xf000ad11, 0xbb008a11,
0x76bb0157, 0x65b60076,
0x0465b600, 0x9450f904,
0x659450f9, 0x56bb0465,
0x0256bb04, 0xfd50bd02,
0x75fd50bd, 0x50fc0475,
0xf550fc04, 0x067521f5,
0xb6070921, 0xf40464b6,
0x11f50464, 0x5bcb6a11,
0x76bb008a, 0x0076bbe0,
0x0465b600, 0xf90465b6,
0x659450f9, 0x04659450,
0x0256bb04, 0xbd0256bb,
0x75fd50bd, 0x0475fd50,
0xf550fc04, 0x21f550fc,
0xb6065c21, 0x64b605ba,
0x11f40464, 0x025bb904,
0xe05bcb6a, 0x0ef474bd,
0xb60076bb, /* 0x0899: i2c_recv_not_rd08 */
0x50f90465, 0x01d6b043,
0xbb046594, 0xf03d1bf4,
0x50bd0256, 0x21f50057,
0xfc0475fd, 0x11f40722,
0xa121f550, 0xe0c5c733,
0x0464b605, 0x06c721f5,
0xbd025bb9, 0xf02911f4,
0x430ef474, 0x21f50057,
/* 0x0880: i2c_recv_not_rd08 */ 0x11f40722,
0xf401d6b0, 0xe0b5c71f,
0x57f03d1b, 0x06c721f5,
0x0921f500, 0xf51511f4,
0x3311f407, 0xbd05ba21,
0xf5e0c5c7, 0x08c5c774,
0xf406ae21, 0xf4091bf4,
0x57f02911, 0x0ef40232,
0x0921f500, /* 0x08d9: i2c_recv_not_wr08 */
0x1f11f407, /* 0x08d9: i2c_recv_done */
0xf5e0b5c7, 0xf8cec703,
0xf406ae21, 0x078421f5,
0x21f51511, 0xd0fce0fc,
0x74bd05a1, 0xb90a12f4,
0xf408c5c7, 0x21f5027c,
0x32f4091b, /* 0x08ee: i2c_recv_exit */
0x030ef402, 0x00f80284,
/* 0x08c0: i2c_recv_not_wr08 */ /* 0x08f0: i2c_init */
/* 0x08c0: i2c_recv_done */ /* 0x08f2: test_recv */
0xf5f8cec7, 0x17f100f8,
0xfc076b21, 0x11cf05d8,
0xf4d0fce0, 0x0110b600,
0x7cb90a12, 0x05d807f1,
0x6b21f502, 0xbd0001d0,
/* 0x08d5: i2c_recv_exit */ 0x00e7f104,
/* 0x08d7: i2c_init */ 0x4fe3f1d9,
0xf800f802, 0xb621f513,
/* 0x08d9: test_recv */ /* 0x0913: test_init */
0xd817f100, 0xf100f801,
0x0011cf05, 0xf50800e7,
0xf10110b6, 0xf801b621,
0xd005d807, /* 0x091d: idle_recv */
0x04bd0001, /* 0x091f: idle */
0xd900e7f1, 0xf400f800,
0x134fe3f1, 0x17f10031,
0x01b621f5, 0x11cf05d4,
/* 0x08fa: test_init */ 0x0110b600,
0xe7f100f8, 0x05d407f1,
0x21f50800, 0xbd0001d0,
0x00f801b6, /* 0x0935: idle_loop */
/* 0x0904: idle_recv */ 0x5817f004,
/* 0x0906: idle */ /* 0x093b: idle_proc */
0x31f400f8, /* 0x093b: idle_proc_exec */
0xd417f100, 0xf90232f4,
0x0011cf05, 0x021eb910,
0xf10110b6, 0x028d21f5,
0xd005d407, 0x11f410fc,
0x04bd0001, 0x0231f409,
/* 0x091c: idle_loop */ /* 0x094f: idle_proc_next */
0xf45817f0, 0xb6ef0ef4,
/* 0x0922: idle_proc */ 0x1fb85810,
/* 0x0922: idle_proc_exec */ 0xe61bf406,
0x10f90232, 0xf4dd02f4,
0xf5021eb9, 0x0ef40028,
0xfc027421, 0x000000c1,
0x0911f410,
0xf40231f4,
/* 0x0936: idle_proc_next */
0x10b6ef0e,
0x061fb858,
0xf4e61bf4,
0x28f4dd02,
0xc10ef400,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
0x00000000, 0x00000000,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment