A fórumon érkezett egy kérés, hogy írjak pár szót az nvflash linux alatt történő használatáról. Ebben a bejegyzésben szeretném közelebbről körbejárni ezt a témát, útmutatást adva linux-ot használó fórumtársaimnak.
Az itt leírtak végrehajtása komoly működésbeli problémákat okozhat a telefonban, illetve a garancia elvesztésével járhat. Mindenki csak saját felelősségére fogjon neki.
Mi az nfvlash
Az nvflash egy segédprogram, melynek segítségével az Nvidia Tegra2 alapokon nyugvó platformokat (például az LG Optimus 2X telefon) lehet flash-elni.
Ahoz, hogy az nvflash programmal hozzáférjünk a készülék memóriájához, APX móda kell váltani, melyet O2X esetében úgy érhetünk el, hogy az aksit kivéve
nyomva tartjuk a hangerő fel és le gombokat, majd csatlakoztatjuk az USB kábelt. Az APX mód az un. BootROM-ban van tárolva, tehát nem lehet megváltoztatni, illetve
véletlenül felülírni. Ebben a módban a készülék csak néhány alap parancsot képes elfogadni amivel alacsony szinten tudjuk módosítani (flash-elni) a belső memóriák (partíciók) tartalmát.
Milyen fájlok kellenek, hogy használni tudjuk az nvflash programot
A következő fájlok kellenek, hogy biztonságosan tudjuk használni az nvflash programot
Konfigurációs fájlok:
E1108_Hynix_512MB_H8TBR00U0MLR-0DM_300MHz_final_emmc_x8.bct - Ez egyfajta készülék konfigurációs állomány, RAM konfiguráció, stb.
eks.dat - ODM adatok, készülék specifikus adatok
fastboot.img - Bootloader
partitions.cfg - Particiók konfigurációja
Partíciók:
lgdrm.img - LG DRM partíció
misc.img -
recovery.img - recovery partíció
sdint.img - belső SD kártya tartalma
system.img - system partíció
boot.img - kernel
A flash-elés menete
Linux alatt szerencsére nem kell foglalkoznunk driver telepítéssel. Ez a leírás Ubuntu 12.04.1 32bit linux-on készült.
1. Csatlakoztassuk a készüléket APX módban. Linux alatt az lsusb paranccsal tudjuk ellenőrizni, hogy sikerült-e:
# lsusb
Bus 003 Device 014: ID 0955:7f20 NVidia Corp.
2. Az nvflash parancsot root-ként kell kiadni, hogy hozzá tudjon férni a megfelelő interfészekhez.
sudo ./nvflash --bct E1108_Hynix_512MB_H8TBR00U0MLR-0DM_300MHz_final_emmc_x8.bct --setbct --configfile gb-partitions.cfg --create --bl fastboot.img --odmdata eks.dat --go
Ez a parancs például a gb-partitions.cfg fájlban található módon fogja "telepíteni" az img képfájlokat.
3. Ha sikeresen kegtörtént a flash-elés, akkor a telefon újra fog indulni. Valószinűleg egy bootloop-ot fogtok látni, de semmi gond. Egyszerűen válasszátok le az USB kábelt, rakjátok be az aksit és indítsátok el a telefont.
Egyéb tudnivalók
- Az nvflash programmal különálló partíciókat is lehet flash-elni. Jó példa erre például egy custom recovery telepítése.
sudo ./nvflash --bct E1108_Hynix_512MB_H8TBR00U0MLR-0DM_300MHz_final_emmc_x8.bct --bl fastboot.bin --download 14 recovery.img
- Az nvflash a Baseband-et (BB) nem frissíti ezért azt külön kell megcsinálni smartflash-el
- Az nvflash full wipe-ot csinál, tehát érdemes előtte lementeni az adatainkat