2008年11月11日 星期二

花了一天trace DownloadImage function

11/10 花了一天trace整個原本的EBOOT download流程以及使用EVM來看下載流程中的log檔

當EVM開機後, 用 Samsung 6410附的 Dnw.exe, connect to uart, 跳出一個download選單, 這時候先下載EBOOT.nb0, 讓mainmenu可以出現 這時候選 6 (NAND writable) 然後用他內附的 usb driver 去下載 flash.bin (by UBoot, means usb boot).

而看程式碼的過程中, main function 會先讓blcommon呼叫一些OEM該要implement的function (OEM_開頭的), 過程簡單來說 這pc端下載軟體會先將 flash.bin 下載到SDRAM中, 然後在EBOOT中
解開 bin 格式的(hdr: B00FF\x0A) 然後在一段一段(record) 寫到 nand中(by block)

DownloadImage@blcommon.c 就是在解開bin格式檔案 一段一段寫到SDRAM中
OEM_Launch@main.c 就是將這些解開來的raw檔案 一個一個 block寫到NAND上

簡化來說就這樣子

沒有留言: