MTK Chipset Boot Sequence
MTK Chipset Boot Sequence
=============================
MTK CPU သံုးထားတဲ့ ဖုန္းတစ္လံုးကို USB
ခ်ိတ္လိုက္မယ္ဆိုရင္ -
1. CPU က သူ႔ကိုယ္သူ initialize လုပ္ပါတယ္
2. SRAM (Static Random Access Memory ) ထဲမွာ႐ွိတဲ့ Boot ROM ကို Run ပါတယ္ .
Boot ROM က ဘာေတြလုပ္ေပးတာလဲ ?
-----------------------------------------------------------
a. Internal flash storage (emmc) ကို initialize လုပ္ပါတယ္
b. Boot ROM ရဲ႕ command တစ္ခုျဖစ္တဲ့ START command ကို 150ms ၾကာေအာင္ ေစာင့္ပါတယ္
အျခား အေႏွာက္အယွက္ မ႐ွိဘူးဆိုရင္ 150ms ျပည့္တာႏွင့္ Emmc ထဲက Preloader (Bootloader) ကို SRAM ေပၚတင္ၿပီး Run ပါတယ္
c. Preloader ကေနမွ အျခား booting process ေတြကို ဆက္လုပ္ပါတယ္ .
(ေျပာရရင္ ဖုန္း Power ပြင့္လာတယ္ ေပါ့ ) .
Boot ROM မွာ ဘာ command ေတြ႐ွိသလဲ ?
---------------------------------------------------------------
1. START
2. WRITE
3. 32bit Write
4. READ
5. 32bit READ
6. CheckSum
7. Jump
8. Version
Downloading Process
====================
MTK Device တစ္ခု USB or Uart ႀကိဳးနဲ႔ခ်ိတ္လိုက္မယ္ဆိုရင္ BootRom ရဲ႕ Start Cmd ကအလုပ္လုပ္သြားပါတယ္ . ဒီအေျခအေနမွာ Device က 150miliSeconds ၾကာေအာင္ေစာင့္ေနပါတယ္ . USB or Uart ကေန ေနာက္ထပ္ data / cmd ေတြမလာေတာ့ဘူးဆိုရင္ Emmc ထဲက preloader ကို SRAM ေပၚတင္ၿပီး Booting processes ေတြကို စလုပ္ပါတယ္ .
(ဒီအဆင့္မွာ downlaod mode ဝင္မယ္ဆိုရင္ flashtool က DA (Download Agent )ကိုသြင္းလိုက္ပါတယ္ DA ကိုသြင္းၿပီးတာနဲ႔ Device က flash mode မွာ ၿငိမ္သြားပါၿပီ )
ၿပီးသြားရင္ ကိုယ္လုပ္မယ့္ အေျခအေနေပၚမူတည္ၿပီး Read , Write , Jump Command ေတြကို Flash Tool ကေန ပို႔ပါတယ္ . Bootrom ကေနတစ္ဆင့္ DA ကို ျပန္ခိုင္းၿပီး Firmware ေရးတာ , ျပန္ထုတ္တာ ေတြလုပ္ပါတယ္
CheckSum ကေတာ့ Lenovo ေတြမွာပါတဲ့ DA/DL all with check sum ပါ
Flash Data area တစ္ခုလံုးရဲ႕ logical XOR ကို တြက္ေပးတာပါ .
Version က ဒီ Bootrom.က Security Mechanism ကိုသံုးထားလားမသံုးထားလားကိုစစ္ေပးတာပါ . Bootloader Lock လိုမ်ိဳးေပါ့
ေရးသားသူ - Naing Lynn Kun (M3)
No comments