Tutorial SEMC Engineering

Tutorial SEMC Engineering

Baseband pada EMP (Ericsson Mobile Platform) di golongkan menjadi dua kelompok.
Analog Baseband (AB) dan Digital Baseband (DB).
Kedua baseband ini mempunyai tugas dan fungsinya masing-masing.
Analog baseband, sesuai dengan namanya,
bertugas mengolah data-data analog melalui integrasi ADC (Analog to Digital Converter)
dan DAC (Digital to Analog Converter) yang berada didalamnya.

Pada fungsinya yang lain, Analog Baseband juga berfungsi sebagai power management, antarmuka (interface) simcard,
Audio Codec & Amplifier (mic, earphone, loudspeaker), pengelolaan system pencahayaan LED, vibrator, dan antarmuka UART / USB.

Pada platform yang lebih baru, misalnya AB3100 juga di integrasikan EPROM OTP untuk kepentingan pemrograman IMEI.
Kalangan internal SEMC menyebut analog baseband dengan kata sandinya masing-masing. Seperti Vincenne (AB2011), Vincenne2 (AB2012) dan Vera (AB3100).
Sedangkan dikalangan praktisi lebih singkat menyebut sebagai IC power saja.
Digital Baseband di golongkan pada platformnya masing-masing dengan urutan A0, A1, A2, mungkinkah nanti kita akan menjumpai edisi A3 dan seterusnya? Ternyata tidak (terjawab 2011- migrasi besar ke S1/TI/QUALCOMM)
Tutorial SEMC Engineering
image property of Ericsson
Disamping pembenahan code system dan proteksi, baseband yang lebih baru tentunya lebih sarat implementasi fitur-fitur canggih.

Selain core dari prosesor itu sendiri (MCU), juga terdapat fungsi-fungsi pengendali human interface seperti controller untuk keypad dan LCD,
DSP subsytem untuk pengelolaan jaringan, memory controller untuk ic flash maupun ram, I/O controller untuk kepentingan antarmuka GPS, WLAN, bluetooth, infra red, dan masih banyak lagi beberapa implementasi fungsi dan fitur lainnya.
Penamaan internal juga di miliki oleh digital baseband seperti Marita (DB201x), Marika (DB2020), dan Anja (DB3150).

POWER UP!!!

Pada saat ponsel pertama kali di hidupkan (pencet power ON), setelah mendapatkan tenaga dari IC power, segera MCU akan melakukan inisiasi untuk mengeksekusi sebuah program kecil yang tersimpan di dalam ROM. Proses ini di kenal sebagai boot rom. Harap diperhatikan, MCU dan ROM yang dimaksud disini berada dalam satu kemasan (CPU). Selanjutnya boot rom akan melakukan inisisasi EROM yang berada di IC Flash.
Proses perjalanan program code dari MCU ROM ke EROM di kenal sebagai boot loader. Sampai di sini, sudah terjadi 3 proses dalam urutan ritual power up. Ignition > Boot rom > Boot loader > Erom. Untuk diketahui, bahwa ROM memiliki checksum yang dinamis terkalkulasi dengan security pada GDFS.
Jadi bila memasangkan IC flash bekas berikut file backup GDFS sekalipun, maka akan berakhir dengan status simlock yang invalid, dengan indikasi 5 gambar kunci yang menutup pada test menu, ataupun sebuah gagalnya signature yang mengakibatkan ponsel tetap dalam kondisi mati. Hal ini karena parameter simlock pada file backup GDFS yang di miliki adalah identik dengan ROM dari CPU ponsel sebelumnya. Perlu melakukan operasi full GDFS rebuild untuk membuatnya bekerja dengan baik.
Fungsi EROM serupa dengan fungsi BIOS pada komputer. Ia mengatur tugas-tugas awal yang harus di kerjakan oleh CPU. Ringkasan kerja EROM dalam proses power up sebagai berikut:
» A Erom melakukan Inisiasi Hardware : Erom berjalan seperti semua proses yang telah di sebutkan di atas termasuk pengecekan parameter tegangan. Bila dalam proses terdeteksi tegangan sumber daya utama (baterai) tidak mencukupi ukuran persyaratan parameter lowest voltage limit, maka akan memberikan signal tanda berkedipnya lampu indikator low battery. Jika semua baik-baik saja, NEXT…
» B Erom melakukan Inisiasi GDFS, dan melakukan pemeriksaan status security simlock. Adakalanya bila area ini korup, proses power up juga tidak di lanjutkan, dan memberi tanda berkedipnya lampu low battery dengan ritme interval kedip yang berbeda dari sinyal low battery di atas. Pada platform yang lain, ia hanya berhenti dan tidak melanjutkan siklus powering. Bahkan, pada platform PNX5230, bila area ini korup, ia akan memerintahkan CPU untuk menutup perintah service pin! Inilah alasannya kenapa tidak ada solusi untuk kasus security corrupted / damaged di platform PNX5230.
Jika semua baik-baik saja, NEXT…
» C Jika servis pin terdeteksi (UART) maupun USB berikut tombol tertentu di pencet, maka ponsel akan memasuki fase command loop – tertenagai dalam modus pemrograman.
» D Jika servis pin tidak terdeteksi, EROM akan memeriksa status FOTA update dan menjalankannya bila perlu. Next…
» E Last, menjalankan firmware dan melakukan loading semua driver-driver hardwarenya nya. Bila semua baik-baik saja, Powered ON!

