|
ROM:88E12BF8 ; =============== S U B R O U T I N E ======================================= |
|
ROM:88E12BF8 |
|
ROM:88E12BF8 |
|
ROM:88E12BF8 boot_linux_from_mmc ; CODE XREF: sub_88E144C0+DCp |
|
ROM:88E12BF8 |
|
ROM:88E12BF8 var_1B8 = -0x1B8 |
|
ROM:88E12BF8 var_1B4 = -0x1B4 |
|
ROM:88E12BF8 var_1A4 = -0x1A4 |
|
ROM:88E12BF8 var_199 = -0x199 |
|
ROM:88E12BF8 var_198 = -0x198 |
|
ROM:88E12BF8 var_180 = -0x180 |
|
ROM:88E12BF8 var_17C = -0x17C |
|
ROM:88E12BF8 var_174 = -0x174 |
|
ROM:88E12BF8 var_170 = -0x170 |
|
ROM:88E12BF8 var_16C = -0x16C |
|
ROM:88E12BF8 var_128 = -0x128 |
|
ROM:88E12BF8 |
|
ROM:88E12BF8 MOV.W R0, #0xF000 |
|
ROM:88E12BFC LDR R1, =aAndroid ; "ANDROID!" |
|
ROM:88E12BFE PUSH.W {R4-R11,LR} |
|
ROM:88E12C02 MOVT.W R0, #0x88EF |
|
ROM:88E12C06 SUB SP, SP, #0x194 |
|
ROM:88E12C08 MOVS R2, #8 |
|
ROM:88E12C0A BL sub_88E193BC |
|
ROM:88E12C0E CMP R0, #0 |
|
ROM:88E12C10 BEQ.W loc_88E12E6C |
|
ROM:88E12C14 LDR.W R8, =dword_88F31318 |
|
ROM:88E12C18 LDR.W R3, [R8] |
|
ROM:88E12C1C CMP R3, #0 |
|
ROM:88E12C1E BEQ.W loc_88E1307C |
|
ROM:88E12C22 LDR R1, =aRecoveryBootin ; "RECOVERY BOOTING....." |
|
ROM:88E12C24 MOVS R0, #0xFF |
|
ROM:88E12C26 BL print_console |
|
ROM:88E12C2A LDR R0, =0x88E342B8 |
|
ROM:88E12C2C BL sub_88E07D14 |
|
ROM:88E12C30 BL sub_88E07D98 |
|
ROM:88E12C34 ORRS.W R3, R0, R1 |
|
ROM:88E12C38 STRD.W R0, R1, [SP,#8] |
|
ROM:88E12C3C BEQ.W loc_88E132F4 |
|
ROM:88E12C40 |
|
ROM:88E12C40 loc_88E12C40 ; CODE XREF: boot_linux_from_mmc+496j |
|
ROM:88E12C40 LDR R5, =dword_88F2F310 |
|
ROM:88E12C42 LDR R4, =hdr |
|
ROM:88E12C44 LDRD.W R0, R1, [SP,#8] |
|
ROM:88E12C48 LDR R3, [R5] |
|
ROM:88E12C4A MOV R2, R4 |
|
ROM:88E12C4C BL mmc_read |
|
ROM:88E12C50 CMP R0, #0 |
|
ROM:88E12C52 BNE.W loc_88E13300 |
|
ROM:88E12C56 MOV R0, R4 |
|
ROM:88E12C58 LDR R1, =aAndroid ; "ANDROID!" |
|
ROM:88E12C5A MOVS R2, #8 |
|
ROM:88E12C5C BL sub_88E193BC |
|
ROM:88E12C60 CMP R0, #0 |
|
ROM:88E12C62 BNE.W loc_88E1330C |
|
ROM:88E12C66 LDR R3, [R4,#(dword_88F2F338 - 0x88F2F314)] |
|
ROM:88E12C68 CBZ R3, loc_88E12C78 |
|
ROM:88E12C6A LDR R2, [R5] |
|
ROM:88E12C6C CMP R3, R2 |
|
ROM:88E12C6E BEQ loc_88E12C78 |
|
ROM:88E12C70 SUBS R2, R3, #1 |
|
ROM:88E12C72 STR R3, [R5] |
|
ROM:88E12C74 LDR R3, =dword_88F2F2FC |
|
ROM:88E12C76 STR R2, [R3] |
|
ROM:88E12C78 |
|
ROM:88E12C78 loc_88E12C78 ; CODE XREF: boot_linux_from_mmc+70j |
|
ROM:88E12C78 ; boot_linux_from_mmc+76j |
|
ROM:88E12C78 BL sub_88E007A0 |
|
ROM:88E12C7C MOVS R1, #0 |
|
ROM:88E12C7E MOV.W R2, #0x89000000 |
|
ROM:88E12C82 MOVT.W R1, #0x88E0 |
|
ROM:88E12C86 LDR R7, =hdr |
|
ROM:88E12C88 MOV R6, R0 |
|
ROM:88E12C8A LDR R0, =aLkArea0xX0xX ; "LK Area: 0x%X - 0x%X\n" |
|
ROM:88E12C8C BL dprintf |
|
ROM:88E12C90 LDR R1, [R4,#0xC] |
|
ROM:88E12C92 LDR R0, =aKernelAddr0xX ; "Kernel Addr: 0x%X\n" |
|
ROM:88E12C94 BL dprintf |
|
ROM:88E12C98 LDR R1, [R4,#0x14] |
|
ROM:88E12C9A LDR R0, =aRamdiskAddr0xX ; "Ramdisk Addr: 0x%X\n" |
|
ROM:88E12C9C BL dprintf |
|
ROM:88E12CA0 LDR R1, [R4,#0x1C] |
|
ROM:88E12CA2 LDR R0, =aSecondAddr0xX ; "Second Addr: 0x%X\n" |
|
ROM:88E12CA4 BL dprintf |
|
ROM:88E12CA8 LDR R1, [R4,#0x20] |
|
ROM:88E12CAA LDR R0, =aTagsAdddr0xX ; "Tags Adddr: 0x%X\n" |
|
ROM:88E12CAC BL dprintf |
|
ROM:88E12CB0 LDR R1, [R4,#0xC] |
|
ROM:88E12CB2 MOVW R3, #0xFFFF |
|
ROM:88E12CB6 MOVW R0, #0xFFFE |
|
ROM:88E12CBA MOVT.W R3, #0x771F |
|
ROM:88E12CBE MOVT.W R0, #0x1F |
|
ROM:88E12CC2 ADDS R3, R1, R3 |
|
ROM:88E12CC4 CMP R3, R0 |
|
ROM:88E12CC6 BLS.W loc_88E131DC |
|
ROM:88E12CCA LDR R2, [R7,#(dword_88F2F328 - 0x88F2F314)] |
|
ROM:88E12CCC MOV R3, 0x771FFFFF |
|
ROM:88E12CD4 ADDS R3, R2, R3 |
|
ROM:88E12CD6 CMP R3, R0 |
|
ROM:88E12CD8 BLS.W loc_88E131DC |
|
ROM:88E12CDC LDR R3, [R7,#(dword_88F2F330 - 0x88F2F314)] |
|
ROM:88E12CDE MOV LR, 0x771FFFFF |
|
ROM:88E12CE6 ADD LR, R3 |
|
ROM:88E12CE8 CMP LR, R0 |
|
ROM:88E12CEA BLS.W loc_88E131DC |
|
ROM:88E12CEE LDR.W R12, [R7,#(dword_88F2F334 - 0x88F2F314)] |
|
ROM:88E12CF2 MOV LR, 0x771FFFFF |
|
ROM:88E12CFA ADD LR, R12 |
|
ROM:88E12CFC CMP LR, R0 |
|
ROM:88E12CFE BLS.W loc_88E131DC |
|
ROM:88E12D02 LDR R0, [R7,#(dword_88F2F31C - 0x88F2F314)] |
|
ROM:88E12D04 ADDS.W LR, R1, R0 |
|
ROM:88E12D08 BCS.W loc_88E131DC |
|
ROM:88E12D0C LDR R0, [R7,#(dword_88F2F324 - 0x88F2F314)] |
|
ROM:88E12D0E ADDS R0, R2, R0 |
|
ROM:88E12D10 BCS.W loc_88E131DC |
|
ROM:88E12D14 LDR R7, [R7,#(dword_88F2F32C - 0x88F2F314)] |
|
ROM:88E12D16 ADDS R7, R3, R7 |
|
ROM:88E12D18 BCS.W loc_88E131DC |
|
ROM:88E12D1C CMP R6, R1 |
|
ROM:88E12D1E BLS.W loc_88E131DC |
|
ROM:88E12D22 CMP R6, R2 |
|
ROM:88E12D24 BLS.W loc_88E131DC |
|
ROM:88E12D28 CMP R6, R3 |
|
ROM:88E12D2A BLS.W loc_88E131DC |
|
ROM:88E12D2E CMP R6, LR |
|
ROM:88E12D30 BLS.W loc_88E131DC |
|
ROM:88E12D34 CMP R6, R0 |
|
ROM:88E12D36 BLS.W loc_88E131DC |
|
ROM:88E12D3A CMP R6, R7 |
|
ROM:88E12D3C BLS.W loc_88E131DC |
|
ROM:88E12D40 MOVW R2, #0xFFFF |
|
ROM:88E12D44 MOVW R3, #0xFFFE |
|
ROM:88E12D48 MOVT.W R2, #0x771F |
|
ROM:88E12D4C MOVT.W R3, #0x1F |
|
ROM:88E12D50 ADD R2, LR |
|
ROM:88E12D52 CMP R2, R3 |
|
ROM:88E12D54 BLS.W loc_88E131DC |
|
ROM:88E12D58 MOV R2, 0x771FFFFF |
|
ROM:88E12D60 ADDS R2, R0, R2 |
|
ROM:88E12D62 CMP R2, R3 |
|
ROM:88E12D64 BLS.W loc_88E131DC |
|
ROM:88E12D68 MOV R2, 0x771FFFFF |
|
ROM:88E12D70 ADDS R2, R7, R2 |
|
ROM:88E12D72 CMP R2, R3 |
|
ROM:88E12D74 BLS.W loc_88E131DC |
|
ROM:88E12D78 BL sub_88E0D2C8 |
|
ROM:88E12D7C CMP R0, #0 |
|
ROM:88E12D7E BEQ.W loc_88E13148 |
|
ROM:88E12D82 LDR R6, =unk_88F221A4 |
|
ROM:88E12D84 LDR R3, [R6,#(dword_88F221B4 - 0x88F221A4)] |
|
ROM:88E12D86 CMP R3, #0 |
|
ROM:88E12D88 BNE.W loc_88E13148 |
|
ROM:88E12D8C LDR R3, [R6,#(dword_88F221B8 - 0x88F221A4)] |
|
ROM:88E12D8E CMP R3, #0 |
|
ROM:88E12D90 BNE.W loc_88E13148 |
|
ROM:88E12D94 BL sub_88E007A0 |
|
ROM:88E12D98 LDR R3, =dword_88F2F2FC |
|
ROM:88E12D9A LDR.W LR, [R4,#8] |
|
ROM:88E12D9E LDR.W R12, [R4,#0x10] |
|
ROM:88E12DA2 LDR R3, [R3] |
|
ROM:88E12DA4 LDR.W R10, [R5] |
|
ROM:88E12DA8 ADD LR, R3 |
|
ROM:88E12DAA ADD R12, R3 |
|
ROM:88E12DAC MVNS R3, R3 |
|
ROM:88E12DAE AND.W LR, R3, LR |
|
ROM:88E12DB2 STR.W LR, [SP,#0x1B8+var_1A4] |
|
ROM:88E12DB6 MOV.W LR, #1 |
|
ROM:88E12DBA STR.W LR, [R6,#(dword_88F221B8 - 0x88F221A4)] |
|
ROM:88E12DBE LDR.W LR, [SP,#0x1B8+var_1A4] |
|
ROM:88E12DC2 AND.W R3, R12, R3 |
|
ROM:88E12DC6 ADD.W R9, LR, R3 |
|
ROM:88E12DCA ADD R9, R10 |
|
ROM:88E12DCC MOV R3, R9 |
|
ROM:88E12DCE MOV R7, R0 |
|
ROM:88E12DD0 LDRD.W R0, R1, [SP,#8] |
|
ROM:88E12DD4 MOV R2, R7 |
|
ROM:88E12DD6 BL mmc_read |
|
ROM:88E12DDA CMP R0, #0 |
|
ROM:88E12DDC BNE.W loc_88E132C0 |
|
ROM:88E12DE0 LDRD.W R0, R1, [SP,#8] |
|
ROM:88E12DE4 ADD.W R11, R7, R9 |
|
ROM:88E12DE8 LDR R3, [R5] |
|
ROM:88E12DEA MOV R2, R11 |
|
ROM:88E12DEC ADDS.W R0, R0, R9 |
|
ROM:88E12DF0 ADC.W R1, R1, #0 |
|
ROM:88E12DF4 BL mmc_read |
|
ROM:88E12DF8 MOV R10, R0 |
|
ROM:88E12DFA CMP R0, #0 |
|
ROM:88E12DFC BEQ.W loc_88E132CC |
|
ROM:88E12E00 LDR R0, =aErrorCannotRea ; "ERROR: Cannot read boot image signature"... |
|
ROM:88E12E02 BL dprintf |
|
ROM:88E12E06 |
|
ROM:88E12E06 loc_88E12E06 ; CODE XREF: boot_linux_from_mmc+6E6j |
|
ROM:88E12E06 ; boot_linux_from_mmc+6EEj |
|
ROM:88E12E06 LDR R1, [R5] |
|
ROM:88E12E08 LDR R2, [R4,#8] |
|
ROM:88E12E0A ADDS R1, R7, R1 |
|
ROM:88E12E0C LDR R0, [R4,#0xC] |
|
ROM:88E12E0E BLX memcpy |
|
ROM:88E12E12 LDR R2, [SP,#0x1B8+var_1A4] |
|
ROM:88E12E14 LDR R1, [R5] |
|
ROM:88E12E16 LDR R0, [R4,#0x14] |
|
ROM:88E12E18 ADDS R1, R2, R1 |
|
ROM:88E12E1A LDR R2, [R4,#0x10] |
|
ROM:88E12E1C ADDS R1, R7, R1 |
|
ROM:88E12E1E BLX memcpy |
|
ROM:88E12E22 LDR R3, [R6,#(dword_88F221B8 - 0x88F221A4)] |
|
ROM:88E12E24 CMP R3, #0 |
|
ROM:88E12E26 BEQ.W loc_88E131AE |
|
ROM:88E12E2A LDR R0, =unk_88F221A4 |
|
ROM:88E12E2C BL sub_88E127B0 |
|
ROM:88E12E30 B loc_88E131AE |
|
ROM:88E12E30 ; --------------------------------------------------------------------------- |
|
ROM:88E12E32 DCB 0 |
|
ROM:88E12E33 DCB 0xBF ; + |
|
ROM:88E12E34 off_88E12E34 DCD aAndroid ; DATA XREF: boot_linux_from_mmc+4r |
|
ROM:88E12E34 ; boot_linux_from_mmc+60r |
|
ROM:88E12E34 ; "ANDROID!" |
|
ROM:88E12E38 off_88E12E38 DCD aRecoveryBootin ; DATA XREF: boot_linux_from_mmc+2Ar |
|
ROM:88E12E38 ; "RECOVERY BOOTING....." |
|
ROM:88E12E3C dword_88E12E3C DCD 0x88E342B8 ; DATA XREF: boot_linux_from_mmc+32r |
|
ROM:88E12E40 off_88E12E40 DCD dword_88F2F310 ; DATA XREF: boot_linux_from_mmc:loc_88E12C40r |
|
ROM:88E12E44 off_88E12E44 DCD hdr ; DATA XREF: boot_linux_from_mmc+4Ar |
|
ROM:88E12E44 ; boot_linux_from_mmc+8Er |
|
ROM:88E12E48 off_88E12E48 DCD dword_88F2F2FC ; DATA XREF: boot_linux_from_mmc+7Cr |
|
ROM:88E12E48 ; boot_linux_from_mmc+1A0r |
|
ROM:88E12E4C off_88E12E4C DCD aLkArea0xX0xX ; DATA XREF: boot_linux_from_mmc+92r |
|
ROM:88E12E4C ; "LK Area: 0x%X - 0x%X\n" |
|
ROM:88E12E50 off_88E12E50 DCD aKernelAddr0xX ; DATA XREF: boot_linux_from_mmc+9Ar |
|
ROM:88E12E50 ; "Kernel Addr: 0x%X\n" |
|
ROM:88E12E54 off_88E12E54 DCD aRamdiskAddr0xX ; DATA XREF: boot_linux_from_mmc+A2r |
|
ROM:88E12E54 ; "Ramdisk Addr: 0x%X\n" |
|
ROM:88E12E58 off_88E12E58 DCD aSecondAddr0xX ; DATA XREF: boot_linux_from_mmc+AAr |
|
ROM:88E12E58 ; "Second Addr: 0x%X\n" |
|
ROM:88E12E5C off_88E12E5C DCD aTagsAdddr0xX ; DATA XREF: boot_linux_from_mmc+B2r |
|
ROM:88E12E5C ; "Tags Adddr: 0x%X\n" |
|
ROM:88E12E60 off_88E12E60 DCD unk_88F221A4 ; DATA XREF: boot_linux_from_mmc+18Ar |
|
ROM:88E12E60 ; boot_linux_from_mmc+232r |
|
ROM:88E12E64 off_88E12E64 DCD aErrorCannotRea ; DATA XREF: boot_linux_from_mmc+208r |
|
ROM:88E12E64 ; "ERROR: Cannot read boot image signature"... |
|
ROM:88E12E68 off_88E12E68 DCD dword_88F31318 ; DATA XREF: boot_linux_from_mmc+1Cr |
|
ROM:88E12E6C ; --------------------------------------------------------------------------- |
|
ROM:88E12E6C |
|
ROM:88E12E6C loc_88E12E6C ; CODE XREF: boot_linux_from_mmc+18j |
|
ROM:88E12E6C MOV.W R6, #0xF000 |
|
ROM:88E12E70 LDR.W R8, =dword_88F31318 |
|
ROM:88E12E74 MOVT.W R6, #0x88EF |
|
ROM:88E12E78 |
|
ROM:88E12E78 loc_88E12E78 ; CODE XREF: boot_linux_from_mmc+5C2j |
|
ROM:88E12E78 ; boot_linux_from_mmc+5DAj |
|
ROM:88E12E78 LDRB.W R3, [R6,#0x40] |
|
ROM:88E12E7C ADD.W R5, R6, #0x40 |
|
ROM:88E12E80 CMP R3, #0 |
|
ROM:88E12E82 BEQ.W loc_88E131F8 |
|
ROM:88E12E86 |
|
ROM:88E12E86 loc_88E12E86 ; CODE XREF: boot_linux_from_mmc+60Aj |
|
ROM:88E12E86 LDR R3, =dword_88F2F304 |
|
ROM:88E12E88 LDR R3, [R3] |
|
ROM:88E12E8A CMP.W R3, #0x400 |
|
ROM:88E12E8E BEQ.W loc_88E1309E |
|
ROM:88E12E92 |
|
ROM:88E12E92 loc_88E12E92 ; CODE XREF: boot_linux_from_mmc+4B0j |
|
ROM:88E12E92 ADD R4, SP, #0x1B8+var_128 |
|
ROM:88E12E94 |
|
ROM:88E12E94 loc_88E12E94 ; CODE XREF: boot_linux_from_mmc+4CEj |
|
ROM:88E12E94 LDR R3, =dword_88E4D28C |
|
ROM:88E12E96 MOV.W R2, #0x80000 |
|
ROM:88E12E9A LDR R1, =aSec_log0xX0xX ; " sec_log=0x%x@0x%x" |
|
ROM:88E12E9C MOV R0, R4 |
|
ROM:88E12E9E ADD R7, SP, #0x1B8+var_198 |
|
ROM:88E12EA0 LDR R3, [R3] |
|
ROM:88E12EA2 ADDS R3, #8 |
|
ROM:88E12EA4 BL sub_88E19164 |
|
ROM:88E12EA8 MOV R1, R4 |
|
ROM:88E12EAA MOV R0, R5 |
|
ROM:88E12EAC BL sub_88E193E8 |
|
ROM:88E12EB0 LDR R3, =dword_88E4D288 |
|
ROM:88E12EB2 MOV.W R2, #0x40000 |
|
ROM:88E12EB6 LDR R1, =aSec_dbg0xX0xX ; " sec_dbg=0x%x@0x%x" |
|
ROM:88E12EB8 MOV R0, R4 |
|
ROM:88E12EBA LDR R3, [R3] |
|
ROM:88E12EBC ADDS R3, #4 |
|
ROM:88E12EBE BL sub_88E19164 |
|
ROM:88E12EC2 MOV R1, R4 |
|
ROM:88E12EC4 MOV R0, R5 |
|
ROM:88E12EC6 BL sub_88E193E8 |
|
ROM:88E12ECA LDR R3, =dword_88F2F30C |
|
ROM:88E12ECC LDR R1, =aSec_debug_rese ; " sec_debug.reset_reason=0x%x" |
|
ROM:88E12ECE MOV R0, R4 |
|
ROM:88E12ED0 LDR R2, [R3] |
|
ROM:88E12ED2 BL sub_88E19164 |
|
ROM:88E12ED6 MOV R1, R4 |
|
ROM:88E12ED8 MOV R0, R5 |
|
ROM:88E12EDA BL sub_88E193E8 |
|
ROM:88E12EDE MOV R3, 0x8FFFB9C0 |
|
ROM:88E12EE6 MOV.W R2, #0x4000 |
|
ROM:88E12EEA LDR R1, =aEtb_buf0xX0xX ; " etb_buf=0x%x@0x%x" |
|
ROM:88E12EEC MOV R0, R4 |
|
ROM:88E12EEE BL sub_88E19164 |
|
ROM:88E12EF2 MOV R1, R4 |
|
ROM:88E12EF4 MOV R0, R5 |
|
ROM:88E12EF6 BL sub_88E193E8 |
|
ROM:88E12EFA MOVS R2, #0x18 |
|
ROM:88E12EFC MOVS R1, #0 |
|
ROM:88E12EFE MOV R0, R7 |
|
ROM:88E12F00 BLX sub_88E192FC |
|
ROM:88E12F04 MOV R0, R7 |
|
ROM:88E12F06 BL sub_88E14A5C |
|
ROM:88E12F0A MOVW R2, #0x4844 |
|
ROM:88E12F0E LDR R3, [R7] |
|
ROM:88E12F10 MOVT.W R2, #0x4749 |
|
ROM:88E12F14 CMP R3, R2 |
|
ROM:88E12F16 BEQ.W loc_88E13246 |
|
ROM:88E12F1A MOV R2, 0x44494D44 |
|
ROM:88E12F22 CMP R3, R2 |
|
ROM:88E12F24 BEQ.W loc_88E1326E |
|
ROM:88E12F28 MOV R2, 0x574F4C44 |
|
ROM:88E12F30 CMP R3, R2 |
|
ROM:88E12F32 BEQ.W loc_88E13204 |
|
ROM:88E12F36 LDR R3, =dword_88F33FCC |
|
ROM:88E12F38 MOVS R2, #1 |
|
ROM:88E12F3A STR R2, [R3] |
|
ROM:88E12F3C |
|
ROM:88E12F3C loc_88E12F3C ; CODE XREF: boot_linux_from_mmc+684j |
|
ROM:88E12F3C LDR R1, =aSec_debug_enab ; " sec_debug.enable=1" |
|
ROM:88E12F3E MOV R0, R5 |
|
ROM:88E12F40 BL sub_88E193E8 |
|
ROM:88E12F44 MOV R0, R5 |
|
ROM:88E12F46 LDR R1, =aSec_debug_en_0 ; " sec_debug.enable_user=0" |
|
ROM:88E12F48 BL sub_88E193E8 |
|
ROM:88E12F4C |
|
ROM:88E12F4C loc_88E12F4C ; CODE XREF: boot_linux_from_mmc+62Aj |
|
ROM:88E12F4C ; boot_linux_from_mmc+674j |
|
ROM:88E12F4C LDR R3, [R7,#0x14] |
|
ROM:88E12F4E MOV R0, R5 |
|
ROM:88E12F50 CMP.W R3, #0x5500 |
|
ROM:88E12F54 BEQ.W loc_88E131E8 |
|
ROM:88E12F58 LDR R1, =aAndroidboot_cp ; " androidboot.cp_debug_level=0x55FF" |
|
ROM:88E12F5A BL sub_88E193E8 |
|
ROM:88E12F5E MOV R0, R5 |
|
ROM:88E12F60 LDR R1, =aSec_debug_en_1 ; " sec_debug.enable_cp_debug=0" |
|
ROM:88E12F62 BL sub_88E193E8 |
|
ROM:88E12F66 |
|
ROM:88E12F66 loc_88E12F66 ; CODE XREF: boot_linux_from_mmc+5FEj |
|
ROM:88E12F66 BL sub_88E08AC4 |
|
ROM:88E12F6A LDR R1, =aCordonS ; " cordon=%s" |
|
ROM:88E12F6C MOV R2, R0 |
|
ROM:88E12F6E MOV R0, R4 |
|
ROM:88E12F70 BL sub_88E19164 |
|
ROM:88E12F74 MOV R1, R4 |
|
ROM:88E12F76 MOV R0, R5 |
|
ROM:88E12F78 BL sub_88E193E8 |
|
ROM:88E12F7C BL sub_88E08A08 |
|
ROM:88E12F80 LDR R1, =aSysscope0xX ; " sysscope=0x%x" |
|
ROM:88E12F82 MOV R2, R0 |
|
ROM:88E12F84 MOV R0, R4 |
|
ROM:88E12F86 BL sub_88E19164 |
|
ROM:88E12F8A MOV R1, R4 |
|
ROM:88E12F8C MOV R0, R5 |
|
ROM:88E12F8E BL sub_88E193E8 |
|
ROM:88E12F92 LDR R1, =aLoglevel4 ; " loglevel=4" |
|
ROM:88E12F94 MOV R0, R5 |
|
ROM:88E12F96 BL sub_88E193E8 |
|
ROM:88E12F9A LDR R2, =0x88E34804 |
|
ROM:88E12F9C LDR R1, =aSamsung_hardwa ; " samsung.hardware=%s" |
|
ROM:88E12F9E MOV R0, R4 |
|
ROM:88E12FA0 BL sub_88E19164 |
|
ROM:88E12FA4 MOV R1, R4 |
|
ROM:88E12FA6 MOV R0, R5 |
|
ROM:88E12FA8 BL sub_88E193E8 |
|
ROM:88E12FAC ADD R0, SP, #0x1B8+var_180 |
|
ROM:88E12FAE BL sub_88E14980 |
|
ROM:88E12FB2 LDR R2, [SP,#0x1B8+var_174] |
|
ROM:88E12FB4 LDR R3, [SP,#0x1B8+var_170] |
|
ROM:88E12FB6 MOV R0, R4 |
|
ROM:88E12FB8 LDR R1, =aAndroidboot__5 ; " androidboot.emmc_checksum=%d" |
|
ROM:88E12FBA ORR.W R2, R3, R2,LSL#1 |
|
ROM:88E12FBE BL sub_88E19164 |
|
ROM:88E12FC2 MOV R1, R4 |
|
ROM:88E12FC4 MOV R0, R5 |
|
ROM:88E12FC6 BL sub_88E193E8 |
|
ROM:88E12FCA BL sub_88E0BE74 |
|
ROM:88E12FCE LDR R1, =aAndroidboot_wa ; " androidboot.warranty_bit=%d" |
|
ROM:88E12FD0 MOV R2, R0 |
|
ROM:88E12FD2 MOV R0, R4 |
|
ROM:88E12FD4 BL sub_88E19164 |
|
ROM:88E12FD8 MOV R1, R4 |
|
ROM:88E12FDA MOV R0, R5 |
|
ROM:88E12FDC BL sub_88E193E8 |
|
ROM:88E12FE0 LDR R2, =aI535vrucml1 ; "I535VRUCML1" |
|
ROM:88E12FE2 LDR R1, =aAndroidboot__6 ; " androidboot.bootloader=%s" |
|
ROM:88E12FE4 MOV R0, R4 |
|
ROM:88E12FE6 BL sub_88E19164 |
|
ROM:88E12FEA MOV R1, R4 |
|
ROM:88E12FEC MOV R0, R5 |
|
ROM:88E12FEE BL sub_88E193E8 |
|
ROM:88E12FF2 LDR R2, [SP,#0x1B8+var_16C] |
|
ROM:88E12FF4 LDR R1, =aAndroidboot_nv ; " androidboot.nvdata_backup=%d" |
|
ROM:88E12FF6 MOV R0, R4 |
|
ROM:88E12FF8 BL sub_88E19164 |
|
ROM:88E12FFC MOV R1, R4 |
|
ROM:88E12FFE MOV R0, R5 |
|
ROM:88E13000 BL sub_88E193E8 |
|
ROM:88E13004 LDR.W R2, [R8] |
|
ROM:88E13008 LDR R1, =aAndroidboot__7 ; " androidboot.boot_recovery=%d" |
|
ROM:88E1300A MOV R0, R4 |
|
ROM:88E1300C BL sub_88E19164 |
|
ROM:88E13010 MOV R1, R4 |
|
ROM:88E13012 MOV R0, R5 |
|
ROM:88E13014 BL sub_88E193E8 |
|
ROM:88E13018 LDR.W R2, [R8] |
|
ROM:88E1301C LDR R1, =aAndroidboot__8 ; " androidboot.batt_check_recovery=%d" |
|
ROM:88E1301E MOV R0, R4 |
|
ROM:88E13020 BL sub_88E19164 |
|
ROM:88E13024 MOV R1, R4 |
|
ROM:88E13026 MOV R0, R5 |
|
ROM:88E13028 BL sub_88E193E8 |
|
ROM:88E1302C LDR R2, [R7] |
|
ROM:88E1302E LDR R1, =aLevel0xX ; " level=0x%x" |
|
ROM:88E13030 MOV R0, R4 |
|
ROM:88E13032 BL sub_88E19164 |
|
ROM:88E13036 MOV R0, R5 |
|
ROM:88E13038 MOV R1, R4 |
|
ROM:88E1303A BL sub_88E193E8 |
|
ROM:88E1303E LDR R2, [SP,#0x1B8+var_17C] |
|
ROM:88E13040 MOV R0, R4 |
|
ROM:88E13042 CMP R2, #0 |
|
ROM:88E13044 BEQ.W loc_88E131D4 |
|
ROM:88E13048 LDR R1, =aSec_pvs0xX ; " sec_pvs=0x%x" |
|
ROM:88E1304A BL sub_88E19164 |
|
ROM:88E1304E |
|
ROM:88E1304E loc_88E1304E ; CODE XREF: boot_linux_from_mmc+5E2j |
|
ROM:88E1304E MOV R1, R4 |
|
ROM:88E13050 MOV R0, R5 |
|
ROM:88E13052 BL sub_88E193E8 |
|
ROM:88E13056 LDR.W R8, [R6,#0xC] |
|
ROM:88E1305A LDR R7, [R6,#0x20] |
|
ROM:88E1305C BL sub_88E002C8 |
|
ROM:88E13060 LDR R4, [R6,#0x14] |
|
ROM:88E13062 MOV R2, R5 |
|
ROM:88E13064 MOV R1, R7 |
|
ROM:88E13066 STR R4, [SP,#0x1B8+var_1B8] |
|
ROM:88E13068 LDR R4, [R6,#0x10] |
|
ROM:88E1306A STR R4, [SP,#0x1B8+var_1B4] |
|
ROM:88E1306C MOV R3, R0 |
|
ROM:88E1306E MOV R0, R8 |
|
ROM:88E13070 BL sub_88E12824 |
|
ROM:88E13074 MOVS R0, #0 |
|
ROM:88E13076 |
|
ROM:88E13076 loc_88E13076 ; CODE XREF: boot_linux_from_mmc+4A4j |
|
ROM:88E13076 ; boot_linux_from_mmc+5EEj ... |
|
ROM:88E13076 ADD SP, SP, #0x194 |
|
ROM:88E13078 POP.W {R4-R11,PC} |
|
ROM:88E1307C ; --------------------------------------------------------------------------- |
|
ROM:88E1307C |
|
ROM:88E1307C loc_88E1307C ; CODE XREF: boot_linux_from_mmc+26j |
|
ROM:88E1307C LDR R0, =0x88E34290 |
|
ROM:88E1307E BL sub_88E07D14 |
|
ROM:88E13082 BL sub_88E07D98 |
|
ROM:88E13086 ORRS.W R2, R0, R1 |
|
ROM:88E1308A STRD.W R0, R1, [SP,#8] |
|
ROM:88E1308E BNE.W loc_88E12C40 |
|
ROM:88E13092 LDR R0, =aErrorNoBootPar ; "ERROR: No boot partition found\n" |
|
ROM:88E13094 BL dprintf |
|
ROM:88E13098 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E1309C B loc_88E13076 |
|
ROM:88E1309E ; --------------------------------------------------------------------------- |
|
ROM:88E1309E |
|
ROM:88E1309E loc_88E1309E ; CODE XREF: boot_linux_from_mmc+296j |
|
ROM:88E1309E MOV R0, R5 |
|
ROM:88E130A0 LDR R1, =aConsole ; "console=" |
|
ROM:88E130A2 BL sub_88E195A8 |
|
ROM:88E130A6 CMP R0, #0 |
|
ROM:88E130A8 BEQ.W loc_88E12E92 |
|
ROM:88E130AC MOVS R1, #0x20 |
|
ROM:88E130AE ADD R4, SP, #0x1B8+var_128 |
|
ROM:88E130B0 BL sub_88E19410 |
|
ROM:88E130B4 LDR R1, =aConsoleTtyhsl0 ; "console=ttyHSL0,115200,n8%s" |
|
ROM:88E130B6 MOV R2, R0 |
|
ROM:88E130B8 MOV R0, R4 |
|
ROM:88E130BA BL sub_88E19164 |
|
ROM:88E130BE MOV R0, R5 |
|
ROM:88E130C0 MOV R1, R4 |
|
ROM:88E130C2 BL sub_88E19450 |
|
ROM:88E130C6 B loc_88E12E94 |
|
ROM:88E130C6 ; --------------------------------------------------------------------------- |
|
ROM:88E130C8 off_88E130C8 DCD dword_88F2F304 ; DATA XREF: boot_linux_from_mmc:loc_88E12E86r |
|
ROM:88E130CC off_88E130CC DCD dword_88E4D28C ; DATA XREF: boot_linux_from_mmc:loc_88E12E94r |
|
ROM:88E130D0 off_88E130D0 DCD aSec_log0xX0xX ; DATA XREF: boot_linux_from_mmc+2A2r |
|
ROM:88E130D0 ; " sec_log=0x%x@0x%x" |
|
ROM:88E130D4 off_88E130D4 DCD dword_88E4D288 ; DATA XREF: boot_linux_from_mmc+2B8r |
|
ROM:88E130D8 off_88E130D8 DCD aSec_dbg0xX0xX ; DATA XREF: boot_linux_from_mmc+2BEr |
|
ROM:88E130D8 ; " sec_dbg=0x%x@0x%x" |
|
ROM:88E130DC off_88E130DC DCD dword_88F2F30C ; DATA XREF: boot_linux_from_mmc+2D2r |
|
ROM:88E130E0 off_88E130E0 DCD aSec_debug_rese ; DATA XREF: boot_linux_from_mmc+2D4r |
|
ROM:88E130E0 ; " sec_debug.reset_reason=0x%x" |
|
ROM:88E130E4 off_88E130E4 DCD aEtb_buf0xX0xX ; DATA XREF: boot_linux_from_mmc+2F2r |
|
ROM:88E130E4 ; " etb_buf=0x%x@0x%x" |
|
ROM:88E130E8 off_88E130E8 DCD dword_88F33FCC ; DATA XREF: boot_linux_from_mmc+33Er |
|
ROM:88E130EC off_88E130EC DCD aSec_debug_enab ; DATA XREF: boot_linux_from_mmc:loc_88E12F3Cr |
|
ROM:88E130EC ; " sec_debug.enable=1" |
|
ROM:88E130F0 off_88E130F0 DCD aSec_debug_en_0 ; DATA XREF: boot_linux_from_mmc+34Er |
|
ROM:88E130F0 ; " sec_debug.enable_user=0" |
|
ROM:88E130F4 off_88E130F4 DCD aAndroidboot_cp ; DATA XREF: boot_linux_from_mmc+360r |
|
ROM:88E130F4 ; " androidboot.cp_debug_level=0x55FF" |
|
ROM:88E130F8 off_88E130F8 DCD aSec_debug_en_1 ; DATA XREF: boot_linux_from_mmc+368r |
|
ROM:88E130F8 ; " sec_debug.enable_cp_debug=0" |
|
ROM:88E130FC off_88E130FC DCD aCordonS ; DATA XREF: boot_linux_from_mmc+372r |
|
ROM:88E130FC ; " cordon=%s" |
|
ROM:88E13100 off_88E13100 DCD aSysscope0xX ; DATA XREF: boot_linux_from_mmc+388r |
|
ROM:88E13100 ; " sysscope=0x%x" |
|
ROM:88E13104 off_88E13104 DCD aLoglevel4 ; DATA XREF: boot_linux_from_mmc+39Ar |
|
ROM:88E13104 ; " loglevel=4" |
|
ROM:88E13108 dword_88E13108 DCD 0x88E34804 ; DATA XREF: boot_linux_from_mmc+3A2r |
|
ROM:88E1310C off_88E1310C DCD aSamsung_hardwa ; DATA XREF: boot_linux_from_mmc+3A4r |
|
ROM:88E1310C ; " samsung.hardware=%s" |
|
ROM:88E13110 off_88E13110 DCD aAndroidboot__5 ; DATA XREF: boot_linux_from_mmc+3C0r |
|
ROM:88E13110 ; " androidboot.emmc_checksum=%d" |
|
ROM:88E13114 off_88E13114 DCD aAndroidboot_wa ; DATA XREF: boot_linux_from_mmc+3D6r |
|
ROM:88E13114 ; " androidboot.warranty_bit=%d" |
|
ROM:88E13118 off_88E13118 DCD aI535vrucml1 ; DATA XREF: boot_linux_from_mmc+3E8r |
|
ROM:88E13118 ; "I535VRUCML1" |
|
ROM:88E1311C off_88E1311C DCD aAndroidboot__6 ; DATA XREF: boot_linux_from_mmc+3EAr |
|
ROM:88E1311C ; " androidboot.bootloader=%s" |
|
ROM:88E13120 off_88E13120 DCD aAndroidboot_nv ; DATA XREF: boot_linux_from_mmc+3FCr |
|
ROM:88E13120 ; " androidboot.nvdata_backup=%d" |
|
ROM:88E13124 off_88E13124 DCD aAndroidboot__7 ; DATA XREF: boot_linux_from_mmc+410r |
|
ROM:88E13124 ; " androidboot.boot_recovery=%d" |
|
ROM:88E13128 off_88E13128 DCD aAndroidboot__8 ; DATA XREF: boot_linux_from_mmc+424r |
|
ROM:88E13128 ; " androidboot.batt_check_recovery=%d" |
|
ROM:88E1312C off_88E1312C DCD aLevel0xX ; DATA XREF: boot_linux_from_mmc+436r |
|
ROM:88E1312C ; " level=0x%x" |
|
ROM:88E13130 off_88E13130 DCD aSec_pvs0xX ; DATA XREF: boot_linux_from_mmc+450r |
|
ROM:88E13130 ; " sec_pvs=0x%x" |
|
ROM:88E13134 dword_88E13134 DCD 0x88E34290 ; DATA XREF: boot_linux_from_mmc:loc_88E1307Cr |
|
ROM:88E13138 off_88E13138 DCD aErrorNoBootPar ; DATA XREF: boot_linux_from_mmc+49Ar |
|
ROM:88E13138 ; "ERROR: No boot partition found\n" |
|
ROM:88E1313C off_88E1313C DCD aConsole ; DATA XREF: boot_linux_from_mmc+4A8r |
|
ROM:88E1313C ; "console=" |
|
ROM:88E13140 off_88E13140 DCD aConsoleTtyhsl0 ; DATA XREF: boot_linux_from_mmc+4BCr |
|
ROM:88E13140 ; "console=ttyHSL0,115200,n8%s" |
|
ROM:88E13144 off_88E13144 DCD dword_88F31318 ; DATA XREF: boot_linux_from_mmc+278r |
|
ROM:88E13148 ; --------------------------------------------------------------------------- |
|
ROM:88E13148 |
|
ROM:88E13148 loc_88E13148 ; CODE XREF: boot_linux_from_mmc+186j |
|
ROM:88E13148 ; boot_linux_from_mmc+190j ... |
|
ROM:88E13148 BL sub_88E007A0 |
|
ROM:88E1314C LDR R6, =hdr |
|
ROM:88E1314E LDR.W R9, =dword_88F2F2FC |
|
ROM:88E13152 LDR R2, [R5] |
|
ROM:88E13154 MOV R1, R6 |
|
ROM:88E13156 MOV R10, R0 |
|
ROM:88E13158 BLX memcpy |
|
ROM:88E1315C LDR.W R3, [R9] |
|
ROM:88E13160 LDR R2, [R4,#8] |
|
ROM:88E13162 LDR R7, [R5] |
|
ROM:88E13164 LDRD.W R0, R1, [SP,#8] |
|
ROM:88E13168 ADDS R5, R3, R2 |
|
ROM:88E1316A BIC.W R5, R5, R3 |
|
ROM:88E1316E LDR R2, [R4,#0xC] |
|
ROM:88E13170 ADDS R0, R0, R7 |
|
ROM:88E13172 MOV R3, R5 |
|
ROM:88E13174 ADC.W R1, R1, #0 |
|
ROM:88E13178 BL mmc_read |
|
ROM:88E1317C CMP R0, #0 |
|
ROM:88E1317E BNE.W loc_88E132E8 |
|
ROM:88E13182 ADD.W R0, R10, R7 |
|
ROM:88E13186 MOV R2, R5 |
|
ROM:88E13188 LDR R1, [R6,#(dword_88F2F320 - 0x88F2F314)] |
|
ROM:88E1318A ADDS R5, R5, R7 |
|
ROM:88E1318C BLX memcpy |
|
ROM:88E13190 LDR.W R3, [R9] |
|
ROM:88E13194 LDR R7, [R6,#(dword_88F2F324 - 0x88F2F314)] |
|
ROM:88E13196 ADDS R7, R3, R7 |
|
ROM:88E13198 BIC.W R7, R7, R3 |
|
ROM:88E1319C ADDS.W R7, R7, #0x200 |
|
ROM:88E131A0 BNE loc_88E13224 |
|
ROM:88E131A2 |
|
ROM:88E131A2 loc_88E131A2 ; CODE XREF: boot_linux_from_mmc+640j |
|
ROM:88E131A2 LDR R1, [R4,#0x14] |
|
ROM:88E131A4 ADD.W R0, R10, R5 |
|
ROM:88E131A8 MOV R2, R7 |
|
ROM:88E131AA BLX memcpy |
|
ROM:88E131AE |
|
ROM:88E131AE loc_88E131AE ; CODE XREF: boot_linux_from_mmc+22Ej |
|
ROM:88E131AE ; boot_linux_from_mmc+238j |
|
ROM:88E131AE LDR.W R0, [R8] |
|
ROM:88E131B2 BL check_sig_new |
|
ROM:88E131B6 LDR R6, =hdr |
|
ROM:88E131B8 CMP R0, #0 |
|
ROM:88E131BA BEQ.W loc_88E12E78 |
|
ROM:88E131BE BL sub_88E0BF00 |
|
ROM:88E131C2 BL is_engineering_device |
|
ROM:88E131C6 MOV R4, R0 |
|
ROM:88E131C8 CMP R0, #0 |
|
ROM:88E131CA BEQ loc_88E1327E |
|
ROM:88E131CC BL sub_88E0BF64 |
|
ROM:88E131D0 LDR R6, =hdr |
|
ROM:88E131D2 B loc_88E12E78 |
|
ROM:88E131D4 ; --------------------------------------------------------------------------- |
|
ROM:88E131D4 |
|
ROM:88E131D4 loc_88E131D4 ; CODE XREF: boot_linux_from_mmc+44Cj |
|
ROM:88E131D4 LDR R1, =aSec_pvs0 ; " sec_pvs=0" |
|
ROM:88E131D6 BL sub_88E19164 |
|
ROM:88E131DA B loc_88E1304E |
|
ROM:88E131DC ; --------------------------------------------------------------------------- |
|
ROM:88E131DC |
|
ROM:88E131DC loc_88E131DC ; CODE XREF: boot_linux_from_mmc+CEj |
|
ROM:88E131DC ; boot_linux_from_mmc+E0j ... |
|
ROM:88E131DC LDR R0, =aErrorNotValidA ; "ERROR: Not valid address of boot-header"... |
|
ROM:88E131DE BL dprintf |
|
ROM:88E131E2 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E131E6 B loc_88E13076 |
|
ROM:88E131E8 ; --------------------------------------------------------------------------- |
|
ROM:88E131E8 |
|
ROM:88E131E8 loc_88E131E8 ; CODE XREF: boot_linux_from_mmc+35Cj |
|
ROM:88E131E8 LDR R1, =aAndroidboot__9 ; " androidboot.cp_debug_level=0x5500" |
|
ROM:88E131EA BL sub_88E193E8 |
|
ROM:88E131EE MOV R0, R5 |
|
ROM:88E131F0 LDR R1, =aSec_debug_en_2 ; " sec_debug.enable_cp_debug=1" |
|
ROM:88E131F2 BL sub_88E193E8 |
|
ROM:88E131F6 B loc_88E12F66 |
|
ROM:88E131F8 ; --------------------------------------------------------------------------- |
|
ROM:88E131F8 |
|
ROM:88E131F8 loc_88E131F8 ; CODE XREF: boot_linux_from_mmc+28Aj |
|
ROM:88E131F8 MOV R0, R5 |
|
ROM:88E131FA LDR R1, =aMem100mConsole ; "mem=100M console=null" |
|
ROM:88E131FC MOVS R2, #0x16 |
|
ROM:88E131FE BLX memcpy |
|
ROM:88E13202 B loc_88E12E86 |
|
ROM:88E13204 ; --------------------------------------------------------------------------- |
|
ROM:88E13204 |
|
ROM:88E13204 loc_88E13204 ; CODE XREF: boot_linux_from_mmc+33Aj |
|
ROM:88E13204 LDR R3, =dword_88F33FCC |
|
ROM:88E13206 MOVS R2, #0 |
|
ROM:88E13208 MOV R0, R5 |
|
ROM:88E1320A LDR R1, =aAndroidboot_de ; " androidboot.debug_level=0x4f4c" |
|
ROM:88E1320C STR R2, [R3] |
|
ROM:88E1320E BL sub_88E193E8 |
|
ROM:88E13212 MOV R0, R5 |
|
ROM:88E13214 LDR R1, =aSec_debug_en_3 ; " sec_debug.enable=0" |
|
ROM:88E13216 BL sub_88E193E8 |
|
ROM:88E1321A MOV R0, R5 |
|
ROM:88E1321C LDR R1, =aSec_debug_en_0 ; " sec_debug.enable_user=0" |
|
ROM:88E1321E BL sub_88E193E8 |
|
ROM:88E13222 B loc_88E12F4C |
|
ROM:88E13224 ; --------------------------------------------------------------------------- |
|
ROM:88E13224 |
|
ROM:88E13224 loc_88E13224 ; CODE XREF: boot_linux_from_mmc+5A8j |
|
ROM:88E13224 LDRD.W R0, R1, [SP,#8] |
|
ROM:88E13228 MOV R3, R7 |
|
ROM:88E1322A LDR R2, [R6,#(dword_88F2F328 - 0x88F2F314)] |
|
ROM:88E1322C ADDS R0, R0, R5 |
|
ROM:88E1322E ADC.W R1, R1, #0 |
|
ROM:88E13232 BL mmc_read |
|
ROM:88E13236 CMP R0, #0 |
|
ROM:88E13238 BEQ loc_88E131A2 |
|
ROM:88E1323A LDR R0, =aErrorCannotR_0 ; "ERROR: Cannot read ramdisk image\n" |
|
ROM:88E1323C BL dprintf |
|
ROM:88E13240 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E13244 B loc_88E13076 |
|
ROM:88E13246 ; --------------------------------------------------------------------------- |
|
ROM:88E13246 |
|
ROM:88E13246 loc_88E13246 ; CODE XREF: boot_linux_from_mmc+31Ej |
|
ROM:88E13246 LDR R3, =dword_88F33FCC |
|
ROM:88E13248 MOVS R2, #1 |
|
ROM:88E1324A MOV R0, R5 |
|
ROM:88E1324C LDR R1, =aAndroidboot_10 ; " androidboot.debug_level=0x4948" |
|
ROM:88E1324E STR R2, [R3] |
|
ROM:88E13250 BL sub_88E193E8 |
|
ROM:88E13254 MOV R0, R5 |
|
ROM:88E13256 LDR R1, =aSec_debug_enab ; " sec_debug.enable=1" |
|
ROM:88E13258 BL sub_88E193E8 |
|
ROM:88E1325C MOV R0, R5 |
|
ROM:88E1325E LDR R1, =aSec_debug_en_4 ; " sec_debug.enable_user=1" |
|
ROM:88E13260 BL sub_88E193E8 |
|
ROM:88E13264 MOV R0, R5 |
|
ROM:88E13266 LDR R1, =aSlub_debugFpuz ; " slub_debug=FPUZ" |
|
ROM:88E13268 BL sub_88E193E8 |
|
ROM:88E1326C B loc_88E12F4C |
|
ROM:88E1326E ; --------------------------------------------------------------------------- |
|
ROM:88E1326E |
|
ROM:88E1326E loc_88E1326E ; CODE XREF: boot_linux_from_mmc+32Cj |
|
ROM:88E1326E LDR R3, =dword_88F33FCC |
|
ROM:88E13270 MOVS R2, #1 |
|
ROM:88E13272 MOV R0, R5 |
|
ROM:88E13274 LDR R1, =aAndroidboot_11 ; " androidboot.debug_level=0x494d" |
|
ROM:88E13276 STR R2, [R3] |
|
ROM:88E13278 BL sub_88E193E8 |
|
ROM:88E1327C B loc_88E12F3C |
|
ROM:88E1327E ; --------------------------------------------------------------------------- |
|
ROM:88E1327E |
|
ROM:88E1327E loc_88E1327E ; CODE XREF: boot_linux_from_mmc+5D2j |
|
ROM:88E1327E ADD R7, SP, #0x1B8+var_198 |
|
ROM:88E13280 BL sub_88E0C824 |
|
ROM:88E13284 MOVW R3, #0x4C44 |
|
ROM:88E13288 LDR R2, [R7] |
|
ROM:88E1328A MOVT.W R3, #0x574F |
|
ROM:88E1328E STRB.W R4, [R7,#-1] |
|
ROM:88E13292 CMP R2, R3 |
|
ROM:88E13294 BEQ loc_88E132A0 |
|
ROM:88E13296 MOV.W R0, #0xFF0000 |
|
ROM:88E1329A LDR R1, =aSecureFailKern ; "SECURE FAIL: KERNEL" |
|
ROM:88E1329C BL print_console |
|
ROM:88E132A0 |
|
ROM:88E132A0 loc_88E132A0 ; CODE XREF: boot_linux_from_mmc+69Cj |
|
ROM:88E132A0 ADD.W R4, SP, #0x1B8+var_199 |
|
ROM:88E132A4 B loc_88E132AC |
|
ROM:88E132A6 ; --------------------------------------------------------------------------- |
|
ROM:88E132A6 |
|
ROM:88E132A6 loc_88E132A6 ; CODE XREF: boot_linux_from_mmc+6C0j |
|
ROM:88E132A6 ; boot_linux_from_mmc+6C6j |
|
ROM:88E132A6 MOVS R0, #0x32 |
|
ROM:88E132A8 BL sub_88E02C20 |
|
ROM:88E132AC |
|
ROM:88E132AC loc_88E132AC ; CODE XREF: boot_linux_from_mmc+6ACj |
|
ROM:88E132AC MOVS R0, #6 |
|
ROM:88E132AE MOV R1, R4 |
|
ROM:88E132B0 BL sub_88E18088 |
|
ROM:88E132B4 LDRB R3, [R4] |
|
ROM:88E132B6 LSLS R3, R3, #0x1D |
|
ROM:88E132B8 BMI loc_88E132A6 |
|
ROM:88E132BA BL sub_88E00290 |
|
ROM:88E132BE B loc_88E132A6 |
|
ROM:88E132C0 ; --------------------------------------------------------------------------- |
|
ROM:88E132C0 |
|
ROM:88E132C0 loc_88E132C0 ; CODE XREF: boot_linux_from_mmc+1E4j |
|
ROM:88E132C0 LDR R0, =aErrorCannotR_1 ; "ERROR: Cannot read boot image\n" |
|
ROM:88E132C2 BL dprintf |
|
ROM:88E132C6 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E132CA B loc_88E13076 |
|
ROM:88E132CC ; --------------------------------------------------------------------------- |
|
ROM:88E132CC |
|
ROM:88E132CC loc_88E132CC ; CODE XREF: boot_linux_from_mmc+204j |
|
ROM:88E132CC MOVS R3, #2 |
|
ROM:88E132CE MOV R0, R7 |
|
ROM:88E132D0 MOV R1, R11 |
|
ROM:88E132D2 MOV R2, R9 |
|
ROM:88E132D4 BL sub_88E0BB5C |
|
ROM:88E132D8 LDR R3, =dword_88F2F300 |
|
ROM:88E132DA STR R0, [R3] |
|
ROM:88E132DC CMP R0, #0 |
|
ROM:88E132DE BEQ.W loc_88E12E06 |
|
ROM:88E132E2 STR.W R10, [R6,#(dword_88F221B8 - 0x88F221A4)] |
|
ROM:88E132E6 B loc_88E12E06 |
|
ROM:88E132E8 ; --------------------------------------------------------------------------- |
|
ROM:88E132E8 |
|
ROM:88E132E8 loc_88E132E8 ; CODE XREF: boot_linux_from_mmc+586j |
|
ROM:88E132E8 LDR R0, =aErrorCannotR_2 ; "ERROR: Cannot read kernel image\n" |
|
ROM:88E132EA BL dprintf |
|
ROM:88E132EE MOV.W R0, #0xFFFFFFFF |
|
ROM:88E132F2 B loc_88E13076 |
|
ROM:88E132F4 ; --------------------------------------------------------------------------- |
|
ROM:88E132F4 |
|
ROM:88E132F4 loc_88E132F4 ; CODE XREF: boot_linux_from_mmc+44j |
|
ROM:88E132F4 LDR R0, =aErrorNoRecover ; "ERROR: No recovery partition found\n" |
|
ROM:88E132F6 BL dprintf |
|
ROM:88E132FA MOV.W R0, #0xFFFFFFFF |
|
ROM:88E132FE B loc_88E13076 |
|
ROM:88E13300 ; --------------------------------------------------------------------------- |
|
ROM:88E13300 |
|
ROM:88E13300 loc_88E13300 ; CODE XREF: boot_linux_from_mmc+5Aj |
|
ROM:88E13300 LDR R0, =aErrorCannotR_3 ; "ERROR: Cannot read boot image header\n" |
|
ROM:88E13302 BL dprintf |
|
ROM:88E13306 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E1330A B loc_88E13076 |
|
ROM:88E1330C ; --------------------------------------------------------------------------- |
|
ROM:88E1330C |
|
ROM:88E1330C loc_88E1330C ; CODE XREF: boot_linux_from_mmc+6Aj |
|
ROM:88E1330C LDR R0, =aErrorInvalidBo ; "ERROR: Invalid boot image header\n" |
|
ROM:88E1330E BL dprintf |
|
ROM:88E13312 MOV.W R0, #0xFFFFFFFF |
|
ROM:88E13316 B loc_88E13076 |
|
ROM:88E13316 ; End of function boot_linux_from_mmc |
|
ROM:88E13316 |
|
ROM:88E13316 ; --------------------------------------------------------------------------- |
|
ROM:88E13318 off_88E13318 DCD hdr ; DATA XREF: boot_linux_from_mmc+554r |
|
ROM:88E13318 ; boot_linux_from_mmc+5BEr ... |
|
ROM:88E1331C off_88E1331C DCD aSec_pvs0 ; DATA XREF: boot_linux_from_mmc:loc_88E131D4r |
|
ROM:88E1331C ; " sec_pvs=0" |
|
ROM:88E13320 off_88E13320 DCD aErrorNotValidA ; DATA XREF: boot_linux_from_mmc:loc_88E131DCr |
|
ROM:88E13320 ; "ERROR: Not valid address of boot-header"... |
|
ROM:88E13324 off_88E13324 DCD aAndroidboot__9 ; DATA XREF: boot_linux_from_mmc:loc_88E131E8r |
|
ROM:88E13324 ; " androidboot.cp_debug_level=0x5500" |
|
ROM:88E13328 off_88E13328 DCD aSec_debug_en_2 ; DATA XREF: boot_linux_from_mmc+5F8r |
|
ROM:88E13328 ; " sec_debug.enable_cp_debug=1" |
|
ROM:88E1332C off_88E1332C DCD aMem100mConsole ; DATA XREF: boot_linux_from_mmc+602r |
|
ROM:88E1332C ; "mem=100M console=null" |
|
ROM:88E13330 off_88E13330 DCD dword_88F33FCC ; DATA XREF: boot_linux_from_mmc:loc_88E13204r |
|
ROM:88E13330 ; boot_linux_from_mmc:loc_88E13246r ... |
|
ROM:88E13334 off_88E13334 DCD aAndroidboot_de ; DATA XREF: boot_linux_from_mmc+612r |
|
ROM:88E13334 ; " androidboot.debug_level=0x4f4c" |
|
ROM:88E13338 off_88E13338 DCD aSec_debug_en_3 ; DATA XREF: boot_linux_from_mmc+61Cr |
|
ROM:88E13338 ; " sec_debug.enable=0" |
|
ROM:88E1333C off_88E1333C DCD aSec_debug_en_0 ; DATA XREF: boot_linux_from_mmc+624r |
|
ROM:88E1333C ; " sec_debug.enable_user=0" |
|
ROM:88E13340 off_88E13340 DCD aErrorCannotR_0 ; DATA XREF: boot_linux_from_mmc+642r |
|
ROM:88E13340 ; "ERROR: Cannot read ramdisk image\n" |
|
ROM:88E13344 off_88E13344 DCD aAndroidboot_10 ; DATA XREF: boot_linux_from_mmc+654r |
|
ROM:88E13344 ; " androidboot.debug_level=0x4948" |
|
ROM:88E13348 off_88E13348 DCD aSec_debug_enab ; DATA XREF: boot_linux_from_mmc+65Er |
|
ROM:88E13348 ; " sec_debug.enable=1" |
|
ROM:88E1334C off_88E1334C DCD aSec_debug_en_4 ; DATA XREF: boot_linux_from_mmc+666r |
|
ROM:88E1334C ; " sec_debug.enable_user=1" |
|
ROM:88E13350 off_88E13350 DCD aSlub_debugFpuz ; DATA XREF: boot_linux_from_mmc+66Er |
|
ROM:88E13350 ; " slub_debug=FPUZ" |
|
ROM:88E13354 off_88E13354 DCD aAndroidboot_11 ; DATA XREF: boot_linux_from_mmc+67Cr |
|
ROM:88E13354 ; " androidboot.debug_level=0x494d" |
|
ROM:88E13358 off_88E13358 DCD aSecureFailKern ; DATA XREF: boot_linux_from_mmc+6A2r |
|
ROM:88E13358 ; "SECURE FAIL: KERNEL" |
|
ROM:88E1335C off_88E1335C DCD aErrorCannotR_1 ; DATA XREF: boot_linux_from_mmc:loc_88E132C0r |
|
ROM:88E1335C ; "ERROR: Cannot read boot image\n" |
|
ROM:88E13360 off_88E13360 DCD dword_88F2F300 ; DATA XREF: boot_linux_from_mmc+6E0r |
|
ROM:88E13364 off_88E13364 DCD aErrorCannotR_2 ; DATA XREF: boot_linux_from_mmc:loc_88E132E8r |
|
ROM:88E13364 ; "ERROR: Cannot read kernel image\n" |
|
ROM:88E13368 off_88E13368 DCD aErrorNoRecover ; DATA XREF: boot_linux_from_mmc:loc_88E132F4r |
|
ROM:88E13368 ; "ERROR: No recovery partition found\n" |
|
ROM:88E1336C off_88E1336C DCD aErrorCannotR_3 ; DATA XREF: boot_linux_from_mmc:loc_88E13300r |
|
ROM:88E1336C ; "ERROR: Cannot read boot image header\n" |
|
ROM:88E13370 off_88E13370 DCD aErrorInvalidBo ; DATA XREF: boot_linux_from_mmc:loc_88E1330Cr |
|
ROM:88E13370 ; "ERROR: Invalid boot image header\n" |
|
ROM:88E13374 off_88E13374 DCD dword_88F2F2FC ; DATA XREF: boot_linux_from_mmc+556r |