changeset 265:d15f701b1434

dsample-fw-disasm: beginning to locate tpudrv10 code
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 18 Jan 2018 08:03:03 +0000
parents e4a596bbb2bf
children bb46e9f67cd5
files dsample-fw-disasm
diffstat 1 files changed, 262 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/dsample-fw-disasm	Thu Jan 18 05:39:53 2018 +0000
+++ b/dsample-fw-disasm	Thu Jan 18 08:03:03 2018 +0000
@@ -714,6 +714,12 @@
   25049a:	469b		mov	r11, r3
   25049c:	bdf0		pop	{r4, r5, r6, r7, pc}
 
+IRAM code flash address = 0x20508
+IRAM code run start address = 0x800004
+IRAM code run end address   = 0x81944c
+
+Run address = load address + 0x7DFAFC
+
 $INC_Initialize:
   254654:	b530		push	{r4, r5, lr}
   254656:	1c05		add	r5, r0, #0
@@ -832,3 +838,259 @@
   25578c:	4778		bx	pc
   25578e:	46c0		nop			(mov r8, r8)
   255790:	e8bd8000	ldmia	sp!, {pc}
+
+; $Cust_Init_Layer1 call trampoline
+  2566f8:	b082		sub	sp, #8
+  2566fa:	9400		str	r4, [sp, #0]
+  2566fc:	4c01		ldr	r4, =0x803bf8	; via 0x256704
+  2566fe:	9401		str	r4, [sp, #4]
+  256700:	bd10		pop	{r4, pc}
+  256702:	0000
+
+IRAM code:
+
+$Cust_get_pwr_data:
+  803b5c:	b5f0		push	{r4, r5, r6, r7, lr}
+  803b5e:	4642		mov	r2, r8
+  803b60:	b404		push	{r2}
+  803b62:	1c0e		add	r6, r1, #0
+  803b64:	1c05		add	r5, r0, #0
+  803b66:	1c30		add	r0, r6, #0
+  803b68:	f7ff ff66	bl	0x803a38	; $Cust_is_band_high
+  803b6c:	1c04		add	r4, r0, #0
+  803b6e:	1c30		add	r0, r6, #0
+  803b70:	f00e fa45	bl	0x811ffe	; $Convert_l1_radio_freq
+  803b74:	0400		lsl	r0, r0, #16
+  803b76:	0c06		lsr	r6, r0, #16
+  803b78:	20dd		mov	r0, #221	; 0xdd
+  803b7a:	0080		lsl	r0, r0, #2
+  803b7c:	4360		mul	r0, r4
+  803b7e:	4680		mov	r8, r0
+  803b80:	20dd		mov	r0, #221	; 0xdd
+  803b82:	4360		mul	r0, r4
+  803b84:	1828		add	r0, r5, r0
+  803b86:	0080		lsl	r0, r0, #2
+  803b88:	4b9e		ldr	r3, =0x83a2f0	; via 0x803e04
+  803b8a:	1819		add	r1, r3, r0
+  803b8c:	315c		add	r1, #92	; 0x5c
+  803b8e:	8809		ldrh	r1, [r1, #0]
+  803b90:	468c		mov	r12, r1
+  803b92:	499e		ldr	r1, =0x83a34f	; via 0x803e0c
+  803b94:	5c08		ldrb	r0, [r1, r0]
+  803b96:	0141		lsl	r1, r0, #5
+  803b98:	4640		mov	r0, r8
+  803b9a:	1845		add	r5, r0, r1
+  803b9c:	2400		mov	r4, #0
+  803b9e:	e002		b	0x803ba6
+  803ba0:	1c60		add	r0, r4, #1
+  803ba2:	0400		lsl	r0, r0, #16
+  803ba4:	0c04		lsr	r4, r0, #16
+  803ba6:	00a2		lsl	r2, r4, #2
+  803ba8:	18a8		add	r0, r5, r2
+  803baa:	1819		add	r1, r3, r0
+  803bac:	31dc		add	r1, #220	; 0xdc
+  803bae:	2702		mov	r7, #2
+  803bb0:	1950		add	r0, r2, r5
+  803bb2:	181a		add	r2, r3, r0
+  803bb4:	20dc		mov	r0, #220	; 0xdc
+  803bb6:	5a80		ldrh	r0, [r0, r2]
+  803bb8:	4286		cmp	r6, r0
+  803bba:	dcf1		bgt	0x803ba0
+  803bbc:	5e79		ldrsh	r1, [r7, r1]
+  803bbe:	4660		mov	r0, r12
+  803bc0:	4341		mul	r1, r0
+  803bc2:	09c8		lsr	r0, r1, #7
+  803bc4:	0400		lsl	r0, r0, #16
+  803bc6:	0c00		lsr	r0, r0, #16
+  803bc8:	4684		mov	r12, r0
+  803bca:	4640		mov	r0, r8
+  803bcc:	18c0		add	r0, r0, r3
+  803bce:	21d7		mov	r1, #215	; 0xd7
+  803bd0:	0089		lsl	r1, r1, #2
+  803bd2:	1808		add	r0, r1, r0
+  803bd4:	4a8a		ldr	r2, =0x83a2da	; via 0x803e00
+  803bd6:	2100		mov	r1, #0
+  803bd8:	5e51		ldrsh	r1, [r2, r1]
+  803bda:	e000		b	0x803bde
+  803bdc:	3004		add	r0, #4
+  803bde:	2200		mov	r2, #0
+  803be0:	5e82		ldrsh	r2, [r0, r2]
+  803be2:	4291		cmp	r1, r2
+  803be4:	dcfa		bgt	0x803bdc
+  803be6:	2102		mov	r1, #2
+  803be8:	5e09		ldrsh	r1, [r1, r0]
+  803bea:	4660		mov	r0, r12
+  803bec:	1808		add	r0, r1, r0
+  803bee:	0400		lsl	r0, r0, #16
+  803bf0:	0c00		lsr	r0, r0, #16
+  803bf2:	bc04		pop	{r2}
+  803bf4:	4690		mov	r8, r2
+  803bf6:	bdf0		pop	{r4, r5, r6, r7, pc}
+
+$Cust_Init_Layer1:
+  803bf8:	b500		push	{lr}
+  803bfa:	b084		sub	sp, #16	; 0x10
+  803bfc:	4669		mov	r1, sp
+  803bfe:	2006		mov	r0, #6
+  803c00:	7008		strb	r0, [r1, #0]
+  803c02:	4668		mov	r0, sp
+  803c04:	2101		mov	r1, #1
+  803c06:	7101		strb	r1, [r0, #4]
+  803c08:	2000		mov	r0, #0
+  803c0a:	4669		mov	r1, sp
+  803c0c:	70c8		strb	r0, [r1, #3]
+  803c0e:	7208		strb	r0, [r1, #8]
+  803c10:	487f		ldr	r0, =0x5ff	; via 0x803e10
+  803c12:	9003		str	r0, [sp, #12]	; 0xc
+  803c14:	2001		mov	r0, #1
+  803c16:	80c8		strh	r0, [r1, #6]
+  803c18:	4668		mov	r0, sp
+  803c1a:	f03b f9bb	bl	0x83ef94	; $l1_initialize
+  803c1e:	480b		ldr	r0, =0x839ea8	; via 0x803c4c
+  803c20:	21ff		mov	r1, #255	; 0xff
+  803c22:	319d		add	r1, #157	; 0x9d
+  803c24:	2200		mov	r2, #0
+  803c26:	f000 f868	bl	0x803cfa
+  803c2a:	487a		ldr	r0, =0x83a09c	; via 0x803e14
+  803c2c:	2124		mov	r1, #36	; 0x24
+  803c2e:	2201		mov	r2, #1
+  803c30:	f000 f863	bl	0x803cfa
+  803c34:	b004		add	sp, #16	; 0x10
+  803c36:	bd00		pop	{pc}
+
+$Convert_l1_radio_freq:
+  811ffe:	b081		sub	sp, #4
+  812000:	4669		mov	r1, sp
+  812002:	8008		strh	r0, [r1, #0]
+  812004:	e06c		b	0x8120e0
+  812006:	4668		mov	r0, sp
+  812008:	8800		ldrh	r0, [r0, #0]
+  81200a:	e083		b	0x812114
+  81200c:	4668		mov	r0, sp
+  81200e:	8801		ldrh	r1, [r0, #0]
+  812010:	4849		ldr	r0, =0x83cdc0	; via 0x812138
+  812012:	6800		ldr	r0, [r0, #0]
+  812014:	4281		cmp	r1, r0
+  812016:	d202		bcs	0x81201e
+  812018:	4668		mov	r0, sp
+  81201a:	8800		ldrh	r0, [r0, #0]
+  81201c:	e07a		b	0x812114
+  81201e:	4668		mov	r0, sp
+  812020:	8800		ldrh	r0, [r0, #0]
+  812022:	4945		ldr	r1, =0x83cdc0	; via 0x812138
+  812024:	6809		ldr	r1, [r1, #0]
+  812026:	1a41		sub	r1, r0, r1
+  812028:	2001		mov	r0, #1
+  81202a:	0240		lsl	r0, r0, #9
+  81202c:	1840		add	r0, r0, r1
+  81202e:	0400		lsl	r0, r0, #16
+  812030:	0c00		lsr	r0, r0, #16
+  812032:	e06f		b	0x812114
+  812034:	4668		mov	r0, sp
+  812036:	8801		ldrh	r1, [r0, #0]
+  812038:	483f		ldr	r0, =0x83cdc0	; via 0x812138
+  81203a:	6800		ldr	r0, [r0, #0]
+  81203c:	4281		cmp	r1, r0
+  81203e:	d213		bcs	0x812068
+  812040:	4668		mov	r0, sp
+  812042:	8800		ldrh	r0, [r0, #0]
+  812044:	287c		cmp	r0, #124	; 0x7c
+  812046:	dc02		bgt	0x81204e
+  812048:	4668		mov	r0, sp
+  81204a:	8800		ldrh	r0, [r0, #0]
+  81204c:	e062		b	0x812114
+  81204e:	4668		mov	r0, sp
+  812050:	8800		ldrh	r0, [r0, #0]
+  812052:	28ae		cmp	r0, #174	; 0xae
+  812054:	da06		bge	0x812064
+  812056:	4939		ldr	r1, =0x352	; via 0x81213c
+  812058:	4668		mov	r0, sp
+  81205a:	8800		ldrh	r0, [r0, #0]
+  81205c:	1808		add	r0, r1, r0
+  81205e:	0400		lsl	r0, r0, #16
+  812060:	0c00		lsr	r0, r0, #16
+  812062:	e057		b	0x812114
+  812064:	2000		mov	r0, #0
+  812066:	e055		b	0x812114
+  812068:	4668		mov	r0, sp
+  81206a:	8801		ldrh	r1, [r0, #0]
+  81206c:	4832		ldr	r0, =0x83cdc0	; via 0x812138
+  81206e:	6800		ldr	r0, [r0, #0]
+  812070:	1a09		sub	r1, r1, r0
+  812072:	2001		mov	r0, #1
+  812074:	0240		lsl	r0, r0, #9
+  812076:	1840		add	r0, r0, r1
+  812078:	0400		lsl	r0, r0, #16
+  81207a:	0c00		lsr	r0, r0, #16
+  81207c:	e04a		b	0x812114
+  81207e:	4668		mov	r0, sp
+  812080:	8800		ldrh	r0, [r0, #0]
+  812082:	287c		cmp	r0, #124	; 0x7c
+  812084:	dc02		bgt	0x81208c
+  812086:	4668		mov	r0, sp
+  812088:	8800		ldrh	r0, [r0, #0]
+  81208a:	e043		b	0x812114
+  81208c:	4668		mov	r0, sp
+  81208e:	8800		ldrh	r0, [r0, #0]
+  812090:	28ae		cmp	r0, #174	; 0xae
+  812092:	da06		bge	0x8120a2
+  812094:	4929		ldr	r1, =0x352	; via 0x81213c
+  812096:	4668		mov	r0, sp
+  812098:	8800		ldrh	r0, [r0, #0]
+  81209a:	1808		add	r0, r1, r0
+  81209c:	0400		lsl	r0, r0, #16
+  81209e:	0c00		lsr	r0, r0, #16
+  8120a0:	e038		b	0x812114
+  8120a2:	2000		mov	r0, #0
+  8120a4:	e036		b	0x812114
+  8120a6:	4668		mov	r0, sp
+  8120a8:	8800		ldrh	r0, [r0, #0]
+  8120aa:	4923		ldr	r1, =0x83cdc0	; via 0x812138
+  8120ac:	6809		ldr	r1, [r1, #0]
+  8120ae:	4288		cmp	r0, r1
+  8120b0:	d208		bcs	0x8120c4
+  8120b2:	4668		mov	r0, sp
+  8120b4:	8801		ldrh	r1, [r0, #0]
+  8120b6:	4822		ldr	r0, =0x83cdbc	; via 0x812140
+  8120b8:	6800		ldr	r0, [r0, #0]
+  8120ba:	1a08		sub	r0, r1, r0
+  8120bc:	3080		add	r0, #128	; 0x80
+  8120be:	0400		lsl	r0, r0, #16
+  8120c0:	0c00		lsr	r0, r0, #16
+  8120c2:	e027		b	0x812114
+  8120c4:	4668		mov	r0, sp
+  8120c6:	8801		ldrh	r1, [r0, #0]
+  8120c8:	481b		ldr	r0, =0x83cdc0	; via 0x812138
+  8120ca:	6800		ldr	r0, [r0, #0]
+  8120cc:	1a08		sub	r0, r1, r0
+  8120ce:	2101		mov	r1, #1
+  8120d0:	0249		lsl	r1, r1, #9
+  8120d2:	1808		add	r0, r1, r0
+  8120d4:	0400		lsl	r0, r0, #16
+  8120d6:	0c00		lsr	r0, r0, #16
+  8120d8:	e01c		b	0x812114
+  8120da:	4668		mov	r0, sp
+  8120dc:	8800		ldrh	r0, [r0, #0]
+  8120de:	e019		b	0x812114
+  8120e0:	4818		ldr	r0, =0x83cdb4	; via 0x812144
+  8120e2:	7800		ldrb	r0, [r0, #0]
+  8120e4:	1e40		sub	r0, r0, #1
+  8120e6:	2807		cmp	r0, #7
+  8120e8:	d8f7		bhi	0x8120da
+  8120ea:	a102		add	r1, pc, #8
+  8120ec:	0080		lsl	r0, r0, #2
+  8120ee:	5808		ldr	r0, [r1, r0]
+  8120f0:	4687		mov	pc, r0
+  8120f2:	46c0		nop			(mov r8, r8)
+
+  8120f4:	00812006
+  8120f8:	0081207e
+  8120fc:	00812006
+  812100:	00812006
+  812104:	0081200c
+  812108:	00812034
+  81210c:	00812006
+  812110:	008120a6
+
+  812114:	b001		add	sp, #4
+  812116:	4770		bx	lr