Tutorial SEMC Engineering
Tutorial SEMC Engineering
Kenapa pada beberapa kasus, misalnya ponsel dengan layar blank terdeteksi sebagai K700 saat di identifikasi dengan program flasher?

K700 adalah generasi pertama ponsel dengan platform DB2xxx. Nama string K700 ini tersimpan pada area file system sebagai parameter default GDFS template. Metode ini di terapkan secara konstan oleh SEMC pada platform berikutnya.
Lebih detail lagi, tambahan pada proses power up di atas,
E0 » EROM terlebih dahulu melakukan loading default template dari file system ke GDFS ( dengan string name K700).
E1 » EROM melakukan inisiasi fota update (bila perlu), berikut inisiasi driver hardware seperti display, camera, radio, dsb.
E2 » Setelah semua proses inisiasi telah berhasil dilalui dengan baik, barulah ia menuliskan versi ORIGINAL GDFS – phone type, berikut versi firmware yang di miliki. Semua informasi ini bersumber dari main firmware.
E last » Menyala Sepenuhnya

Dan bila karena suatu hal, proses berhenti sebelum tahap E1 berakhir, maka informasi default template yang tersedia pada file system akan tetap berada di parameter GDFS, dengan string phone type sebagai K700.


Question
Kenapa setelah menuliskan script CID update tidak ada perubahan sama sekali setelah mencoba di identifikasi ?
Answer
Silakan di tengok kembali tentang ritual power up pada tahap » D. Sekedar pencet tombol power on dan tunggu beberapa detik agar erom mengeksekusi dirinya menjalankan script perintah update.

Question
Setelah flashing selesai, kenapa versi firmware tidak berubah sesuai dengan versi file yang di programkan pada saat di lakukan identikfikasi?
Answer
Sabar, berikan waktu kepada ponsel untuk mengupdate informasi GDFS dengan sekedar menghidupkannya. Karena sebelum proses E2 berakhir, parameter GDFS adalah semu dan tidak akurat.

Tentang EROM

EROM
Dari uraian di atas, telah kita ketahui bahwa boot rom berada di dalam IC CPU, sedangkan untuk EROM berada di dalam IC FLASH.
Ada 3 kategori status EROM pada EMP. Factory, Research & Development, dan Retail.
Ketiganya di wakilkan oleh sebutan warna. Identifikasinya adalah Blue untuk Factory, Brown untuk Research & Development, dan Red untuk Retail. Pewarnaan ini juga di sebut sebagai “DOMAIN”.

Pada kondisi domain Blue dan Brown, pemodifikasian daerah keamanan masih bisa di lakukan dengan mudah, tanpa butuh program dengan flash loader canggih.
Pembacaan file (read, *****) juga bisa dilakukan pada domain ini dengan gampang. Lain halnya bila ia dalam status Red, semua kemudahan akses security pada domain Blue dan Brown sudah di tiadakan.

