FreeCalypso > hg > freecalypso-reveng
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} |