分类:
2008-11-17 18:08:23
How to build NAND_NAND_NAND image and run in NAND_NAND_NAND platform
概述:
本文主要介紹如何包NAND booting的image, 以及將其燒錄到EVB板上跑起來的方法和步驟.
關鍵詞:
NAND Booting
要使程式可以在NAND_NAND_NAND平台上跑起來, 需經過以下幾個步驟: 1. 設定image文件配置, 以及build image; 2. 將image燒錄到我們的EVB上; 3. 在EVB上運行程式. 下面詳細介紹.
1. 設定build image配置及build image.
我們的DPF提供4种Flash partition的平台去跑程式: (1) NAND_NAND_NAND, 即rom in NAND, private data in NAND, public data in NAND; (2) NOR_NAND_NAND, 即rom in NOR, private data in NAND, public data in NAND; (3) NOR_NOR_NAND, 即rom in NOR, private data in NOR, public data in NAND; (4) NOR_NOR_NOR, 即rom in NOR, private data in NOR, public data in NOR. 這裡僅介紹NAND_NAND_NAND平台, 其他可參考文檔Smedia DPF How to-Setup and build and run.doc.
修改config.h文檔如下.
#define SMTK_CFG_NAND_ENABLE
//#define SMTK_CFG_NOR_ENABLE
//#define SMTK_CFG_PRIVATE_IN_NOR
#define SMTK_RESOURCE_DYNAMIC_LOADING => Load data from NOR/NAND
再參考文檔Smedia DPF How to-Setup and build and run.doc中的説明以及平台硬件配置去設定build image.
2. 燒錄image到EVB.
这一過程用到的tool有NfEraser和NfBootWriter. 首先將EVB透過PCI卡連接PC(注意EVB的Boot設定: GPIO[1,0]為1, 1, 即Co-Operative Mode, GPIO2為1, 即PCI I/F Mode; 然後打開Mobile TestGUI.exe去偵測EVB-PCI是否連接正確; 第三步是用NfEraser去erase NAND Flash, 再用NfBootWriter作FTL format,記得要選support NAND boot, 及使用format and write image的選項去Write之前build好的dpf.bin檔, 最後把smediadata資料夾拷貝到private partition.
3. 在EVB上運行程式.
这里要注意兩點: (1) 調EVB的jump, 將GPIO[1,0]設定為1, 0,即NAND Boot模式; (2) 查看EVB的R351 R350 R352 R353, 使用的NAND Flash為large的話,在R350 R352要上電阻, small的話,在R350 R353要上電阻.
重新上電開機, DPF就可以從NAND booting了.