Red EROM terproteksi dengan sistem pengamanan yang sangat kompleks. Proteksi tersebut di kenal sebagai kunci otentikasi KIDP96, sehingga untuk melakukan modifikasi kepadanya di perlukan akses maupun metode tersendiri.

Akses khusus yang di maksud adalah sebuah program, sebut saja flasher, yang memiliki kunci otentikasi (auth key) flash loader.
Contoh program pihak di luar SEMC yang memiliki program akses penuh terhadap pemodifikasian EROM adalah produk Cruiser Ultimate Unlocker (1st in the world). Sedangkan untuk metode khusus, yang sempat marak adalah dengan cara melakukan test point pada titik tertentu (solusi ini pertama di perkenalkan oleh Dreambox).
Metode terakhir dan paling ekstrim adalah melepaskan IC flash tersebut, untuk kemudian melakukan pemrograman secara independen melalui external flash programmer dengan menuliskan data EROM berstatus BROWN.

Belakangan SETool telah memiliki akses tersebut. RESET LOADER - demikian the_laser menyebutnya. Ponsel akan kembali pada domain BROWN dengan default CID yang di dukungnya setelah operasi ini.

Telah di bahas sebelumnya, bahwa EROM EMP dirancang untuk melakukan multi stage security check, test keamanan secara berlapis-lapis sebelum mengeksekusi perintah menghidupkan ponsel. Bila ada suatu kesalahan dalam proses validasi security ,
maka power up sequence tidak di lanjutkan.
Ada kalanya ia akan menampilkan pesan pertanda melalui berkedip-kedipnya lampu indikator power layaknya ponsel kehabisan batere, yang lebih populer dengan sebutan “RED BLINK”.
Hal ini biasa di akibatkan oleh parameter security GDFS yang tidak valid, seperti kasus IMEI MISSMATCH dan mungkin juga rusaknya data GDFS atau korupnya area EROM itu sendiri.
Terkadang ditemui pula area EROM rusak dengan sendirinya tanpa alasan yang jelas.

Disamping status warna, ada satu hal lagi yang melekat pada EROM berhubungan dengan tingkat security, yaitu CID (Customer Identity number). Pihak SEMC sering kali melakukan update berkala pada area ini.
Angka yang semakin tinggi, menunjukkan revisi EROM dari bugs pada versi sebelumnya dan perbaikan dengan tingkat keamanan yang semakin baik.
Beda CID, berbeda pula pemakain flash loader dari flasher yang di gunakan. CID pada generasi yang lain di sebut sebagai AID, contohnya pada platform ODM dan PDA baru.

CID ada dua macam, satu di sebut OTP (One Time Programmable) CID dan satunya lagi di sebut FLASH CID.
Flash CID inilah yang bisa di ubah-ubah, baik upgrade, downgrade maupun di koneversi status domainnya.
Sedangakan OTP CID, dituliskan secara bersamaan dengan OTP IMEI saat chip dengan empty OTP di program. Proses penulisan OTP disebut juga dengan proses empty fill ataupun empty board programming.
Tentang OTP chip, seperti sebutannya “one time”. Pemodifikasan setelahnya adalah mustahil di lakukan, karena arsitektur dari ic tersebut memang di rancang demikian, dan ini adalah sebuah fitur dari chip tersebut. Segala sesuatu yang sudah tertulis di dalam OTP, tidak bisa di hapus lagi.

EROM Repair / Konversi EROM

EROM Repair / Konversi EROM
Ada beberapa cara untuk memperbaiki area erom yang telah rusak maupun melakukan konversi flash CID.
Pada ponsel generasi ARM yang lebih awal, seperti J300, K300, K700, dan sebagainya, masih bisa menggunakan tombol Recovery dengan sekali pencet.
Program akan mencari tahu informasi default yang berada di IC flash, dan akan menuliskan default template dari flasher pula,
metode yang lebih di kenal dengan flash recovery image sesuai informasi OTP yang di perolehnya.

