I've just identified the address of the Codec_PowerOnInitial in our original FW guys. It's 600278A8. Now it's possible to translate it into C and apply it to our compilation.
Of course, I am not sure whether it will fix the audio issue, maybe there is something else that need to be copied from original firmware.
Code:
Codec_PowerOnInitial
STMFD SP!, {R3,LR}
MOV R0, #0
BL IOMUX_SetI2SType
MOV R1, #0xC
MOV R0, #0xC
BL CodecCommandSet
MOV R1, #0xD
MOV R0, #0xC
BL CodecCommandSet
MOV R1, #0xF
MOV R0, #0
BL CodecCommandSet
MOV R1, #0xA8
MOV R0, #2
BL CodecCommandSet
MOV R1, #4
MOV R0, #4
BL CodecCommandSet
MOV R1, #0
MOV R0, #6
BL CodecCommandSet
MOV R1, #0x22
MOV R0, #8
BL CodecCommandSet
MOV R1, #0x77
MOV R0, #0xE
BL CodecCommandSet
MOV R0, #0
BL Codec_SetVolumet
MOV R1, #0x9F
MOV R0, #0x1E
BL CodecCommandSet
MOV R1, #2
MOV R0, #0x28
BL CodecCommandSet
MOV R1, #0x7F
MOV R0, #0xA
BL CodecCommandSet
MOV R0, #0xA
BL DelayMs_nops
MOV R1, #0xC
MOV R0, #0xC
BL CodecCommandSet
MOV R0, #0xA
BL DelayMs_nops
MOV R1, #0x7F
MOV R0, #0xA
BL CodecCommandSet
MOV R0, #0xA
BL DelayMs_nops
MOV R1, #0x5F
MOV R0, #0xA
BL CodecCommandSet
MOV R0, #0xA
BL DelayMs_nops
MOV R1, #0x1F
MOV R0, #0xA
LDMFD SP!, {R3,LR}
B CodecCommandSet
; End of function Codec_PowerOnInitial
BTW. Knob, and Sid, how does your speaker work? Mine works really badly, and quietly. It's totally useless, unless there is really quiet around. I just wonder if it's my piece issue, or it's normal for this player.
EDIT:
Well, at first I didn't notice that, but this function is exactly the same as in the SDK. It's not the reason of our problem
Perhaps CodecCommandSet is called differently than here just before loading an audio file. What a disappointment

If you have any ideas, which function may be responsible for this, tell me and I'll give another shot.