drm/nouveau/pwr: implement a simple i2c stack
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Родитель
2e9dfe234a
Коммит
64c672ae1d
|
@ -0,0 +1,393 @@
|
|||
/*
|
||||
* Copyright 2013 Red Hat Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
* and/or sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Authors: Ben Skeggs
|
||||
*/
|
||||
|
||||
#define T_TIMEOUT 2200000
|
||||
#define T_RISEFALL 1000
|
||||
#define T_HOLD 5000
|
||||
|
||||
#ifdef INCLUDE_PROC
|
||||
process(PROC_I2C_, #i2c_init, #i2c_recv)
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* I2C_ data segment
|
||||
*****************************************************************************/
|
||||
#ifdef INCLUDE_DATA
|
||||
i2c_scl_map:
|
||||
.b32 NV_PPWR_OUTPUT_I2C_0_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_1_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_2_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_3_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_4_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_5_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_6_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_7_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_8_SCL
|
||||
.b32 NV_PPWR_OUTPUT_I2C_9_SCL
|
||||
i2c_sda_map:
|
||||
.b32 NV_PPWR_OUTPUT_I2C_0_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_1_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_2_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_3_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_4_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_5_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_6_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_7_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_8_SDA
|
||||
.b32 NV_PPWR_OUTPUT_I2C_9_SDA
|
||||
#if NVKM_PPWR_CHIPSET < GF119
|
||||
i2c_ctrl:
|
||||
.b32 0x00e138
|
||||
.b32 0x00e150
|
||||
.b32 0x00e168
|
||||
.b32 0x00e180
|
||||
.b32 0x00e254
|
||||
.b32 0x00e274
|
||||
.b32 0x00e764
|
||||
.b32 0x00e780
|
||||
.b32 0x00e79c
|
||||
.b32 0x00e7b8
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* I2C_ code segment
|
||||
*****************************************************************************/
|
||||
#ifdef INCLUDE_CODE
|
||||
|
||||
// $r3 - value
|
||||
// $r2 - sda line
|
||||
// $r1 - scl line
|
||||
// $r0 - zero
|
||||
i2c_drive_scl:
|
||||
cmp b32 $r3 0
|
||||
bra e #i2c_drive_scl_lo
|
||||
nv_iowr(NV_PPWR_OUTPUT_SET, $r1)
|
||||
ret
|
||||
i2c_drive_scl_lo:
|
||||
nv_iowr(NV_PPWR_OUTPUT_CLR, $r1)
|
||||
ret
|
||||
|
||||
i2c_drive_sda:
|
||||
cmp b32 $r3 0
|
||||
bra e #i2c_drive_sda_lo
|
||||
nv_iowr(NV_PPWR_OUTPUT_SET, $r2)
|
||||
ret
|
||||
i2c_drive_sda_lo:
|
||||
nv_iowr(NV_PPWR_OUTPUT_CLR, $r2)
|
||||
ret
|
||||
|
||||
i2c_sense_scl:
|
||||
bclr $flags $p1
|
||||
nv_iord($r3, NV_PPWR_INPUT)
|
||||
and $r3 $r1
|
||||
bra z #i2c_sense_scl_done
|
||||
bset $flags $p1
|
||||
i2c_sense_scl_done:
|
||||
ret
|
||||
|
||||
i2c_sense_sda:
|
||||
bclr $flags $p1
|
||||
nv_iord($r3, NV_PPWR_INPUT)
|
||||
and $r3 $r2
|
||||
bra z #i2c_sense_sda_done
|
||||
bset $flags $p1
|
||||
i2c_sense_sda_done:
|
||||
ret
|
||||
|
||||
#define i2c_drive_scl(v) /*
|
||||
*/ mov $r3 (v) /*
|
||||
*/ call(i2c_drive_scl)
|
||||
#define i2c_drive_sda(v) /*
|
||||
*/ mov $r3 (v) /*
|
||||
*/ call(i2c_drive_sda)
|
||||
#define i2c_sense_scl() /*
|
||||
*/ call(i2c_sense_scl)
|
||||
#define i2c_sense_sda() /*
|
||||
*/ call(i2c_sense_sda)
|
||||
#define i2c_delay(v) /*
|
||||
*/ mov $r14 (v) /*
|
||||
*/ call(nsec)
|
||||
|
||||
#define i2c_trace_init() /*
|
||||
*/ imm32($r6, 0x10000000) /*
|
||||
*/ sub b32 $r7 $r6 1 /*
|
||||
*/
|
||||
#define i2c_trace_down() /*
|
||||
*/ shr b32 $r6 4 /*
|
||||
*/ push $r5 /*
|
||||
*/ shl b32 $r5 $r6 4 /*
|
||||
*/ sub b32 $r5 $r6 /*
|
||||
*/ not b32 $r5 /*
|
||||
*/ and $r7 $r5 /*
|
||||
*/ pop $r5 /*
|
||||
*/
|
||||
#define i2c_trace_exit() /*
|
||||
*/ shl b32 $r6 4 /*
|
||||
*/
|
||||
#define i2c_trace_next() /*
|
||||
*/ add b32 $r7 $r6 /*
|
||||
*/
|
||||
#define i2c_trace_call(func) /*
|
||||
*/ i2c_trace_next() /*
|
||||
*/ i2c_trace_down() /*
|
||||
*/ call(func) /*
|
||||
*/ i2c_trace_exit() /*
|
||||
*/
|
||||
|
||||
i2c_raise_scl:
|
||||
push $r4
|
||||
mov $r4 (T_TIMEOUT / T_RISEFALL)
|
||||
i2c_drive_scl(1)
|
||||
i2c_raise_scl_wait:
|
||||
i2c_delay(T_RISEFALL)
|
||||
i2c_sense_scl()
|
||||
bra $p1 #i2c_raise_scl_done
|
||||
sub b32 $r4 1
|
||||
bra nz #i2c_raise_scl_wait
|
||||
i2c_raise_scl_done:
|
||||
pop $r4
|
||||
ret
|
||||
|
||||
i2c_start:
|
||||
i2c_sense_scl()
|
||||
bra not $p1 #i2c_start_rep
|
||||
i2c_sense_sda()
|
||||
bra not $p1 #i2c_start_rep
|
||||
bra #i2c_start_send
|
||||
i2c_start_rep:
|
||||
i2c_drive_scl(0)
|
||||
i2c_drive_sda(1)
|
||||
i2c_trace_call(i2c_raise_scl)
|
||||
bra not $p1 #i2c_start_out
|
||||
i2c_start_send:
|
||||
i2c_drive_sda(0)
|
||||
i2c_delay(T_HOLD)
|
||||
i2c_drive_scl(0)
|
||||
i2c_delay(T_HOLD)
|
||||
i2c_start_out:
|
||||
ret
|
||||
|
||||
i2c_stop:
|
||||
i2c_drive_scl(0)
|
||||
i2c_drive_sda(0)
|
||||
i2c_delay(T_RISEFALL)
|
||||
i2c_drive_scl(1)
|
||||
i2c_delay(T_HOLD)
|
||||
i2c_drive_sda(1)
|
||||
i2c_delay(T_HOLD)
|
||||
ret
|
||||
|
||||
// $r3 - value
|
||||
// $r2 - sda line
|
||||
// $r1 - scl line
|
||||
// $r0 - zero
|
||||
i2c_bitw:
|
||||
call(i2c_drive_sda)
|
||||
i2c_delay(T_RISEFALL)
|
||||
i2c_trace_call(i2c_raise_scl)
|
||||
bra not $p1 #i2c_bitw_out
|
||||
i2c_delay(T_HOLD)
|
||||
i2c_drive_scl(0)
|
||||
i2c_delay(T_HOLD)
|
||||
i2c_bitw_out:
|
||||
ret
|
||||
|
||||
// $r3 - value (out)
|
||||
// $r2 - sda line
|
||||
// $r1 - scl line
|
||||
// $r0 - zero
|
||||
i2c_bitr:
|
||||
i2c_drive_sda(1)
|
||||
i2c_delay(T_RISEFALL)
|
||||
i2c_trace_call(i2c_raise_scl)
|
||||
bra not $p1 #i2c_bitr_done
|
||||
i2c_sense_sda()
|
||||
i2c_drive_scl(0)
|
||||
i2c_delay(T_HOLD)
|
||||
xbit $r3 $flags $p1
|
||||
bset $flags $p1
|
||||
i2c_bitr_done:
|
||||
ret
|
||||
|
||||
i2c_get_byte:
|
||||
mov $r5 0
|
||||
mov $r4 8
|
||||
i2c_get_byte_next:
|
||||
shl b32 $r5 1
|
||||
i2c_trace_call(i2c_bitr)
|
||||
bra not $p1 #i2c_get_byte_done
|
||||
or $r5 $r3
|
||||
sub b32 $r4 1
|
||||
bra nz #i2c_get_byte_next
|
||||
mov $r3 1
|
||||
i2c_trace_call(i2c_bitw)
|
||||
i2c_get_byte_done:
|
||||
ret
|
||||
|
||||
i2c_put_byte:
|
||||
mov $r4 8
|
||||
i2c_put_byte_next:
|
||||
sub b32 $r4 1
|
||||
xbit $r3 $r5 $r4
|
||||
i2c_trace_call(i2c_bitw)
|
||||
bra not $p1 #i2c_put_byte_done
|
||||
cmp b32 $r4 0
|
||||
bra ne #i2c_put_byte_next
|
||||
i2c_trace_call(i2c_bitr)
|
||||
bra not $p1 #i2c_put_byte_done
|
||||
i2c_trace_next()
|
||||
cmp b32 $r3 1
|
||||
bra ne #i2c_put_byte_done
|
||||
bclr $flags $p1 // nack
|
||||
i2c_put_byte_done:
|
||||
ret
|
||||
|
||||
i2c_addr:
|
||||
i2c_trace_call(i2c_start)
|
||||
bra not $p1 #i2c_addr_done
|
||||
extr $r3 $r12 I2C__MSG_DATA0_ADDR
|
||||
shl b32 $r3 1
|
||||
or $r5 $r3
|
||||
i2c_trace_call(i2c_put_byte)
|
||||
i2c_addr_done:
|
||||
ret
|
||||
|
||||
i2c_acquire_addr:
|
||||
extr $r14 $r12 I2C__MSG_DATA0_PORT
|
||||
#if NVKM_PPWR_CHIPSET < GF119
|
||||
shl b32 $r14 2
|
||||
add b32 $r14 #i2c_ctrl
|
||||
ld b32 $r14 D[$r14]
|
||||
#else
|
||||
shl b32 $r14 5
|
||||
add b32 $r14 0x00d014
|
||||
#endif
|
||||
ret
|
||||
|
||||
i2c_acquire:
|
||||
call(i2c_acquire_addr)
|
||||
call(rd32)
|
||||
bset $r13 3
|
||||
call(wr32)
|
||||
ret
|
||||
|
||||
i2c_release:
|
||||
call(i2c_acquire_addr)
|
||||
call(rd32)
|
||||
bclr $r13 3
|
||||
call(wr32)
|
||||
ret
|
||||
|
||||
// description
|
||||
//
|
||||
// $r15 - current (i2c)
|
||||
// $r14 - sender process name
|
||||
// $r13 - message
|
||||
// $r12 - data0
|
||||
// $r11 - data1
|
||||
// $r0 - zero
|
||||
i2c_recv:
|
||||
bclr $flags $p1
|
||||
extr $r1 $r12 I2C__MSG_DATA0_PORT
|
||||
shl b32 $r1 2
|
||||
cmp b32 $r1 (#i2c_sda_map - #i2c_scl_map)
|
||||
bra ge #i2c_recv_done
|
||||
add b32 $r3 $r1 #i2c_sda_map
|
||||
ld b32 $r2 D[$r3]
|
||||
add b32 $r3 $r1 #i2c_scl_map
|
||||
ld b32 $r1 D[$r3]
|
||||
|
||||
bset $flags $p2
|
||||
push $r13
|
||||
push $r14
|
||||
|
||||
push $r13
|
||||
i2c_trace_init()
|
||||
i2c_trace_call(i2c_acquire)
|
||||
pop $r13
|
||||
|
||||
cmp b32 $r13 I2C__MSG_RD08
|
||||
bra ne #i2c_recv_not_rd08
|
||||
mov $r5 0
|
||||
i2c_trace_call(i2c_addr)
|
||||
bra not $p1 #i2c_recv_done
|
||||
extr $r5 $r12 I2C__MSG_DATA0_RD08_REG
|
||||
i2c_trace_call(i2c_put_byte)
|
||||
bra not $p1 #i2c_recv_done
|
||||
mov $r5 1
|
||||
i2c_trace_call(i2c_addr)
|
||||
bra not $p1 #i2c_recv_done
|
||||
i2c_trace_call(i2c_get_byte)
|
||||
bra not $p1 #i2c_recv_done
|
||||
ins $r11 $r5 I2C__MSG_DATA1_RD08_VAL
|
||||
i2c_trace_call(i2c_stop)
|
||||
mov b32 $r11 $r5
|
||||
clear b32 $r7
|
||||
bra #i2c_recv_done
|
||||
|
||||
i2c_recv_not_rd08:
|
||||
cmp b32 $r13 I2C__MSG_WR08
|
||||
bra ne #i2c_recv_not_wr08
|
||||
mov $r5 0
|
||||
call(i2c_addr)
|
||||
bra not $p1 #i2c_recv_done
|
||||
extr $r5 $r12 I2C__MSG_DATA0_WR08_REG
|
||||
call(i2c_put_byte)
|
||||
bra not $p1 #i2c_recv_done
|
||||
mov $r5 0
|
||||
call(i2c_addr)
|
||||
bra not $p1 #i2c_recv_done
|
||||
extr $r5 $r11 I2C__MSG_DATA1_WR08_VAL
|
||||
call(i2c_put_byte)
|
||||
bra not $p1 #i2c_recv_done
|
||||
call(i2c_stop)
|
||||
clear b32 $r7
|
||||
extr $r5 $r12 I2C__MSG_DATA0_WR08_SYNC
|
||||
bra nz #i2c_recv_done
|
||||
bclr $flags $p2
|
||||
bra #i2c_recv_done
|
||||
|
||||
i2c_recv_not_wr08:
|
||||
|
||||
i2c_recv_done:
|
||||
extr $r14 $r12 I2C__MSG_DATA0_PORT
|
||||
call(i2c_release)
|
||||
|
||||
pop $r14
|
||||
pop $r13
|
||||
bra not $p2 #i2c_recv_exit
|
||||
mov b32 $r12 $r7
|
||||
call(send)
|
||||
|
||||
i2c_recv_exit:
|
||||
ret
|
||||
|
||||
// description
|
||||
//
|
||||
// $r15 - current (i2c)
|
||||
// $r0 - zero
|
||||
i2c_init:
|
||||
ret
|
||||
#endif
|
|
@ -83,6 +83,50 @@
|
|||
#define NV_PPWR_MMIO_CTRL_OP_WR 0x00000002
|
||||
#define NV_PPWR_OUTPUT 0x07c0
|
||||
#define NV_PPWR_OUTPUT_FB_PAUSE 0x00000004
|
||||
#if NVKM_PPWR_CHIPSET < GF119
|
||||
#define NV_PPWR_OUTPUT_I2C_3_SCL 0x00000100
|
||||
#define NV_PPWR_OUTPUT_I2C_3_SDA 0x00000200
|
||||
#define NV_PPWR_OUTPUT_I2C_0_SCL 0x00001000
|
||||
#define NV_PPWR_OUTPUT_I2C_0_SDA 0x00002000
|
||||
#define NV_PPWR_OUTPUT_I2C_1_SCL 0x00004000
|
||||
#define NV_PPWR_OUTPUT_I2C_1_SDA 0x00008000
|
||||
#define NV_PPWR_OUTPUT_I2C_2_SCL 0x00010000
|
||||
#define NV_PPWR_OUTPUT_I2C_2_SDA 0x00020000
|
||||
#define NV_PPWR_OUTPUT_I2C_4_SCL 0x00040000
|
||||
#define NV_PPWR_OUTPUT_I2C_4_SDA 0x00080000
|
||||
#define NV_PPWR_OUTPUT_I2C_5_SCL 0x00100000
|
||||
#define NV_PPWR_OUTPUT_I2C_5_SDA 0x00200000
|
||||
#define NV_PPWR_OUTPUT_I2C_6_SCL 0x00400000
|
||||
#define NV_PPWR_OUTPUT_I2C_6_SDA 0x00800000
|
||||
#define NV_PPWR_OUTPUT_I2C_7_SCL 0x01000000
|
||||
#define NV_PPWR_OUTPUT_I2C_7_SDA 0x02000000
|
||||
#define NV_PPWR_OUTPUT_I2C_8_SCL 0x04000000
|
||||
#define NV_PPWR_OUTPUT_I2C_8_SDA 0x08000000
|
||||
#define NV_PPWR_OUTPUT_I2C_9_SCL 0x10000000
|
||||
#define NV_PPWR_OUTPUT_I2C_9_SDA 0x20000000
|
||||
#else
|
||||
#define NV_PPWR_OUTPUT_I2C_0_SCL 0x00000400
|
||||
#define NV_PPWR_OUTPUT_I2C_1_SCL 0x00000800
|
||||
#define NV_PPWR_OUTPUT_I2C_2_SCL 0x00001000
|
||||
#define NV_PPWR_OUTPUT_I2C_3_SCL 0x00002000
|
||||
#define NV_PPWR_OUTPUT_I2C_4_SCL 0x00004000
|
||||
#define NV_PPWR_OUTPUT_I2C_5_SCL 0x00008000
|
||||
#define NV_PPWR_OUTPUT_I2C_6_SCL 0x00010000
|
||||
#define NV_PPWR_OUTPUT_I2C_7_SCL 0x00020000
|
||||
#define NV_PPWR_OUTPUT_I2C_8_SCL 0x00040000
|
||||
#define NV_PPWR_OUTPUT_I2C_9_SCL 0x00080000
|
||||
#define NV_PPWR_OUTPUT_I2C_0_SDA 0x00100000
|
||||
#define NV_PPWR_OUTPUT_I2C_1_SDA 0x00200000
|
||||
#define NV_PPWR_OUTPUT_I2C_2_SDA 0x00400000
|
||||
#define NV_PPWR_OUTPUT_I2C_3_SDA 0x00800000
|
||||
#define NV_PPWR_OUTPUT_I2C_4_SDA 0x01000000
|
||||
#define NV_PPWR_OUTPUT_I2C_5_SDA 0x02000000
|
||||
#define NV_PPWR_OUTPUT_I2C_6_SDA 0x04000000
|
||||
#define NV_PPWR_OUTPUT_I2C_7_SDA 0x08000000
|
||||
#define NV_PPWR_OUTPUT_I2C_8_SDA 0x10000000
|
||||
#define NV_PPWR_OUTPUT_I2C_9_SDA 0x20000000
|
||||
#endif
|
||||
#define NV_PPWR_INPUT 0x07c4
|
||||
#define NV_PPWR_OUTPUT_SET 0x07e0
|
||||
#define NV_PPWR_OUTPUT_SET_FB_PAUSE 0x00000004
|
||||
#define NV_PPWR_OUTPUT_CLR 0x07e4
|
||||
|
@ -125,6 +169,15 @@
|
|||
*/ .b32 0 /*
|
||||
*/ .skip 64
|
||||
|
||||
#if NV_PPWR_CHIPSET < GK208
|
||||
#define imm32(reg,val) /*
|
||||
*/ movw reg ((val) & 0x0000ffff) /*
|
||||
*/ sethi reg ((val) & 0xffff0000)
|
||||
#else
|
||||
#define imm32(reg,val) /*
|
||||
*/ mov reg (val)
|
||||
#endif
|
||||
|
||||
#ifndef NVKM_FALCON_UNSHIFTED_IO
|
||||
#define nv_iord(reg,ior) /*
|
||||
*/ mov reg ior /*
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_PROC
|
||||
|
@ -46,6 +47,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_DATA
|
||||
|
@ -57,6 +59,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_CODE
|
||||
|
|
|
@ -89,9 +89,31 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x5f433249,
|
||||
0x00000877,
|
||||
0x0000071e,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x54534554,
|
||||
0x00000494,
|
||||
0x00000475,
|
||||
0x00000898,
|
||||
0x00000879,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -112,8 +134,8 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x454c4449,
|
||||
0x0000049f,
|
||||
0x0000049d,
|
||||
0x000008a3,
|
||||
0x000008a1,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -133,12 +155,12 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0210: proc_list_tail */
|
||||
/* 0x0210: time_prev */
|
||||
/* 0x0268: proc_list_tail */
|
||||
/* 0x0268: time_prev */
|
||||
0x00000000,
|
||||
/* 0x0214: time_next */
|
||||
/* 0x026c: time_next */
|
||||
0x00000000,
|
||||
/* 0x0218: fifo_queue */
|
||||
/* 0x0270: fifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -171,7 +193,7 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0298: rfifo_queue */
|
||||
/* 0x02f0: rfifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -204,11 +226,11 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0318: memx_func_head */
|
||||
/* 0x0370: memx_func_head */
|
||||
0x00010000,
|
||||
0x00000000,
|
||||
0x000003a9,
|
||||
/* 0x0324: memx_func_next */
|
||||
/* 0x037c: memx_func_next */
|
||||
0x00000001,
|
||||
0x00000000,
|
||||
0x000003c7,
|
||||
|
@ -221,8 +243,8 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00010004,
|
||||
0x00000000,
|
||||
0x00000421,
|
||||
/* 0x0354: memx_func_tail */
|
||||
/* 0x0354: memx_data_head */
|
||||
/* 0x03ac: memx_func_tail */
|
||||
/* 0x03ac: memx_data_head */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -735,49 +757,29 @@ uint32_t nv108_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0b54: memx_data_tail */
|
||||
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,
|
||||
/* 0x0bac: memx_data_tail */
|
||||
/* 0x0bac: i2c_scl_map */
|
||||
0x00000400,
|
||||
0x00000800,
|
||||
0x00001000,
|
||||
0x00002000,
|
||||
0x00004000,
|
||||
0x00008000,
|
||||
0x00010000,
|
||||
0x00020000,
|
||||
0x00040000,
|
||||
0x00080000,
|
||||
/* 0x0bd4: i2c_sda_map */
|
||||
0x00100000,
|
||||
0x00200000,
|
||||
0x00400000,
|
||||
0x00800000,
|
||||
0x01000000,
|
||||
0x02000000,
|
||||
0x04000000,
|
||||
0x08000000,
|
||||
0x10000000,
|
||||
0x20000000,
|
||||
0x00000000,
|
||||
};
|
||||
|
||||
|
@ -832,20 +834,20 @@ uint32_t nv108_pwr_code[] = {
|
|||
0x03e99800,
|
||||
0xf40096b0,
|
||||
0x0a98280b,
|
||||
0x029abb84,
|
||||
0x029abb9a,
|
||||
0x0d0e1cf4,
|
||||
0x01de7e01,
|
||||
0xf494bd00,
|
||||
/* 0x00b2: intr_watchdog_next_time */
|
||||
0x0a98140e,
|
||||
0x00a6b085,
|
||||
0x00a6b09b,
|
||||
0xa6080bf4,
|
||||
0x061cf49a,
|
||||
/* 0x00c0: intr_watchdog_next_time_set */
|
||||
/* 0x00c3: intr_watchdog_next_proc */
|
||||
0xb58509b5,
|
||||
0xb59b09b5,
|
||||
0xe0b603e9,
|
||||
0x10e6b158,
|
||||
0x68e6b158,
|
||||
0xc81bf402,
|
||||
/* 0x00d2: intr */
|
||||
0x00f900f8,
|
||||
|
@ -862,15 +864,15 @@ uint32_t nv108_pwr_code[] = {
|
|||
0x080804bd,
|
||||
0xc40088cf,
|
||||
0x0bf40289,
|
||||
0x8500b51f,
|
||||
0x9b00b51f,
|
||||
0x957e580e,
|
||||
0x09980000,
|
||||
0x0096b085,
|
||||
0x0096b09b,
|
||||
0x000d0bf4,
|
||||
0x0009f634,
|
||||
0x09b504bd,
|
||||
/* 0x0125: intr_skip_watchdog */
|
||||
0x0089e484,
|
||||
0x0089e49a,
|
||||
0x360bf408,
|
||||
0xcf068849,
|
||||
0x9ac40099,
|
||||
|
@ -918,7 +920,7 @@ uint32_t nv108_pwr_code[] = {
|
|||
/* 0x01c6: timer_reset */
|
||||
0x3400161e,
|
||||
0xbd000ef6,
|
||||
0x840eb504,
|
||||
0x9a0eb504,
|
||||
/* 0x01d0: timer_enable */
|
||||
0x38000108,
|
||||
0xbd0008f6,
|
||||
|
@ -949,7 +951,7 @@ uint32_t nv108_pwr_code[] = {
|
|||
0xa6008a98,
|
||||
0x100bf4ae,
|
||||
0xb15880b6,
|
||||
0xf4021086,
|
||||
0xf4026886,
|
||||
0x32f4f11b,
|
||||
/* 0x0239: find_done */
|
||||
0xfc8eb201,
|
||||
|
@ -1009,7 +1011,7 @@ uint32_t nv108_pwr_code[] = {
|
|||
0x0bf412a6,
|
||||
0x071ec42e,
|
||||
0xb704ee94,
|
||||
0x980218e0,
|
||||
0x980270e0,
|
||||
0xec9803eb,
|
||||
0x01ed9802,
|
||||
0x7e00ee98,
|
||||
|
@ -1031,7 +1033,7 @@ uint32_t nv108_pwr_code[] = {
|
|||
0xf412a608,
|
||||
0x23c4ef0b,
|
||||
0x0434b607,
|
||||
0x029830b7,
|
||||
0x02f030b7,
|
||||
0xb5033bb5,
|
||||
0x3db5023c,
|
||||
0x003eb501,
|
||||
|
@ -1044,11 +1046,11 @@ uint32_t nv108_pwr_code[] = {
|
|||
/* 0x0379: host_init */
|
||||
0x00804100,
|
||||
0xf11014b6,
|
||||
0x40021815,
|
||||
0x40027015,
|
||||
0x01f604d0,
|
||||
0x4104bd00,
|
||||
0x14b60080,
|
||||
0x9815f110,
|
||||
0xf015f110,
|
||||
0x04dc4002,
|
||||
0xbd0001f6,
|
||||
0x40010104,
|
||||
|
@ -1101,13 +1103,13 @@ uint32_t nv108_pwr_code[] = {
|
|||
0x001398b2,
|
||||
0x950410b6,
|
||||
0x30f01034,
|
||||
0xc835980c,
|
||||
0xde35980c,
|
||||
0x12a655f9,
|
||||
0xfced1ef4,
|
||||
0x7ee0fcd0,
|
||||
0xf800023f,
|
||||
/* 0x0455: memx_info */
|
||||
0x03544c00,
|
||||
0x03ac4c00,
|
||||
0x7e08004b,
|
||||
0xf800023f,
|
||||
/* 0x0461: memx_recv */
|
||||
|
@ -1119,7 +1121,301 @@ uint32_t nv108_pwr_code[] = {
|
|||
/* 0x0471: perf_recv */
|
||||
/* 0x0473: perf_init */
|
||||
0xf800f800,
|
||||
/* 0x0475: test_recv */
|
||||
/* 0x0475: i2c_drive_scl */
|
||||
0x0036b000,
|
||||
0x400d0bf4,
|
||||
0x01f607e0,
|
||||
0xf804bd00,
|
||||
/* 0x0485: i2c_drive_scl_lo */
|
||||
0x07e44000,
|
||||
0xbd0001f6,
|
||||
/* 0x048f: i2c_drive_sda */
|
||||
0xb000f804,
|
||||
0x0bf40036,
|
||||
0x07e0400d,
|
||||
0xbd0002f6,
|
||||
/* 0x049f: i2c_drive_sda_lo */
|
||||
0x4000f804,
|
||||
0x02f607e4,
|
||||
0xf804bd00,
|
||||
/* 0x04a9: i2c_sense_scl */
|
||||
0x0132f400,
|
||||
0xcf07c443,
|
||||
0x31fd0033,
|
||||
0x060bf404,
|
||||
/* 0x04bb: i2c_sense_scl_done */
|
||||
0xf80131f4,
|
||||
/* 0x04bd: i2c_sense_sda */
|
||||
0x0132f400,
|
||||
0xcf07c443,
|
||||
0x32fd0033,
|
||||
0x060bf404,
|
||||
/* 0x04cf: i2c_sense_sda_done */
|
||||
0xf80131f4,
|
||||
/* 0x04d1: i2c_raise_scl */
|
||||
0x4440f900,
|
||||
0x01030898,
|
||||
0x0004757e,
|
||||
/* 0x04dc: i2c_raise_scl_wait */
|
||||
0x7e03e84e,
|
||||
0x7e00005d,
|
||||
0xf40004a9,
|
||||
0x42b60901,
|
||||
0xef1bf401,
|
||||
/* 0x04f0: i2c_raise_scl_done */
|
||||
0x00f840fc,
|
||||
/* 0x04f4: i2c_start */
|
||||
0x0004a97e,
|
||||
0x7e0d11f4,
|
||||
0xf40004bd,
|
||||
0x0ef40611,
|
||||
/* 0x0505: i2c_start_rep */
|
||||
0x7e00032e,
|
||||
0x03000475,
|
||||
0x048f7e01,
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0xd17e50fc,
|
||||
0x64b60004,
|
||||
0x1d11f404,
|
||||
/* 0x0530: i2c_start_send */
|
||||
0x8f7e0003,
|
||||
0x884e0004,
|
||||
0x005d7e13,
|
||||
0x7e000300,
|
||||
0x4e000475,
|
||||
0x5d7e1388,
|
||||
/* 0x054a: i2c_start_out */
|
||||
0x00f80000,
|
||||
/* 0x054c: i2c_stop */
|
||||
0x757e0003,
|
||||
0x00030004,
|
||||
0x00048f7e,
|
||||
0x7e03e84e,
|
||||
0x0300005d,
|
||||
0x04757e01,
|
||||
0x13884e00,
|
||||
0x00005d7e,
|
||||
0x8f7e0103,
|
||||
0x884e0004,
|
||||
0x005d7e13,
|
||||
/* 0x057b: i2c_bitw */
|
||||
0x7e00f800,
|
||||
0x4e00048f,
|
||||
0x5d7e03e8,
|
||||
0x76bb0000,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0x7e50fc04,
|
||||
0xb60004d1,
|
||||
0x11f40464,
|
||||
0x13884e17,
|
||||
0x00005d7e,
|
||||
0x757e0003,
|
||||
0x884e0004,
|
||||
0x005d7e13,
|
||||
/* 0x05b9: i2c_bitw_out */
|
||||
/* 0x05bb: i2c_bitr */
|
||||
0x0300f800,
|
||||
0x048f7e01,
|
||||
0x03e84e00,
|
||||
0x00005d7e,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x04d17e50,
|
||||
0x0464b600,
|
||||
0x7e1a11f4,
|
||||
0x030004bd,
|
||||
0x04757e00,
|
||||
0x13884e00,
|
||||
0x00005d7e,
|
||||
0xf4013cf0,
|
||||
/* 0x05fe: i2c_bitr_done */
|
||||
0x00f80131,
|
||||
/* 0x0600: i2c_get_byte */
|
||||
0x08040005,
|
||||
/* 0x0604: i2c_get_byte_next */
|
||||
0xbb0154b6,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x0005bb7e,
|
||||
0xf40464b6,
|
||||
0x53fd2a11,
|
||||
0x0142b605,
|
||||
0x03d81bf4,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x7b7e50fc,
|
||||
0x64b60005,
|
||||
/* 0x064d: i2c_get_byte_done */
|
||||
/* 0x064f: i2c_put_byte */
|
||||
0x0400f804,
|
||||
/* 0x0651: i2c_put_byte_next */
|
||||
0x0142b608,
|
||||
0xbb3854ff,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x00057b7e,
|
||||
0xf40464b6,
|
||||
0x46b03411,
|
||||
0xd81bf400,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x05bb7e50,
|
||||
0x0464b600,
|
||||
0xbb0f11f4,
|
||||
0x36b00076,
|
||||
0x061bf401,
|
||||
/* 0x06a7: i2c_put_byte_done */
|
||||
0xf80132f4,
|
||||
/* 0x06a9: i2c_addr */
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0xf47e50fc,
|
||||
0x64b60004,
|
||||
0x2911f404,
|
||||
0x012ec3e7,
|
||||
0xfd0134b6,
|
||||
0x76bb0553,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0x7e50fc04,
|
||||
0xb600064f,
|
||||
/* 0x06ee: i2c_addr_done */
|
||||
0x00f80464,
|
||||
/* 0x06f0: i2c_acquire_addr */
|
||||
0xb6f8cec7,
|
||||
0xe0b705e4,
|
||||
0x00f8d014,
|
||||
/* 0x06fc: i2c_acquire */
|
||||
0x0006f07e,
|
||||
0x0000047e,
|
||||
0x7e03d9f0,
|
||||
0xf800002e,
|
||||
/* 0x070d: i2c_release */
|
||||
0x06f07e00,
|
||||
0x00047e00,
|
||||
0x03daf000,
|
||||
0x00002e7e,
|
||||
/* 0x071e: i2c_recv */
|
||||
0x32f400f8,
|
||||
0xf8c1c701,
|
||||
0xb00214b6,
|
||||
0x1ff52816,
|
||||
0x13b80137,
|
||||
0x98000bd4,
|
||||
0x13b80032,
|
||||
0x98000bac,
|
||||
0x31f40031,
|
||||
0xf9d0f902,
|
||||
0xf1d0f9e0,
|
||||
0xf1000067,
|
||||
0x92100063,
|
||||
0x76bb0167,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0x7e50fc04,
|
||||
0xb60006fc,
|
||||
0xd0fc0464,
|
||||
0xf500d6b0,
|
||||
0x0500b01b,
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0xa97e50fc,
|
||||
0x64b60006,
|
||||
0xcc11f504,
|
||||
0xe0c5c700,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x064f7e50,
|
||||
0x0464b600,
|
||||
0x00a911f5,
|
||||
0x76bb0105,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0x7e50fc04,
|
||||
0xb60006a9,
|
||||
0x11f50464,
|
||||
0x76bb0087,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0x7e50fc04,
|
||||
0xb6000600,
|
||||
0x11f40464,
|
||||
0xe05bcb67,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x054c7e50,
|
||||
0x0464b600,
|
||||
0x74bd5bb2,
|
||||
/* 0x0823: i2c_recv_not_rd08 */
|
||||
0xb0410ef4,
|
||||
0x1bf401d6,
|
||||
0x7e00053b,
|
||||
0xf40006a9,
|
||||
0xc5c73211,
|
||||
0x064f7ee0,
|
||||
0x2811f400,
|
||||
0xa97e0005,
|
||||
0x11f40006,
|
||||
0xe0b5c71f,
|
||||
0x00064f7e,
|
||||
0x7e1511f4,
|
||||
0xbd00054c,
|
||||
0x08c5c774,
|
||||
0xf4091bf4,
|
||||
0x0ef40232,
|
||||
/* 0x0861: i2c_recv_not_wr08 */
|
||||
/* 0x0861: i2c_recv_done */
|
||||
0xf8cec703,
|
||||
0x00070d7e,
|
||||
0xd0fce0fc,
|
||||
0xb20912f4,
|
||||
0x023f7e7c,
|
||||
/* 0x0875: i2c_recv_exit */
|
||||
/* 0x0877: i2c_init */
|
||||
0xf800f800,
|
||||
/* 0x0879: test_recv */
|
||||
0x04584100,
|
||||
0xb60011cf,
|
||||
0x58400110,
|
||||
|
@ -1128,26 +1424,26 @@ uint32_t nv108_pwr_code[] = {
|
|||
0xe3f1d900,
|
||||
0x967e134f,
|
||||
0x00f80001,
|
||||
/* 0x0494: test_init */
|
||||
/* 0x0898: test_init */
|
||||
0x7e08004e,
|
||||
0xf8000196,
|
||||
/* 0x049d: idle_recv */
|
||||
/* 0x049f: idle */
|
||||
/* 0x08a1: idle_recv */
|
||||
/* 0x08a3: idle */
|
||||
0xf400f800,
|
||||
0x54410031,
|
||||
0x0011cf04,
|
||||
0x400110b6,
|
||||
0x01f60454,
|
||||
/* 0x04b3: idle_loop */
|
||||
/* 0x08b7: idle_loop */
|
||||
0x0104bd00,
|
||||
0x0232f458,
|
||||
/* 0x04b8: idle_proc */
|
||||
/* 0x04b8: idle_proc_exec */
|
||||
/* 0x08bc: idle_proc */
|
||||
/* 0x08bc: idle_proc_exec */
|
||||
0x1eb210f9,
|
||||
0x0002487e,
|
||||
0x11f410fc,
|
||||
0x0231f409,
|
||||
/* 0x04cb: idle_proc_next */
|
||||
/* 0x08cf: idle_proc_next */
|
||||
0xb6f00ef4,
|
||||
0x1fa65810,
|
||||
0xf4e81bf4,
|
||||
|
@ -1161,5 +1457,4 @@ uint32_t nv108_pwr_code[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
};
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_PROC
|
||||
|
@ -46,6 +47,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_DATA
|
||||
|
@ -57,6 +59,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_CODE
|
||||
|
|
|
@ -89,9 +89,31 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x5f433249,
|
||||
0x00000982,
|
||||
0x00000825,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x54534554,
|
||||
0x0000057b,
|
||||
0x00000554,
|
||||
0x000009ab,
|
||||
0x00000984,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -112,8 +134,8 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x454c4449,
|
||||
0x00000587,
|
||||
0x00000585,
|
||||
0x000009b7,
|
||||
0x000009b5,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -133,12 +155,12 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0210: proc_list_tail */
|
||||
/* 0x0210: time_prev */
|
||||
/* 0x0268: proc_list_tail */
|
||||
/* 0x0268: time_prev */
|
||||
0x00000000,
|
||||
/* 0x0214: time_next */
|
||||
/* 0x026c: time_next */
|
||||
0x00000000,
|
||||
/* 0x0218: fifo_queue */
|
||||
/* 0x0270: fifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -171,7 +193,7 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0298: rfifo_queue */
|
||||
/* 0x02f0: rfifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -204,11 +226,11 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0318: memx_func_head */
|
||||
/* 0x0370: memx_func_head */
|
||||
0x00010000,
|
||||
0x00000000,
|
||||
0x0000046f,
|
||||
/* 0x0324: memx_func_next */
|
||||
/* 0x037c: memx_func_next */
|
||||
0x00000001,
|
||||
0x00000000,
|
||||
0x00000496,
|
||||
|
@ -221,8 +243,8 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00010004,
|
||||
0x00000000,
|
||||
0x000004fc,
|
||||
/* 0x0354: memx_func_tail */
|
||||
/* 0x0354: memx_data_head */
|
||||
/* 0x03ac: memx_func_tail */
|
||||
/* 0x03ac: memx_data_head */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -735,7 +757,52 @@ uint32_t nva3_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0b54: memx_data_tail */
|
||||
/* 0x0bac: memx_data_tail */
|
||||
/* 0x0bac: i2c_scl_map */
|
||||
0x00001000,
|
||||
0x00004000,
|
||||
0x00010000,
|
||||
0x00000100,
|
||||
0x00040000,
|
||||
0x00100000,
|
||||
0x00400000,
|
||||
0x01000000,
|
||||
0x04000000,
|
||||
0x10000000,
|
||||
/* 0x0bd4: i2c_sda_map */
|
||||
0x00002000,
|
||||
0x00008000,
|
||||
0x00020000,
|
||||
0x00000200,
|
||||
0x00080000,
|
||||
0x00200000,
|
||||
0x00800000,
|
||||
0x02000000,
|
||||
0x08000000,
|
||||
0x20000000,
|
||||
/* 0x0bfc: i2c_ctrl */
|
||||
0x0000e138,
|
||||
0x0000e150,
|
||||
0x0000e168,
|
||||
0x0000e180,
|
||||
0x0000e254,
|
||||
0x0000e274,
|
||||
0x0000e764,
|
||||
0x0000e780,
|
||||
0x0000e79c,
|
||||
0x0000e7b8,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -845,21 +912,21 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x9800f8df,
|
||||
0x96b003e9,
|
||||
0x2a0bf400,
|
||||
0xbb840a98,
|
||||
0xbb9a0a98,
|
||||
0x1cf4029a,
|
||||
0x01d7f00f,
|
||||
0x025421f5,
|
||||
0x0ef494bd,
|
||||
/* 0x00e9: intr_watchdog_next_time */
|
||||
0x850a9815,
|
||||
0x9b0a9815,
|
||||
0xf400a6b0,
|
||||
0x9ab8090b,
|
||||
0x061cf406,
|
||||
/* 0x00f8: intr_watchdog_next_time_set */
|
||||
/* 0x00fb: intr_watchdog_next_proc */
|
||||
0x80850980,
|
||||
0x809b0980,
|
||||
0xe0b603e9,
|
||||
0x10e6b158,
|
||||
0x68e6b158,
|
||||
0xc61bf402,
|
||||
/* 0x010a: intr */
|
||||
0x00f900f8,
|
||||
|
@ -880,15 +947,15 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x0088cf06,
|
||||
0xf40289c4,
|
||||
0x0080230b,
|
||||
0x58e7f085,
|
||||
0x58e7f09b,
|
||||
0x98cb21f4,
|
||||
0x96b08509,
|
||||
0x96b09b09,
|
||||
0x110bf400,
|
||||
0xb63407f0,
|
||||
0x09d00604,
|
||||
0x8004bd00,
|
||||
/* 0x016e: intr_skip_watchdog */
|
||||
0x89e48409,
|
||||
0x89e49a09,
|
||||
0x0bf40800,
|
||||
0x8897f148,
|
||||
0x0694b606,
|
||||
|
@ -948,7 +1015,7 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x000ed006,
|
||||
0x0e8004bd,
|
||||
/* 0x0241: timer_enable */
|
||||
0x0187f084,
|
||||
0x0187f09a,
|
||||
0xb63807f0,
|
||||
0x08d00604,
|
||||
/* 0x024f: timer_done */
|
||||
|
@ -979,7 +1046,7 @@ uint32_t nva3_pwr_code[] = {
|
|||
0xb8008a98,
|
||||
0x0bf406ae,
|
||||
0x5880b610,
|
||||
0x021086b1,
|
||||
0x026886b1,
|
||||
0xf4f01bf4,
|
||||
/* 0x02b2: find_done */
|
||||
0x8eb90132,
|
||||
|
@ -1049,7 +1116,7 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x320bf406,
|
||||
0x94071ec4,
|
||||
0xe0b704ee,
|
||||
0xeb980218,
|
||||
0xeb980270,
|
||||
0x02ec9803,
|
||||
0x9801ed98,
|
||||
0x21f500ee,
|
||||
|
@ -1075,7 +1142,7 @@ uint32_t nva3_pwr_code[] = {
|
|||
0xe60bf406,
|
||||
0xb60723c4,
|
||||
0x30b70434,
|
||||
0x3b800298,
|
||||
0x3b8002f0,
|
||||
0x023c8003,
|
||||
0x80013d80,
|
||||
0x20b6003e,
|
||||
|
@ -1090,13 +1157,13 @@ uint32_t nva3_pwr_code[] = {
|
|||
/* 0x0430: host_init */
|
||||
0x008017f1,
|
||||
0xf11014b6,
|
||||
0xf1021815,
|
||||
0xf1027015,
|
||||
0xb604d007,
|
||||
0x01d00604,
|
||||
0xf104bd00,
|
||||
0xb6008017,
|
||||
0x15f11014,
|
||||
0x07f10298,
|
||||
0x07f102f0,
|
||||
0x04b604dc,
|
||||
0x0001d006,
|
||||
0x17f004bd,
|
||||
|
@ -1156,14 +1223,14 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x00139802,
|
||||
0x950410b6,
|
||||
0x30f01034,
|
||||
0xc835980c,
|
||||
0xde35980c,
|
||||
0x12b855f9,
|
||||
0xec1ef406,
|
||||
0xe0fcd0fc,
|
||||
0x02b921f5,
|
||||
/* 0x0532: memx_info */
|
||||
0xc7f100f8,
|
||||
0xb7f10354,
|
||||
0xb7f103ac,
|
||||
0x21f50800,
|
||||
0x00f802b9,
|
||||
/* 0x0540: memx_recv */
|
||||
|
@ -1175,7 +1242,312 @@ uint32_t nva3_pwr_code[] = {
|
|||
/* 0x0550: perf_recv */
|
||||
/* 0x0552: perf_init */
|
||||
0x00f800f8,
|
||||
/* 0x0554: test_recv */
|
||||
/* 0x0554: i2c_drive_scl */
|
||||
0xf40036b0,
|
||||
0x07f1110b,
|
||||
0x04b607e0,
|
||||
0x0001d006,
|
||||
0x00f804bd,
|
||||
/* 0x0568: i2c_drive_scl_lo */
|
||||
0x07e407f1,
|
||||
0xd00604b6,
|
||||
0x04bd0001,
|
||||
/* 0x0576: i2c_drive_sda */
|
||||
0x36b000f8,
|
||||
0x110bf400,
|
||||
0x07e007f1,
|
||||
0xd00604b6,
|
||||
0x04bd0002,
|
||||
/* 0x058a: i2c_drive_sda_lo */
|
||||
0x07f100f8,
|
||||
0x04b607e4,
|
||||
0x0002d006,
|
||||
0x00f804bd,
|
||||
/* 0x0598: i2c_sense_scl */
|
||||
0xf10132f4,
|
||||
0xb607c437,
|
||||
0x33cf0634,
|
||||
0x0431fd00,
|
||||
0xf4060bf4,
|
||||
/* 0x05ae: i2c_sense_scl_done */
|
||||
0x00f80131,
|
||||
/* 0x05b0: i2c_sense_sda */
|
||||
0xf10132f4,
|
||||
0xb607c437,
|
||||
0x33cf0634,
|
||||
0x0432fd00,
|
||||
0xf4060bf4,
|
||||
/* 0x05c6: i2c_sense_sda_done */
|
||||
0x00f80131,
|
||||
/* 0x05c8: i2c_raise_scl */
|
||||
0x47f140f9,
|
||||
0x37f00898,
|
||||
0x5421f501,
|
||||
/* 0x05d5: i2c_raise_scl_wait */
|
||||
0xe8e7f105,
|
||||
0x7f21f403,
|
||||
0x059821f5,
|
||||
0xb60901f4,
|
||||
0x1bf40142,
|
||||
/* 0x05e9: i2c_raise_scl_done */
|
||||
0xf840fcef,
|
||||
/* 0x05ed: i2c_start */
|
||||
0x9821f500,
|
||||
0x0d11f405,
|
||||
0x05b021f5,
|
||||
0xf40611f4,
|
||||
/* 0x05fe: i2c_start_rep */
|
||||
0x37f0300e,
|
||||
0x5421f500,
|
||||
0x0137f005,
|
||||
0x057621f5,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xc821f550,
|
||||
0x0464b605,
|
||||
/* 0x062b: i2c_start_send */
|
||||
0xf01f11f4,
|
||||
0x21f50037,
|
||||
0xe7f10576,
|
||||
0x21f41388,
|
||||
0x0037f07f,
|
||||
0x055421f5,
|
||||
0x1388e7f1,
|
||||
/* 0x0647: i2c_start_out */
|
||||
0xf87f21f4,
|
||||
/* 0x0649: i2c_stop */
|
||||
0x0037f000,
|
||||
0x055421f5,
|
||||
0xf50037f0,
|
||||
0xf1057621,
|
||||
0xf403e8e7,
|
||||
0x37f07f21,
|
||||
0x5421f501,
|
||||
0x88e7f105,
|
||||
0x7f21f413,
|
||||
0xf50137f0,
|
||||
0xf1057621,
|
||||
0xf41388e7,
|
||||
0x00f87f21,
|
||||
/* 0x067c: i2c_bitw */
|
||||
0x057621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb7f21f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x05c821f5,
|
||||
0xf40464b6,
|
||||
0xe7f11811,
|
||||
0x21f41388,
|
||||
0x0037f07f,
|
||||
0x055421f5,
|
||||
0x1388e7f1,
|
||||
/* 0x06bb: i2c_bitw_out */
|
||||
0xf87f21f4,
|
||||
/* 0x06bd: i2c_bitr */
|
||||
0x0137f000,
|
||||
0x057621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb7f21f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x05c821f5,
|
||||
0xf40464b6,
|
||||
0x21f51b11,
|
||||
0x37f005b0,
|
||||
0x5421f500,
|
||||
0x88e7f105,
|
||||
0x7f21f413,
|
||||
0xf4013cf0,
|
||||
/* 0x0702: i2c_bitr_done */
|
||||
0x00f80131,
|
||||
/* 0x0704: i2c_get_byte */
|
||||
0xf00057f0,
|
||||
/* 0x070a: i2c_get_byte_next */
|
||||
0x54b60847,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b606bd,
|
||||
0x2b11f404,
|
||||
0xb60553fd,
|
||||
0x1bf40142,
|
||||
0x0137f0d8,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x7c21f550,
|
||||
0x0464b606,
|
||||
/* 0x0754: i2c_get_byte_done */
|
||||
/* 0x0756: i2c_put_byte */
|
||||
0x47f000f8,
|
||||
/* 0x0759: i2c_put_byte_next */
|
||||
0x0142b608,
|
||||
0xbb3854ff,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x067c21f5,
|
||||
0xf40464b6,
|
||||
0x46b03411,
|
||||
0xd81bf400,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xbd21f550,
|
||||
0x0464b606,
|
||||
0xbb0f11f4,
|
||||
0x36b00076,
|
||||
0x061bf401,
|
||||
/* 0x07af: i2c_put_byte_done */
|
||||
0xf80132f4,
|
||||
/* 0x07b1: i2c_addr */
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b605ed,
|
||||
0x2911f404,
|
||||
0x012ec3e7,
|
||||
0xfd0134b6,
|
||||
0x76bb0553,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6075621,
|
||||
/* 0x07f6: i2c_addr_done */
|
||||
0x00f80464,
|
||||
/* 0x07f8: i2c_acquire_addr */
|
||||
0xb6f8cec7,
|
||||
0xe0b702e4,
|
||||
0xee980bfc,
|
||||
/* 0x0807: i2c_acquire */
|
||||
0xf500f800,
|
||||
0xf407f821,
|
||||
0xd9f00421,
|
||||
0x3f21f403,
|
||||
/* 0x0816: i2c_release */
|
||||
0x21f500f8,
|
||||
0x21f407f8,
|
||||
0x03daf004,
|
||||
0xf83f21f4,
|
||||
/* 0x0825: i2c_recv */
|
||||
0x0132f400,
|
||||
0xb6f8c1c7,
|
||||
0x16b00214,
|
||||
0x3a1ff528,
|
||||
0xd413a001,
|
||||
0x0032980b,
|
||||
0x0bac13a0,
|
||||
0xf4003198,
|
||||
0xd0f90231,
|
||||
0xd0f9e0f9,
|
||||
0x000067f1,
|
||||
0x100063f1,
|
||||
0xbb016792,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x080721f5,
|
||||
0xfc0464b6,
|
||||
0x00d6b0d0,
|
||||
0x00b31bf5,
|
||||
0xbb0057f0,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x07b121f5,
|
||||
0xf50464b6,
|
||||
0xc700d011,
|
||||
0x76bbe0c5,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6075621,
|
||||
0x11f50464,
|
||||
0x57f000ad,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b607b1,
|
||||
0x8a11f504,
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b60704,
|
||||
0x6a11f404,
|
||||
0xbbe05bcb,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x064921f5,
|
||||
0xb90464b6,
|
||||
0x74bd025b,
|
||||
/* 0x092b: i2c_recv_not_rd08 */
|
||||
0xb0430ef4,
|
||||
0x1bf401d6,
|
||||
0x0057f03d,
|
||||
0x07b121f5,
|
||||
0xc73311f4,
|
||||
0x21f5e0c5,
|
||||
0x11f40756,
|
||||
0x0057f029,
|
||||
0x07b121f5,
|
||||
0xc71f11f4,
|
||||
0x21f5e0b5,
|
||||
0x11f40756,
|
||||
0x4921f515,
|
||||
0xc774bd06,
|
||||
0x1bf408c5,
|
||||
0x0232f409,
|
||||
/* 0x096b: i2c_recv_not_wr08 */
|
||||
/* 0x096b: i2c_recv_done */
|
||||
0xc7030ef4,
|
||||
0x21f5f8ce,
|
||||
0xe0fc0816,
|
||||
0x12f4d0fc,
|
||||
0x027cb90a,
|
||||
0x02b921f5,
|
||||
/* 0x0980: i2c_recv_exit */
|
||||
/* 0x0982: i2c_init */
|
||||
0x00f800f8,
|
||||
/* 0x0984: test_recv */
|
||||
0x05d817f1,
|
||||
0xcf0614b6,
|
||||
0x10b60011,
|
||||
|
@ -1185,12 +1557,12 @@ uint32_t nva3_pwr_code[] = {
|
|||
0x00e7f104,
|
||||
0x4fe3f1d9,
|
||||
0xf521f513,
|
||||
/* 0x057b: test_init */
|
||||
/* 0x09ab: test_init */
|
||||
0xf100f801,
|
||||
0xf50800e7,
|
||||
0xf801f521,
|
||||
/* 0x0585: idle_recv */
|
||||
/* 0x0587: idle */
|
||||
/* 0x09b5: idle_recv */
|
||||
/* 0x09b7: idle */
|
||||
0xf400f800,
|
||||
0x17f10031,
|
||||
0x14b605d4,
|
||||
|
@ -1198,32 +1570,20 @@ uint32_t nva3_pwr_code[] = {
|
|||
0xf10110b6,
|
||||
0xb605d407,
|
||||
0x01d00604,
|
||||
/* 0x05a3: idle_loop */
|
||||
/* 0x09d3: idle_loop */
|
||||
0xf004bd00,
|
||||
0x32f45817,
|
||||
/* 0x05a9: idle_proc */
|
||||
/* 0x05a9: idle_proc_exec */
|
||||
/* 0x09d9: idle_proc */
|
||||
/* 0x09d9: idle_proc_exec */
|
||||
0xb910f902,
|
||||
0x21f5021e,
|
||||
0x10fc02c2,
|
||||
0xf40911f4,
|
||||
0x0ef40231,
|
||||
/* 0x05bd: idle_proc_next */
|
||||
/* 0x09ed: idle_proc_next */
|
||||
0x5810b6ef,
|
||||
0xf4061fb8,
|
||||
0x02f4e61b,
|
||||
0x0028f4dd,
|
||||
0x00bb0ef4,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
};
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_PROC
|
||||
|
@ -46,6 +47,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_DATA
|
||||
|
@ -57,6 +59,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_CODE
|
||||
|
|
|
@ -89,9 +89,31 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x5f433249,
|
||||
0x00000982,
|
||||
0x00000825,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x54534554,
|
||||
0x0000057b,
|
||||
0x00000554,
|
||||
0x000009ab,
|
||||
0x00000984,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -112,8 +134,8 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x454c4449,
|
||||
0x00000587,
|
||||
0x00000585,
|
||||
0x000009b7,
|
||||
0x000009b5,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -133,12 +155,12 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0210: proc_list_tail */
|
||||
/* 0x0210: time_prev */
|
||||
/* 0x0268: proc_list_tail */
|
||||
/* 0x0268: time_prev */
|
||||
0x00000000,
|
||||
/* 0x0214: time_next */
|
||||
/* 0x026c: time_next */
|
||||
0x00000000,
|
||||
/* 0x0218: fifo_queue */
|
||||
/* 0x0270: fifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -171,7 +193,7 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0298: rfifo_queue */
|
||||
/* 0x02f0: rfifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -204,11 +226,11 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0318: memx_func_head */
|
||||
/* 0x0370: memx_func_head */
|
||||
0x00010000,
|
||||
0x00000000,
|
||||
0x0000046f,
|
||||
/* 0x0324: memx_func_next */
|
||||
/* 0x037c: memx_func_next */
|
||||
0x00000001,
|
||||
0x00000000,
|
||||
0x00000496,
|
||||
|
@ -221,8 +243,8 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00010004,
|
||||
0x00000000,
|
||||
0x000004fc,
|
||||
/* 0x0354: memx_func_tail */
|
||||
/* 0x0354: memx_data_head */
|
||||
/* 0x03ac: memx_func_tail */
|
||||
/* 0x03ac: memx_data_head */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -735,7 +757,52 @@ uint32_t nvc0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0b54: memx_data_tail */
|
||||
/* 0x0bac: memx_data_tail */
|
||||
/* 0x0bac: i2c_scl_map */
|
||||
0x00001000,
|
||||
0x00004000,
|
||||
0x00010000,
|
||||
0x00000100,
|
||||
0x00040000,
|
||||
0x00100000,
|
||||
0x00400000,
|
||||
0x01000000,
|
||||
0x04000000,
|
||||
0x10000000,
|
||||
/* 0x0bd4: i2c_sda_map */
|
||||
0x00002000,
|
||||
0x00008000,
|
||||
0x00020000,
|
||||
0x00000200,
|
||||
0x00080000,
|
||||
0x00200000,
|
||||
0x00800000,
|
||||
0x02000000,
|
||||
0x08000000,
|
||||
0x20000000,
|
||||
/* 0x0bfc: i2c_ctrl */
|
||||
0x0000e138,
|
||||
0x0000e150,
|
||||
0x0000e168,
|
||||
0x0000e180,
|
||||
0x0000e254,
|
||||
0x0000e274,
|
||||
0x0000e764,
|
||||
0x0000e780,
|
||||
0x0000e79c,
|
||||
0x0000e7b8,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -845,21 +912,21 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x9800f8df,
|
||||
0x96b003e9,
|
||||
0x2a0bf400,
|
||||
0xbb840a98,
|
||||
0xbb9a0a98,
|
||||
0x1cf4029a,
|
||||
0x01d7f00f,
|
||||
0x025421f5,
|
||||
0x0ef494bd,
|
||||
/* 0x00e9: intr_watchdog_next_time */
|
||||
0x850a9815,
|
||||
0x9b0a9815,
|
||||
0xf400a6b0,
|
||||
0x9ab8090b,
|
||||
0x061cf406,
|
||||
/* 0x00f8: intr_watchdog_next_time_set */
|
||||
/* 0x00fb: intr_watchdog_next_proc */
|
||||
0x80850980,
|
||||
0x809b0980,
|
||||
0xe0b603e9,
|
||||
0x10e6b158,
|
||||
0x68e6b158,
|
||||
0xc61bf402,
|
||||
/* 0x010a: intr */
|
||||
0x00f900f8,
|
||||
|
@ -880,15 +947,15 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x0088cf06,
|
||||
0xf40289c4,
|
||||
0x0080230b,
|
||||
0x58e7f085,
|
||||
0x58e7f09b,
|
||||
0x98cb21f4,
|
||||
0x96b08509,
|
||||
0x96b09b09,
|
||||
0x110bf400,
|
||||
0xb63407f0,
|
||||
0x09d00604,
|
||||
0x8004bd00,
|
||||
/* 0x016e: intr_skip_watchdog */
|
||||
0x89e48409,
|
||||
0x89e49a09,
|
||||
0x0bf40800,
|
||||
0x8897f148,
|
||||
0x0694b606,
|
||||
|
@ -948,7 +1015,7 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x000ed006,
|
||||
0x0e8004bd,
|
||||
/* 0x0241: timer_enable */
|
||||
0x0187f084,
|
||||
0x0187f09a,
|
||||
0xb63807f0,
|
||||
0x08d00604,
|
||||
/* 0x024f: timer_done */
|
||||
|
@ -979,7 +1046,7 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0xb8008a98,
|
||||
0x0bf406ae,
|
||||
0x5880b610,
|
||||
0x021086b1,
|
||||
0x026886b1,
|
||||
0xf4f01bf4,
|
||||
/* 0x02b2: find_done */
|
||||
0x8eb90132,
|
||||
|
@ -1049,7 +1116,7 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x320bf406,
|
||||
0x94071ec4,
|
||||
0xe0b704ee,
|
||||
0xeb980218,
|
||||
0xeb980270,
|
||||
0x02ec9803,
|
||||
0x9801ed98,
|
||||
0x21f500ee,
|
||||
|
@ -1075,7 +1142,7 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0xe60bf406,
|
||||
0xb60723c4,
|
||||
0x30b70434,
|
||||
0x3b800298,
|
||||
0x3b8002f0,
|
||||
0x023c8003,
|
||||
0x80013d80,
|
||||
0x20b6003e,
|
||||
|
@ -1090,13 +1157,13 @@ uint32_t nvc0_pwr_code[] = {
|
|||
/* 0x0430: host_init */
|
||||
0x008017f1,
|
||||
0xf11014b6,
|
||||
0xf1021815,
|
||||
0xf1027015,
|
||||
0xb604d007,
|
||||
0x01d00604,
|
||||
0xf104bd00,
|
||||
0xb6008017,
|
||||
0x15f11014,
|
||||
0x07f10298,
|
||||
0x07f102f0,
|
||||
0x04b604dc,
|
||||
0x0001d006,
|
||||
0x17f004bd,
|
||||
|
@ -1156,14 +1223,14 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x00139802,
|
||||
0x950410b6,
|
||||
0x30f01034,
|
||||
0xc835980c,
|
||||
0xde35980c,
|
||||
0x12b855f9,
|
||||
0xec1ef406,
|
||||
0xe0fcd0fc,
|
||||
0x02b921f5,
|
||||
/* 0x0532: memx_info */
|
||||
0xc7f100f8,
|
||||
0xb7f10354,
|
||||
0xb7f103ac,
|
||||
0x21f50800,
|
||||
0x00f802b9,
|
||||
/* 0x0540: memx_recv */
|
||||
|
@ -1175,7 +1242,312 @@ uint32_t nvc0_pwr_code[] = {
|
|||
/* 0x0550: perf_recv */
|
||||
/* 0x0552: perf_init */
|
||||
0x00f800f8,
|
||||
/* 0x0554: test_recv */
|
||||
/* 0x0554: i2c_drive_scl */
|
||||
0xf40036b0,
|
||||
0x07f1110b,
|
||||
0x04b607e0,
|
||||
0x0001d006,
|
||||
0x00f804bd,
|
||||
/* 0x0568: i2c_drive_scl_lo */
|
||||
0x07e407f1,
|
||||
0xd00604b6,
|
||||
0x04bd0001,
|
||||
/* 0x0576: i2c_drive_sda */
|
||||
0x36b000f8,
|
||||
0x110bf400,
|
||||
0x07e007f1,
|
||||
0xd00604b6,
|
||||
0x04bd0002,
|
||||
/* 0x058a: i2c_drive_sda_lo */
|
||||
0x07f100f8,
|
||||
0x04b607e4,
|
||||
0x0002d006,
|
||||
0x00f804bd,
|
||||
/* 0x0598: i2c_sense_scl */
|
||||
0xf10132f4,
|
||||
0xb607c437,
|
||||
0x33cf0634,
|
||||
0x0431fd00,
|
||||
0xf4060bf4,
|
||||
/* 0x05ae: i2c_sense_scl_done */
|
||||
0x00f80131,
|
||||
/* 0x05b0: i2c_sense_sda */
|
||||
0xf10132f4,
|
||||
0xb607c437,
|
||||
0x33cf0634,
|
||||
0x0432fd00,
|
||||
0xf4060bf4,
|
||||
/* 0x05c6: i2c_sense_sda_done */
|
||||
0x00f80131,
|
||||
/* 0x05c8: i2c_raise_scl */
|
||||
0x47f140f9,
|
||||
0x37f00898,
|
||||
0x5421f501,
|
||||
/* 0x05d5: i2c_raise_scl_wait */
|
||||
0xe8e7f105,
|
||||
0x7f21f403,
|
||||
0x059821f5,
|
||||
0xb60901f4,
|
||||
0x1bf40142,
|
||||
/* 0x05e9: i2c_raise_scl_done */
|
||||
0xf840fcef,
|
||||
/* 0x05ed: i2c_start */
|
||||
0x9821f500,
|
||||
0x0d11f405,
|
||||
0x05b021f5,
|
||||
0xf40611f4,
|
||||
/* 0x05fe: i2c_start_rep */
|
||||
0x37f0300e,
|
||||
0x5421f500,
|
||||
0x0137f005,
|
||||
0x057621f5,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xc821f550,
|
||||
0x0464b605,
|
||||
/* 0x062b: i2c_start_send */
|
||||
0xf01f11f4,
|
||||
0x21f50037,
|
||||
0xe7f10576,
|
||||
0x21f41388,
|
||||
0x0037f07f,
|
||||
0x055421f5,
|
||||
0x1388e7f1,
|
||||
/* 0x0647: i2c_start_out */
|
||||
0xf87f21f4,
|
||||
/* 0x0649: i2c_stop */
|
||||
0x0037f000,
|
||||
0x055421f5,
|
||||
0xf50037f0,
|
||||
0xf1057621,
|
||||
0xf403e8e7,
|
||||
0x37f07f21,
|
||||
0x5421f501,
|
||||
0x88e7f105,
|
||||
0x7f21f413,
|
||||
0xf50137f0,
|
||||
0xf1057621,
|
||||
0xf41388e7,
|
||||
0x00f87f21,
|
||||
/* 0x067c: i2c_bitw */
|
||||
0x057621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb7f21f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x05c821f5,
|
||||
0xf40464b6,
|
||||
0xe7f11811,
|
||||
0x21f41388,
|
||||
0x0037f07f,
|
||||
0x055421f5,
|
||||
0x1388e7f1,
|
||||
/* 0x06bb: i2c_bitw_out */
|
||||
0xf87f21f4,
|
||||
/* 0x06bd: i2c_bitr */
|
||||
0x0137f000,
|
||||
0x057621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb7f21f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x05c821f5,
|
||||
0xf40464b6,
|
||||
0x21f51b11,
|
||||
0x37f005b0,
|
||||
0x5421f500,
|
||||
0x88e7f105,
|
||||
0x7f21f413,
|
||||
0xf4013cf0,
|
||||
/* 0x0702: i2c_bitr_done */
|
||||
0x00f80131,
|
||||
/* 0x0704: i2c_get_byte */
|
||||
0xf00057f0,
|
||||
/* 0x070a: i2c_get_byte_next */
|
||||
0x54b60847,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b606bd,
|
||||
0x2b11f404,
|
||||
0xb60553fd,
|
||||
0x1bf40142,
|
||||
0x0137f0d8,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x7c21f550,
|
||||
0x0464b606,
|
||||
/* 0x0754: i2c_get_byte_done */
|
||||
/* 0x0756: i2c_put_byte */
|
||||
0x47f000f8,
|
||||
/* 0x0759: i2c_put_byte_next */
|
||||
0x0142b608,
|
||||
0xbb3854ff,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x067c21f5,
|
||||
0xf40464b6,
|
||||
0x46b03411,
|
||||
0xd81bf400,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xbd21f550,
|
||||
0x0464b606,
|
||||
0xbb0f11f4,
|
||||
0x36b00076,
|
||||
0x061bf401,
|
||||
/* 0x07af: i2c_put_byte_done */
|
||||
0xf80132f4,
|
||||
/* 0x07b1: i2c_addr */
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b605ed,
|
||||
0x2911f404,
|
||||
0x012ec3e7,
|
||||
0xfd0134b6,
|
||||
0x76bb0553,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6075621,
|
||||
/* 0x07f6: i2c_addr_done */
|
||||
0x00f80464,
|
||||
/* 0x07f8: i2c_acquire_addr */
|
||||
0xb6f8cec7,
|
||||
0xe0b702e4,
|
||||
0xee980bfc,
|
||||
/* 0x0807: i2c_acquire */
|
||||
0xf500f800,
|
||||
0xf407f821,
|
||||
0xd9f00421,
|
||||
0x3f21f403,
|
||||
/* 0x0816: i2c_release */
|
||||
0x21f500f8,
|
||||
0x21f407f8,
|
||||
0x03daf004,
|
||||
0xf83f21f4,
|
||||
/* 0x0825: i2c_recv */
|
||||
0x0132f400,
|
||||
0xb6f8c1c7,
|
||||
0x16b00214,
|
||||
0x3a1ff528,
|
||||
0xd413a001,
|
||||
0x0032980b,
|
||||
0x0bac13a0,
|
||||
0xf4003198,
|
||||
0xd0f90231,
|
||||
0xd0f9e0f9,
|
||||
0x000067f1,
|
||||
0x100063f1,
|
||||
0xbb016792,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x080721f5,
|
||||
0xfc0464b6,
|
||||
0x00d6b0d0,
|
||||
0x00b31bf5,
|
||||
0xbb0057f0,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x07b121f5,
|
||||
0xf50464b6,
|
||||
0xc700d011,
|
||||
0x76bbe0c5,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6075621,
|
||||
0x11f50464,
|
||||
0x57f000ad,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b607b1,
|
||||
0x8a11f504,
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b60704,
|
||||
0x6a11f404,
|
||||
0xbbe05bcb,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x064921f5,
|
||||
0xb90464b6,
|
||||
0x74bd025b,
|
||||
/* 0x092b: i2c_recv_not_rd08 */
|
||||
0xb0430ef4,
|
||||
0x1bf401d6,
|
||||
0x0057f03d,
|
||||
0x07b121f5,
|
||||
0xc73311f4,
|
||||
0x21f5e0c5,
|
||||
0x11f40756,
|
||||
0x0057f029,
|
||||
0x07b121f5,
|
||||
0xc71f11f4,
|
||||
0x21f5e0b5,
|
||||
0x11f40756,
|
||||
0x4921f515,
|
||||
0xc774bd06,
|
||||
0x1bf408c5,
|
||||
0x0232f409,
|
||||
/* 0x096b: i2c_recv_not_wr08 */
|
||||
/* 0x096b: i2c_recv_done */
|
||||
0xc7030ef4,
|
||||
0x21f5f8ce,
|
||||
0xe0fc0816,
|
||||
0x12f4d0fc,
|
||||
0x027cb90a,
|
||||
0x02b921f5,
|
||||
/* 0x0980: i2c_recv_exit */
|
||||
/* 0x0982: i2c_init */
|
||||
0x00f800f8,
|
||||
/* 0x0984: test_recv */
|
||||
0x05d817f1,
|
||||
0xcf0614b6,
|
||||
0x10b60011,
|
||||
|
@ -1185,12 +1557,12 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0x00e7f104,
|
||||
0x4fe3f1d9,
|
||||
0xf521f513,
|
||||
/* 0x057b: test_init */
|
||||
/* 0x09ab: test_init */
|
||||
0xf100f801,
|
||||
0xf50800e7,
|
||||
0xf801f521,
|
||||
/* 0x0585: idle_recv */
|
||||
/* 0x0587: idle */
|
||||
/* 0x09b5: idle_recv */
|
||||
/* 0x09b7: idle */
|
||||
0xf400f800,
|
||||
0x17f10031,
|
||||
0x14b605d4,
|
||||
|
@ -1198,32 +1570,20 @@ uint32_t nvc0_pwr_code[] = {
|
|||
0xf10110b6,
|
||||
0xb605d407,
|
||||
0x01d00604,
|
||||
/* 0x05a3: idle_loop */
|
||||
/* 0x09d3: idle_loop */
|
||||
0xf004bd00,
|
||||
0x32f45817,
|
||||
/* 0x05a9: idle_proc */
|
||||
/* 0x05a9: idle_proc_exec */
|
||||
/* 0x09d9: idle_proc */
|
||||
/* 0x09d9: idle_proc_exec */
|
||||
0xb910f902,
|
||||
0x21f5021e,
|
||||
0x10fc02c2,
|
||||
0xf40911f4,
|
||||
0x0ef40231,
|
||||
/* 0x05bd: idle_proc_next */
|
||||
/* 0x09ed: idle_proc_next */
|
||||
0x5810b6ef,
|
||||
0xf4061fb8,
|
||||
0x02f4e61b,
|
||||
0x0028f4dd,
|
||||
0x00bb0ef4,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
};
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_PROC
|
||||
|
@ -46,6 +47,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_DATA
|
||||
|
@ -57,6 +59,7 @@
|
|||
#include "host.fuc"
|
||||
#include "memx.fuc"
|
||||
#include "perf.fuc"
|
||||
#include "i2c_.fuc"
|
||||
#include "test.fuc"
|
||||
#include "idle.fuc"
|
||||
#undef INCLUDE_CODE
|
||||
|
|
|
@ -89,9 +89,31 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x5f433249,
|
||||
0x000008e3,
|
||||
0x00000786,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x54534554,
|
||||
0x000004eb,
|
||||
0x000004ca,
|
||||
0x00000906,
|
||||
0x000008e5,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -112,8 +134,8 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x454c4449,
|
||||
0x000004f7,
|
||||
0x000004f5,
|
||||
0x00000912,
|
||||
0x00000910,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -133,12 +155,12 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0210: proc_list_tail */
|
||||
/* 0x0210: time_prev */
|
||||
/* 0x0268: proc_list_tail */
|
||||
/* 0x0268: time_prev */
|
||||
0x00000000,
|
||||
/* 0x0214: time_next */
|
||||
/* 0x026c: time_next */
|
||||
0x00000000,
|
||||
/* 0x0218: fifo_queue */
|
||||
/* 0x0270: fifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -171,7 +193,7 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0298: rfifo_queue */
|
||||
/* 0x02f0: rfifo_queue */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -204,11 +226,11 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0318: memx_func_head */
|
||||
/* 0x0370: memx_func_head */
|
||||
0x00010000,
|
||||
0x00000000,
|
||||
0x000003f4,
|
||||
/* 0x0324: memx_func_next */
|
||||
/* 0x037c: memx_func_next */
|
||||
0x00000001,
|
||||
0x00000000,
|
||||
0x00000415,
|
||||
|
@ -221,8 +243,8 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00010004,
|
||||
0x00000000,
|
||||
0x00000472,
|
||||
/* 0x0354: memx_func_tail */
|
||||
/* 0x0354: memx_data_head */
|
||||
/* 0x03ac: memx_func_tail */
|
||||
/* 0x03ac: memx_data_head */
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
@ -735,49 +757,29 @@ uint32_t nvd0_pwr_data[] = {
|
|||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x0b54: memx_data_tail */
|
||||
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,
|
||||
/* 0x0bac: memx_data_tail */
|
||||
/* 0x0bac: i2c_scl_map */
|
||||
0x00000400,
|
||||
0x00000800,
|
||||
0x00001000,
|
||||
0x00002000,
|
||||
0x00004000,
|
||||
0x00008000,
|
||||
0x00010000,
|
||||
0x00020000,
|
||||
0x00040000,
|
||||
0x00080000,
|
||||
/* 0x0bd4: i2c_sda_map */
|
||||
0x00100000,
|
||||
0x00200000,
|
||||
0x00400000,
|
||||
0x00800000,
|
||||
0x01000000,
|
||||
0x02000000,
|
||||
0x04000000,
|
||||
0x08000000,
|
||||
0x10000000,
|
||||
0x20000000,
|
||||
0x00000000,
|
||||
};
|
||||
|
||||
|
@ -836,21 +838,21 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x9800f8e2,
|
||||
0x96b003e9,
|
||||
0x2a0bf400,
|
||||
0xbb840a98,
|
||||
0xbb9a0a98,
|
||||
0x1cf4029a,
|
||||
0x01d7f00f,
|
||||
0x020621f5,
|
||||
0x0ef494bd,
|
||||
/* 0x00c5: intr_watchdog_next_time */
|
||||
0x850a9815,
|
||||
0x9b0a9815,
|
||||
0xf400a6b0,
|
||||
0x9ab8090b,
|
||||
0x061cf406,
|
||||
/* 0x00d4: intr_watchdog_next_time_set */
|
||||
/* 0x00d7: intr_watchdog_next_proc */
|
||||
0x80850980,
|
||||
0x809b0980,
|
||||
0xe0b603e9,
|
||||
0x10e6b158,
|
||||
0x68e6b158,
|
||||
0xc61bf402,
|
||||
/* 0x00e6: intr */
|
||||
0x00f900f8,
|
||||
|
@ -868,15 +870,15 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x0887f004,
|
||||
0xc40088cf,
|
||||
0x0bf40289,
|
||||
0x85008020,
|
||||
0x9b008020,
|
||||
0xf458e7f0,
|
||||
0x0998a721,
|
||||
0x0096b085,
|
||||
0x0096b09b,
|
||||
0xf00e0bf4,
|
||||
0x09d03407,
|
||||
0x8004bd00,
|
||||
/* 0x013e: intr_skip_watchdog */
|
||||
0x89e48409,
|
||||
0x89e49a09,
|
||||
0x0bf40800,
|
||||
0x8897f13c,
|
||||
0x0099cf06,
|
||||
|
@ -929,7 +931,7 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x0ed03407,
|
||||
0x8004bd00,
|
||||
/* 0x01f6: timer_enable */
|
||||
0x87f0840e,
|
||||
0x87f09a0e,
|
||||
0x3807f001,
|
||||
0xbd0008d0,
|
||||
/* 0x0201: timer_done */
|
||||
|
@ -960,7 +962,7 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x06aeb800,
|
||||
0xb6100bf4,
|
||||
0x86b15880,
|
||||
0x1bf40210,
|
||||
0x1bf40268,
|
||||
0x0132f4f0,
|
||||
/* 0x0264: find_done */
|
||||
0xfc028eb9,
|
||||
|
@ -1024,7 +1026,7 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x0bf40612,
|
||||
0x071ec42f,
|
||||
0xb704ee94,
|
||||
0x980218e0,
|
||||
0x980270e0,
|
||||
0xec9803eb,
|
||||
0x01ed9802,
|
||||
0xf500ee98,
|
||||
|
@ -1048,7 +1050,7 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0xec0bf406,
|
||||
0xb60723c4,
|
||||
0x30b70434,
|
||||
0x3b800298,
|
||||
0x3b8002f0,
|
||||
0x023c8003,
|
||||
0x80013d80,
|
||||
0x20b6003e,
|
||||
|
@ -1061,12 +1063,12 @@ uint32_t nvd0_pwr_code[] = {
|
|||
/* 0x03be: host_init */
|
||||
0x17f100f8,
|
||||
0x14b60080,
|
||||
0x1815f110,
|
||||
0x7015f110,
|
||||
0xd007f102,
|
||||
0x0001d004,
|
||||
0x17f104bd,
|
||||
0x14b60080,
|
||||
0x9815f110,
|
||||
0xf015f110,
|
||||
0xdc07f102,
|
||||
0x0001d004,
|
||||
0x17f004bd,
|
||||
|
@ -1122,13 +1124,13 @@ uint32_t nvd0_pwr_code[] = {
|
|||
0x10b60013,
|
||||
0x10349504,
|
||||
0x980c30f0,
|
||||
0x55f9c835,
|
||||
0x55f9de35,
|
||||
0xf40612b8,
|
||||
0xd0fcec1e,
|
||||
0x21f5e0fc,
|
||||
0x00f8026b,
|
||||
/* 0x04a8: memx_info */
|
||||
0x0354c7f1,
|
||||
0x03acc7f1,
|
||||
0x0800b7f1,
|
||||
0x026b21f5,
|
||||
/* 0x04b6: memx_recv */
|
||||
|
@ -1140,49 +1142,342 @@ uint32_t nvd0_pwr_code[] = {
|
|||
/* 0x04c6: perf_recv */
|
||||
0x00f800f8,
|
||||
/* 0x04c8: perf_init */
|
||||
/* 0x04ca: test_recv */
|
||||
0x17f100f8,
|
||||
0x11cf05d8,
|
||||
0x0110b600,
|
||||
0x05d807f1,
|
||||
/* 0x04ca: i2c_drive_scl */
|
||||
0x36b000f8,
|
||||
0x0e0bf400,
|
||||
0x07e007f1,
|
||||
0xbd0001d0,
|
||||
0x00e7f104,
|
||||
0x4fe3f1d9,
|
||||
0xb621f513,
|
||||
/* 0x04eb: test_init */
|
||||
0xf100f801,
|
||||
0xf50800e7,
|
||||
0xf801b621,
|
||||
/* 0x04f5: idle_recv */
|
||||
/* 0x04f7: idle */
|
||||
0xf400f800,
|
||||
0x17f10031,
|
||||
0x11cf05d4,
|
||||
0x0110b600,
|
||||
0x05d407f1,
|
||||
0xbd0001d0,
|
||||
/* 0x050d: idle_loop */
|
||||
0x5817f004,
|
||||
/* 0x0513: idle_proc */
|
||||
/* 0x0513: idle_proc_exec */
|
||||
0xf90232f4,
|
||||
0x021eb910,
|
||||
0x027421f5,
|
||||
0x11f410fc,
|
||||
0x0231f409,
|
||||
/* 0x0527: idle_proc_next */
|
||||
0xb6ef0ef4,
|
||||
0x1fb85810,
|
||||
0xe61bf406,
|
||||
0xf4dd02f4,
|
||||
0x0ef40028,
|
||||
0x000000c1,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
/* 0x04db: i2c_drive_scl_lo */
|
||||
0xf100f804,
|
||||
0xd007e407,
|
||||
0x04bd0001,
|
||||
/* 0x04e6: i2c_drive_sda */
|
||||
0x36b000f8,
|
||||
0x0e0bf400,
|
||||
0x07e007f1,
|
||||
0xbd0002d0,
|
||||
/* 0x04f7: i2c_drive_sda_lo */
|
||||
0xf100f804,
|
||||
0xd007e407,
|
||||
0x04bd0002,
|
||||
/* 0x0502: i2c_sense_scl */
|
||||
0x32f400f8,
|
||||
0xc437f101,
|
||||
0x0033cf07,
|
||||
0xf40431fd,
|
||||
0x31f4060b,
|
||||
/* 0x0515: i2c_sense_scl_done */
|
||||
/* 0x0517: i2c_sense_sda */
|
||||
0xf400f801,
|
||||
0x37f10132,
|
||||
0x33cf07c4,
|
||||
0x0432fd00,
|
||||
0xf4060bf4,
|
||||
/* 0x052a: i2c_sense_sda_done */
|
||||
0x00f80131,
|
||||
/* 0x052c: i2c_raise_scl */
|
||||
0x47f140f9,
|
||||
0x37f00898,
|
||||
0xca21f501,
|
||||
/* 0x0539: i2c_raise_scl_wait */
|
||||
0xe8e7f104,
|
||||
0x6721f403,
|
||||
0x050221f5,
|
||||
0xb60901f4,
|
||||
0x1bf40142,
|
||||
/* 0x054d: i2c_raise_scl_done */
|
||||
0xf840fcef,
|
||||
/* 0x0551: i2c_start */
|
||||
0x0221f500,
|
||||
0x0d11f405,
|
||||
0x051721f5,
|
||||
0xf40611f4,
|
||||
/* 0x0562: i2c_start_rep */
|
||||
0x37f0300e,
|
||||
0xca21f500,
|
||||
0x0137f004,
|
||||
0x04e621f5,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x2c21f550,
|
||||
0x0464b605,
|
||||
/* 0x058f: i2c_start_send */
|
||||
0xf01f11f4,
|
||||
0x21f50037,
|
||||
0xe7f104e6,
|
||||
0x21f41388,
|
||||
0x0037f067,
|
||||
0x04ca21f5,
|
||||
0x1388e7f1,
|
||||
/* 0x05ab: i2c_start_out */
|
||||
0xf86721f4,
|
||||
/* 0x05ad: i2c_stop */
|
||||
0x0037f000,
|
||||
0x04ca21f5,
|
||||
0xf50037f0,
|
||||
0xf104e621,
|
||||
0xf403e8e7,
|
||||
0x37f06721,
|
||||
0xca21f501,
|
||||
0x88e7f104,
|
||||
0x6721f413,
|
||||
0xf50137f0,
|
||||
0xf104e621,
|
||||
0xf41388e7,
|
||||
0x00f86721,
|
||||
/* 0x05e0: i2c_bitw */
|
||||
0x04e621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb6721f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x052c21f5,
|
||||
0xf40464b6,
|
||||
0xe7f11811,
|
||||
0x21f41388,
|
||||
0x0037f067,
|
||||
0x04ca21f5,
|
||||
0x1388e7f1,
|
||||
/* 0x061f: i2c_bitw_out */
|
||||
0xf86721f4,
|
||||
/* 0x0621: i2c_bitr */
|
||||
0x0137f000,
|
||||
0x04e621f5,
|
||||
0x03e8e7f1,
|
||||
0xbb6721f4,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x052c21f5,
|
||||
0xf40464b6,
|
||||
0x21f51b11,
|
||||
0x37f00517,
|
||||
0xca21f500,
|
||||
0x88e7f104,
|
||||
0x6721f413,
|
||||
0xf4013cf0,
|
||||
/* 0x0666: i2c_bitr_done */
|
||||
0x00f80131,
|
||||
/* 0x0668: i2c_get_byte */
|
||||
0xf00057f0,
|
||||
/* 0x066e: i2c_get_byte_next */
|
||||
0x54b60847,
|
||||
0x0076bb01,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b60621,
|
||||
0x2b11f404,
|
||||
0xb60553fd,
|
||||
0x1bf40142,
|
||||
0x0137f0d8,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xe021f550,
|
||||
0x0464b605,
|
||||
/* 0x06b8: i2c_get_byte_done */
|
||||
/* 0x06ba: i2c_put_byte */
|
||||
0x47f000f8,
|
||||
/* 0x06bd: i2c_put_byte_next */
|
||||
0x0142b608,
|
||||
0xbb3854ff,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x05e021f5,
|
||||
0xf40464b6,
|
||||
0x46b03411,
|
||||
0xd81bf400,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x2121f550,
|
||||
0x0464b606,
|
||||
0xbb0f11f4,
|
||||
0x36b00076,
|
||||
0x061bf401,
|
||||
/* 0x0713: i2c_put_byte_done */
|
||||
0xf80132f4,
|
||||
/* 0x0715: i2c_addr */
|
||||
0x0076bb00,
|
||||
0xf90465b6,
|
||||
0x04659450,
|
||||
0xbd0256bb,
|
||||
0x0475fd50,
|
||||
0x21f550fc,
|
||||
0x64b60551,
|
||||
0x2911f404,
|
||||
0x012ec3e7,
|
||||
0xfd0134b6,
|
||||
0x76bb0553,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb606ba21,
|
||||
/* 0x075a: i2c_addr_done */
|
||||
0x00f80464,
|
||||
/* 0x075c: i2c_acquire_addr */
|
||||
0xb6f8cec7,
|
||||
0xe0b705e4,
|
||||
0x00f8d014,
|
||||
/* 0x0768: i2c_acquire */
|
||||
0x075c21f5,
|
||||
0xf00421f4,
|
||||
0x21f403d9,
|
||||
/* 0x0777: i2c_release */
|
||||
0xf500f833,
|
||||
0xf4075c21,
|
||||
0xdaf00421,
|
||||
0x3321f403,
|
||||
/* 0x0786: i2c_recv */
|
||||
0x32f400f8,
|
||||
0xf8c1c701,
|
||||
0xb00214b6,
|
||||
0x1ff52816,
|
||||
0x13a0013a,
|
||||
0x32980bd4,
|
||||
0xac13a000,
|
||||
0x0031980b,
|
||||
0xf90231f4,
|
||||
0xf9e0f9d0,
|
||||
0x0067f1d0,
|
||||
0x0063f100,
|
||||
0x01679210,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x6821f550,
|
||||
0x0464b607,
|
||||
0xd6b0d0fc,
|
||||
0xb31bf500,
|
||||
0x0057f000,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0x1521f550,
|
||||
0x0464b607,
|
||||
0x00d011f5,
|
||||
0xbbe0c5c7,
|
||||
0x65b60076,
|
||||
0x9450f904,
|
||||
0x56bb0465,
|
||||
0xfd50bd02,
|
||||
0x50fc0475,
|
||||
0x06ba21f5,
|
||||
0xf50464b6,
|
||||
0xf000ad11,
|
||||
0x76bb0157,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6071521,
|
||||
0x11f50464,
|
||||
0x76bb008a,
|
||||
0x0465b600,
|
||||
0x659450f9,
|
||||
0x0256bb04,
|
||||
0x75fd50bd,
|
||||
0xf550fc04,
|
||||
0xb6066821,
|
||||
0x11f40464,
|
||||
0xe05bcb6a,
|
||||
0xb60076bb,
|
||||
0x50f90465,
|
||||
0xbb046594,
|
||||
0x50bd0256,
|
||||
0xfc0475fd,
|
||||
0xad21f550,
|
||||
0x0464b605,
|
||||
0xbd025bb9,
|
||||
0x430ef474,
|
||||
/* 0x088c: i2c_recv_not_rd08 */
|
||||
0xf401d6b0,
|
||||
0x57f03d1b,
|
||||
0x1521f500,
|
||||
0x3311f407,
|
||||
0xf5e0c5c7,
|
||||
0xf406ba21,
|
||||
0x57f02911,
|
||||
0x1521f500,
|
||||
0x1f11f407,
|
||||
0xf5e0b5c7,
|
||||
0xf406ba21,
|
||||
0x21f51511,
|
||||
0x74bd05ad,
|
||||
0xf408c5c7,
|
||||
0x32f4091b,
|
||||
0x030ef402,
|
||||
/* 0x08cc: i2c_recv_not_wr08 */
|
||||
/* 0x08cc: i2c_recv_done */
|
||||
0xf5f8cec7,
|
||||
0xfc077721,
|
||||
0xf4d0fce0,
|
||||
0x7cb90a12,
|
||||
0x6b21f502,
|
||||
/* 0x08e1: i2c_recv_exit */
|
||||
/* 0x08e3: i2c_init */
|
||||
0xf800f802,
|
||||
/* 0x08e5: test_recv */
|
||||
0xd817f100,
|
||||
0x0011cf05,
|
||||
0xf10110b6,
|
||||
0xd005d807,
|
||||
0x04bd0001,
|
||||
0xd900e7f1,
|
||||
0x134fe3f1,
|
||||
0x01b621f5,
|
||||
/* 0x0906: test_init */
|
||||
0xe7f100f8,
|
||||
0x21f50800,
|
||||
0x00f801b6,
|
||||
/* 0x0910: idle_recv */
|
||||
/* 0x0912: idle */
|
||||
0x31f400f8,
|
||||
0xd417f100,
|
||||
0x0011cf05,
|
||||
0xf10110b6,
|
||||
0xd005d407,
|
||||
0x04bd0001,
|
||||
/* 0x0928: idle_loop */
|
||||
0xf45817f0,
|
||||
/* 0x092e: idle_proc */
|
||||
/* 0x092e: idle_proc_exec */
|
||||
0x10f90232,
|
||||
0xf5021eb9,
|
||||
0xfc027421,
|
||||
0x0911f410,
|
||||
0xf40231f4,
|
||||
/* 0x0942: idle_proc_next */
|
||||
0x10b6ef0e,
|
||||
0x061fb858,
|
||||
0xf4e61bf4,
|
||||
0x28f4dd02,
|
||||
0xc10ef400,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#define PROC_HOST 0x54534f48
|
||||
#define PROC_MEMX 0x584d454d
|
||||
#define PROC_PERF 0x46524550
|
||||
#define PROC_I2C_ 0x5f433249
|
||||
#define PROC_TEST 0x54534554
|
||||
|
||||
/* KERN: message identifiers */
|
||||
|
@ -24,4 +25,22 @@
|
|||
#define MEMX_WAIT 3
|
||||
#define MEMX_DELAY 4
|
||||
|
||||
/* I2C_: message identifiers */
|
||||
#define I2C__MSG_RD08 0
|
||||
#define I2C__MSG_WR08 1
|
||||
|
||||
#define I2C__MSG_DATA0_PORT 24:31
|
||||
#define I2C__MSG_DATA0_ADDR 14:23
|
||||
|
||||
#define I2C__MSG_DATA0_RD08_PORT I2C__MSG_DATA0_PORT
|
||||
#define I2C__MSG_DATA0_RD08_ADDR I2C__MSG_DATA0_ADDR
|
||||
#define I2C__MSG_DATA0_RD08_REG 0:7
|
||||
#define I2C__MSG_DATA1_RD08_VAL 0:7
|
||||
|
||||
#define I2C__MSG_DATA0_WR08_PORT I2C__MSG_DATA0_PORT
|
||||
#define I2C__MSG_DATA0_WR08_ADDR I2C__MSG_DATA0_ADDR
|
||||
#define I2C__MSG_DATA0_WR08_SYNC 8:8
|
||||
#define I2C__MSG_DATA0_WR08_REG 0:7
|
||||
#define I2C__MSG_DATA1_WR08_VAL 0:7
|
||||
|
||||
#endif
|
||||
|
|
Загрузка…
Ссылка в новой задаче