Ada beberapa kasus EROM cukup sulit di perbaiki.
Cara klasik yang cukup efektif, contohnya adalah dengan menggunakan metode TEST POINT. Prinsipnya sederhana saja.
Tegangan yang mencatu ic flash, di tiadakan dengan cara menghubungkannya ke Ground. Proses pengosongan tegangan di lakukan sebelum prosesor menginisiasi boot rom untuk mengakses EROM.
Otomatis, semua proteksi dari erom lumpuh total. Sehingga saat flasher hendak mengkases boot loader, ia tidak bisa mendeteksi keberadaan IC flash yang terpasang.
saat inilah di masukkan custom loader dari sang flasher.

Di sini, program akan memerintahkan operator (anda) untuk segera melepaskan test point,
sehingga ic flash kembali mendapatkan catu daya, dan EROM repair pun bisa dilanjutkan dengan sempurna.

Di generasi yang lebih baru, DB2012 Marita Respin Dan DB2020, ada dua langkah proses test point.
Cara ini tidak lagi menggunakan metode pengosongan tegangan ic flash, namun justru sebaliknya.
Ia memberikan suntikan tegangan interupsi yang seharusnya telah kosong menjadi tetap tersuplai.
Proses pertama adalah interupsi pada reset tegangan boot loader untuk memasukkan bypass loader,
dan proses kedua adalah pemrograman “custom boot loader” sekaligus pemrograman area EROM dengan domain BROWN.

Namun kini semenjak hadirnya RESET LOADER pada SETool,
semua tantangan menarik tersebut telah di tiadakan dan berakhir pada versi 040.
Tentang kesaktian fitur repair erom canggih itu, tidak peduli apapun platformnya, berapa CID nya,
semua proses test point rumit tersebut tergantikan dengan tombol sekali pencet : Recovery via Signed Mode.

Kecuali senang bereksperimen dan berekplorasi, adalah hal yang membanggakan bisa menguasai metode EROM repair via test point,
meskipun dari pandangan yang lain hal itu adalah membuang waktu saja.

Perbaikan erom pada semua ponsel berbasis A1 dan semua kategori digital base band yang ada di dalamnya:
DB2000, DB2010, DB2012, DB2020, DB2030 dan DB2001 PDA di kenal dengan operasi RESET PROCEDURE.
Pada DB2000 dan DB201x flash CID secara default akan di konversi ke BROWN CID51.
Untuk DB2020 / DB2030 dan DB2001 PDA akan di konversi ke BROWN CID49.

Maka setelahnya, yang perlu di perhatikan adalah tentang hasil akhir CID dari file erom yang hendak di programkan ke dalam ponsel.
Flash CID tidah boleh lebih rendah dari OTP CID. Meskipun begitu, perhatikan pula antara ketersediaan CID firmware dan CID hasil akhir dari pemrograman EROM.
Akan merepotkan di kemudian hari bila hanya tersedia firmware yang memiliki dukungan pada CID50 sedangkan hasi akhir erom pada ponsel adalah CID53.

Pada generasi A2, EROM lebih familiar di sebut sebagai SEMC Boot. Erom recovery pada generasi A2 bisa dilakukan dengan sekali klik melalui tombol “Unlock/Repair”.
Semua file yang akan di programkan untuk tujuan operasi dengan target SEMC Boot telah di atur oleh internal program SETool.
Harap di garis bawahi, upgrade-downgrade CID pada generasi A2 tidak bisa di lakukan, ponsel A2 hanya mendukung operasi Convert CID.
Dead end: CID di atas 53

Tidak ada konversi EROM pada ponsel dengan basis S1. Indikasi EROM yang rusak pada platform ini salah satunya adalah ponsel tidak bisa di kenali (Identify) oleh program.
Operasi perbaikan hanya bisa di lakukan melalui interface UART (kabel COM) dengan aturan flash loader tersendiri.

By: G-BlueZ

No comments:

Post a Comment

 
Loading

Add to Google Reader or Homepage
Select Language
English Arabic Chinese Simplified Russian
©Copyright 2010 HANDPHONE GSM CDMA All Right Reserved Personal Template Design January,24,2010