|
|
Wiki > Main > MeizuReverseEngineering (compare)
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Difference: MeizuReverseEngineering (r30 vs. r29)Reverse engineering the Meizu playersM6These are mostly guesses made by looking at the various debug strings in the firmware files and which addresses get accessed in those functions. Memory
*not in the M6SL M6SL? In DFU mode code gets loaded to 0x22000000 on M6SL, and to 0x22020000 on the other players M6SL?, and to 0x22020000 on the other players GPIO
Power systemThe CPU can control its own power by sending a signal to the power manager IC. This means that during power-up it has to quickly let the power manager know it wants to keep receiving power. Using the same signal, the CPU can shut itself (and the rest of the electronics) down. A long press on the play button (M3) or the enter button (M6) causes a quick power-down/power-up sequence, allowing the user to reset the system even when the CPU has completely crashed. Battery charging is done completely in hardware, software can only monitor whether the charger is active or not. I2C?Devices connected to built-in I2C bus:
Devices connected to GPIO-based I2C bus:
ADCThe 10-bit ADC seems to have a full range of 3.00V. The battery voltage is divided by two (through a resistive divider) before entering one of the ADC channels. r32 - 14 Jan 2010 - 17:53:49 - BertrikSikken
Revision r30 - 05 Aug 2009 - 07:51 - BertrikSikkenRevision r29 - 19 Jul 2009 - 09:59 - BertrikSikken Copyright © by the contributing authors.
|