Android系統定制——Download Android System 及加載system鏡像文件


定制android系統(配置及相關系統的鏡像文件),具體可參考:Driver_All_in_One_V1.0——MT6735_6753.pdf文檔,特別需要理解的是Download部分。

與之對應的軟件是:Smart Phone Flash Tool,一般是在菜單欄的Download部分進行選擇操作。

Download-agent(下載代理):選擇 \升級固件與升級固件的工具\SP_Flash_Tool_exe_Windows_v5.1536.00.000 文件(通常不用特別選擇,使用默認的即可)

Scatter-loading File(分區加載文件):\\s4.y\jenkins_share_2T\debug\k86s7_KST-T5\S1.00\KST-T5_H3.1_S1.k86s7.00目錄中的 MT6735_Android_scatter.txt 文件

選擇Download Type:三種方式可供選擇,Format All + Download,Firmware Upgrade(固件更新),Download Only;一般默認地選擇第二種Firmware Upgrade。

Scatter-loading File 分散加載是ARM連接器提供的一個機制,該機制可以把一個可執行鏡像文件(即:.bin文件)分隔放置到內存的不同獨立段。如下分析 MT6735_Android_scatter.txt 文件內容:

partition_index: SYS0

linear_start_addr: 0x0 physical_start_addr: 0x0 partition_size: 0x40000 region: EMMC_BOOT_1

partition_index: SYS1

linear_start_addr: 0x0 physical_start_addr: 0x0 partition_size: 0x80000 region: EMMC_USER

partition_index: SYS2

linear_start_addr: 0x80000 physical_start_addr: 0x80000 partition_size: 0x300000 region: EMMC_USER

partition_index: SYS3

linear_start_addr: 0x380000 physical_start_addr: 0x380000 partition_size: 0x500000 region: EMMC_USER

等等。

Firmware 固件指的是指寫入EROM(可擦寫只讀存儲器)和EEPROM(電可擦可編程只讀存儲器)中的程序(硬件的升級,主要是存儲硬件的升級,導致能夠重復刷寫,讓固件得以修改和升級),也就是設備內部保存的設備“驅動程序”;通過固件,操作系統才能按照標准的設備驅動實現特定機器的運行動作。

固件擔任着一個系統最基礎最底層的軟件工作(或者稱為神經中樞),比如:BIOS 基本輸入和輸出系統。在硬件設備中,固件就是硬件設備的靈魂,因為一些硬件設備除了固件以外沒有其他軟件組成,因此固件就決定着硬件設備的功能及性能。

Image下載過程

其中,需要導入到系統中的文件包括以下幾個部分:

這些文件的類型如下:

在MPCore中,每個ARM的處理器一開始的記憶體位置都是0x00000000,通常我們可以有兩種方法提供啟動程序代碼:1. NOR Flash;2. Boot Rom;但是NOR Flash存儲成本較高。每個MTK BBC都內嵌有Boot ROM,用於儲存簡單的啟動程序。復位時如果boot引腳被拉低,內部Boot ROM則被選擇。Boot ROM里面存儲着一個通過串口下載的小程序,此特性可用於下載或工廠測試。

默認情況下,Boot ROM根據接收到的數據響應其處理。Boot ROM和Host之間的通信有握手協議。以下是Boot ROM所支持的命令:

系統啟動流程:

Image加載過程:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM