comparison pirelli/fw-disasm @ 236:9ee2d1d91f7e

pirelli/fw-disasm: Cust_Init_Layer1() and madc_hex_2_physical() located
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 22 Dec 2017 06:10:26 +0000
parents 78be85145f33
children 452ea81450e1
comparison
equal deleted inserted replaced
235:78be85145f33 236:9ee2d1d91f7e
846 3f11f8: b500 push {lr} 846 3f11f8: b500 push {lr}
847 3f11fa: f7ca faeb bl 0x3bb7d4 ; $Init_Target 847 3f11fa: f7ca faeb bl 0x3bb7d4 ; $Init_Target
848 3f11fe: f7ca fbe4 bl 0x3bb9ca ; $Init_Drivers 848 3f11fe: f7ca fbe4 bl 0x3bb9ca ; $Init_Drivers
849 3f1202: f686 f8eb bl 0x2773dc 849 3f1202: f686 f8eb bl 0x2773dc
850 3f1206: f686 f985 bl 0x277514 850 3f1206: f686 f985 bl 0x277514
851 3f120a: f008 ffa7 bl 0x3fa15c 851 3f120a: f008 ffa7 bl 0x3fa15c ; $Cust_Init_Layer1
852 3f120e: f7ff ffcd bl 0x3f11ac 852 3f120e: f7ff ffcd bl 0x3f11ac
853 3f1212: 2801 cmp r0, #1 853 3f1212: 2801 cmp r0, #1
854 3f1214: d001 beq 0x3f121a 854 3f1214: d001 beq 0x3f121a
855 3f1216: f7b0 fa2d bl 0x3a1674 855 3f1216: f7b0 fa2d bl 0x3a1674
856 3f121a: f7b0 fa3e bl 0x3a169a 856 3f121a: f7b0 fa3e bl 0x3a169a
894 3f6b4c: f7fd f992 bl 0x3f3e74 ; $INC_Initialize 894 3f6b4c: f7fd f992 bl 0x3f3e74 ; $INC_Initialize
895 3f6b50: 4778 bx pc 895 3f6b50: 4778 bx pc
896 3f6b52: 46c0 nop (mov r8, r8) 896 3f6b52: 46c0 nop (mov r8, r8)
897 3f6b54: e8bd8000 ldmia sp!, {pc} 897 3f6b54: e8bd8000 ldmia sp!, {pc}
898 898
899 003F81AC $madc_hex_2_physical call trampoline 899 $madc_hex_2_physical call trampoline
900 3f81ac: b082 sub sp, #8
901 3f81ae: 9400 str r4, [sp, #0]
902 3f81b0: 4c01 ldr r4, =0x83cab0 ; via 0x3f81b8
903 3f81b2: 9401 str r4, [sp, #4]
904 3f81b4: bd10 pop {r4, pc}
905 3f81b6: 0000
906 3f81b8: 0083cab0
907
908 $Cust_Init_Layer1 call trampoline
909 3fa15c: b082 sub sp, #8
910 3fa15e: 9400 str r4, [sp, #0]
911 3fa160: 4c01 ldr r4, =0x83ca64 ; via 0x3fa168
912 3fa162: 9401 str r4, [sp, #4]
913 3fa164: bd10 pop {r4, pc}
914 3fa166: 0000
915 3fa168: 0083ca64
916
900 0052FB70 _RVM_SWE_GET_INFO_ARRAY 917 0052FB70 _RVM_SWE_GET_INFO_ARRAY
901 918
902 0083CAB0 $madc_hex_2_physical function body expected here 919 IRAM data:
920
921 0x801550: rf
922
923 IRAM code:
924
925 $Cust_Init_Layer1:
926 83ca64: b500 push {lr}
927 83ca66: b084 sub sp, #16 ; 0x10
928 83ca68: 4669 mov r1, sp
929 83ca6a: 2006 mov r0, #6
930 83ca6c: 7008 strb r0, [r1, #0]
931 83ca6e: 4668 mov r0, sp
932 83ca70: 2101 mov r1, #1
933 83ca72: 7101 strb r1, [r0, #4]
934 83ca74: 2000 mov r0, #0
935 83ca76: 4669 mov r1, sp
936 83ca78: 70c8 strb r0, [r1, #3]
937 83ca7a: 7208 strb r0, [r1, #8]
938 83ca7c: 487d ldr r0, =0x5ff ; via 0x83cc74
939 83ca7e: 9003 str r0, [sp, #12] ; 0xc
940 83ca80: 2001 mov r0, #1
941 83ca82: 80c8 strh r0, [r1, #6]
942 83ca84: 4668 mov r0, sp
943 83ca86: f00b fff9 bl 0x848a7c ; $l1_initialize
944 83ca8a: 487c ldr r0, =0x801550 ; via 0x83cc7c
945 83ca8c: 21ff mov r1, #255 ; 0xff
946 83ca8e: 319d add r1, #157 ; 0x9d
947 83ca90: 2200 mov r2, #0
948 83ca92: f000 f85d bl 0x83cb50 ; $get_cal_from_nvmem
949 83ca96: 4878 ldr r0, =0x801964 ; via 0x83cc78
950 83ca98: 2102 mov r1, #2
951 83ca9a: 2202 mov r2, #2
952 83ca9c: f000 f858 bl 0x83cb50 ; $get_cal_from_nvmem
953 83caa0: b004 add sp, #16 ; 0x10
954 83caa2: bd00 pop {pc}
955
956 83caa4: 00000f22
957 83caa8: 00000e8b
958 83caac: 00001d12
959
960 $madc_hex_2_physical:
961 83cab0: b5f0 push {r4, r5, r6, r7, lr}
962 83cab2: 4642 mov r2, r8
963 83cab4: b404 push {r2}
964 83cab6: 4688 mov r8, r1
965 83cab8: 1c01 add r1, r0, #0
966 83caba: 4c71 ldr r4, =0x801ac8 ; via 0x83cc80
967 83cabc: 2012 mov r0, #18 ; 0x12
968 83cabe: 1900 add r0, r0, r4
969 83cac0: 2212 mov r2, #18 ; 0x12
970 83cac2: f002 feeb bl 0x83f89c ; C$MEMCPY
971 83cac6: 496f ldr r1, =0x801734 ; via 0x83cc84
972 83cac8: 2012 mov r0, #18 ; 0x12
973 83caca: 1842 add r2, r0, r1
974 83cacc: 2307 mov r3, #7
975 83cace: 8a60 ldrh r0, [r4, #18] ; 0x12
976 83cad0: 880d ldrh r5, [r1, #0]
977 83cad2: 4368 mul r0, r5
978 83cad4: 0a80 lsr r0, r0, #10
979 83cad6: 2500 mov r5, #0
980 83cad8: 5f55 ldrsh r5, [r2, r5]
981 83cada: 1828 add r0, r5, r0
982 83cadc: 8020 strh r0, [r4, #0]
983 83cade: 3102 add r1, #2
984 83cae0: 3402 add r4, #2
985 83cae2: 3202 add r2, #2
986 83cae4: 3b01 sub r3, #1
987 83cae6: 2b00 cmp r3, #0
988 83cae8: d1f1 bne 0x83cace
989 83caea: 4f66 ldr r7, =0x801734 ; via 0x83cc84
990 83caec: 4964 ldr r1, =0x801ac8 ; via 0x83cc80
991 83caee: 8c08 ldrh r0, [r1, #32] ; 0x20
992 83caf0: 89fa ldrh r2, [r7, #14] ; 0xe
993 83caf2: 4350 mul r0, r2
994 83caf4: 0a00 lsr r0, r0, #8
995 83caf6: 0400 lsl r0, r0, #16
996 83caf8: 0c06 lsr r6, r0, #16
997 83cafa: 2200 mov r2, #0
998 83cafc: 2382 mov r3, #130 ; 0x82
999 83cafe: 2041 mov r0, #65 ; 0x41
1000 83cb00: 4c61 ldr r4, =0x801758 ; via 0x83cc88
1001 83cb02: 0085 lsl r5, r0, #2
1002 83cb04: 5b64 ldrh r4, [r4, r5]
1003 83cb06: 42a6 cmp r6, r4
1004 83cb08: db01 blt 0x83cb0e
1005 83cb0a: 1c02 add r2, r0, #0
1006 83cb0c: e000 b 0x83cb10
1007 83cb0e: 1c03 add r3, r0, #0
1008 83cb10: 18d0 add r0, r2, r3
1009 83cb12: 0fc4 lsr r4, r0, #31
1010 83cb14: 1820 add r0, r4, r0
1011 83cb16: 1040 asr r0, r0, #1
1012 83cb18: 0400 lsl r0, r0, #16
1013 83cb1a: 1400 asr r0, r0, #16
1014 83cb1c: 1a9c sub r4, r3, r2
1015 83cb1e: 2c02 cmp r4, #2
1016 83cb20: daee bge 0x83cb00
1017 83cb22: 4add ldr r2, =0x80175a ; via 0x83ce98
1018 83cb24: 0080 lsl r0, r0, #2
1019 83cb26: 5e10 ldrsh r0, [r2, r0]
1020 83cb28: 81c8 strh r0, [r1, #14] ; 0xe
1021 83cb2a: 2022 mov r0, #34 ; 0x22
1022 83cb2c: 5fc2 ldrsh r2, [r0, r7]
1023 83cb2e: 48db ldr r0, =0x801aea ; via 0x83ce9c
1024 83cb30: 8800 ldrh r0, [r0, #0]
1025 83cb32: 8a3b ldrh r3, [r7, #16] ; 0x10
1026 83cb34: 4358 mul r0, r3
1027 83cb36: 0a80 lsr r0, r0, #10
1028 83cb38: 1810 add r0, r2, r0
1029 83cb3a: 8208 strh r0, [r1, #16] ; 0x10
1030 83cb3c: 4640 mov r0, r8
1031 83cb3e: 2212 mov r2, #18 ; 0x12
1032 83cb40: f002 feac bl 0x83f89c ; C$MEMCPY
1033 83cb44: bc04 pop {r2}
1034 83cb46: 4690 mov r8, r2
1035 83cb48: bdf0 pop {r4, r5, r6, r7, pc}