TF-A 不同啟動階段
FSBL:First stage boot loader,第一階段啟動文件
SSBL:Second stage boot loader,第二階段啟動文件
TF-A 分為不同的啟動階段,按照鏈式結構依次啟動,ATF 代碼啟動流程如圖所示:
當芯片復位以后首先運行 bl1 代碼,bl1 一般是芯片內部的 ROM 代碼,bl1 主要工作就是將外置 Flash 中的 bl2 固件加載到指定的RAM 中,然后跳轉到 bl2 部分。
bl2 為安全啟動固件,bl2 會將剩余的三個啟動階段 bl31、bl32 和 bl33 對應的鏡像文件加載到指定的內存中。比如 bl32中的安全操作系統(OP-TEE),bl31 中的 EL3 運行時固件(Runtime Firware),bl33 中的 uboot。bl2將這些固件加載完成以后就會啟動相應的固件,也就是進入到第三啟動階段。
TF-A 啟動流程就是:bl1 -》 bl2 -》 (bl31/bl32/bl33)。注意,bl31、bl32 和 bl33
對應的鏡像不需要全部都有,但是 bl33 一般是必須的,因為 bl33 一般是 uboot,這個是很重要的!
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
相關推薦
求助大佬,
我用Yocto構建了STM32MP157的鏡像文件,但我需要更改和移植TF-A和U-BOOT來適配我的板子,
我按照它正點原子教程里更改了.bl2和創建了新的.dtsi設備樹文件,但
發表于 03-29 08:01
1、什么是ATF首先什么是TF-A(ATF)?ATF就是一個固件, 一段代碼,一個為armv7-A/armv8-A/armv9-A提供的參考實現代碼。(注意,這只是參考實現,你也可以不
發表于 06-15 16:57
我已將 TF-A 放入詳細打印中,導致打印出有關 BSEC 訪問的信息。但是 TF-A 與 U-boot 的打印輸出顯示了不同的信息,或者至少是令人困惑的信息。是什么賦予了?(TF-A 2.6-r1
發表于 12-01 07:30
我有一個基于 stm32mp157f 的定制板。(因此,有自定義設備樹。)我目前在 TF-A 中看到一個我無法解釋的異常。INFO: Reset reason (0x14):INFO:Pad
發表于 12-07 06:34
使用沒有 SDMMC 代碼的 FIP 收到此錯誤,我收到錯誤can not erease FIP目標我需要為 157F-DK2 工作進行最基本的 sp_min 設置。ST 和 ARM TF-A 有很多演練;我想要一個真正有效的。
發表于 12-08 07:40
內核控制臺。如果我在 tf-a 和 u-boot dts 中嘗試相同的修改,在啟動時我會看到從 uart4 開始的日志,但此時它會阻塞Preparing exit to normal worldNo serial driver found我也應該修改一些引導環境嗎?
發表于 12-19 06:23
能夠通過 USB-OTG 加載 TF-A 圖像并運行它,但之后 USB-OTG 連接停止工作。來自 TF-A 的最后一條消息是:“信息:DFU USB 啟動……”在 U-Boot 中手動運行
發表于 12-20 07:00
我正在開發一個基于 STM32mp153 MPU 和 Linux 操作系統的項目。我已經配置了 TF-A 模塊來管理時間戳篡改。當篡改事件發生時,它會在標準輸出中報告。我想將 TF-A 檢測
發表于 12-23 08:56
在我們的定制板中,我們使用 I2C1 來控制和配置 STPMIC1。我想在 TF-A 中使用 I2C1,這樣 PMIC 就可以配置為在引導期間為 DDR 供電。TF-A 默認不支持 I2C1,但
發表于 01-16 08:19
好,并以 100% 完成,但稍等片刻,我就遇到了錯誤。似乎 TF-A 在加載后崩潰或無法啟動。我正在尋找原因以及如何解決。附件是我在編程器中使用的 TSV 文件。我正在使用 EcoSystem 4.1.0。
發表于 02-01 07:31
、 u-boot 、根文件系統刷入 SD 卡。現在,我想在不使用 USB(直接從 Host Linux PC)的情況下將圖像閃存到 SD 卡。有什么方法可以在不使用 USB和 STM32CubeProgrammer 的情況下將 TF-A 、 u-boot 、根文件系統閃
發表于 02-03 10:40
是否可以從 TF-A 或 uboot 加載/啟動 Cortex-M4?對于我們的用例,我們希望 Cortex-M4 中的 RTOS 盡快運行。在 linux 完成啟動之前。
發表于 02-07 06:51
大量的嵌入式設備使用 ARM 為核心的芯片,為了保證安全 ARM 推出了 Arm Trusted Firmware 的可信固件,簡稱 TF-A。它是一個開源的軟件,最早是用在 Armv8-A。它
發表于 09-11 16:25
?727次閱讀
bl 1 bl 1 是 TF-A 的第一個啟動階段,芯片復位以后就會運行 bl1 鏡像,TF-A 提供了 bl1 源碼。但是,實際上 bl1一般是半導體廠商自己編寫的內部 Boot R
發表于 09-11 16:59
?1371次閱讀
TF-A 移植 當我們實際做產品的時候我們的硬件平臺肯定會和芯片原廠的有區別,比如 DDR 容量會改變,自己的硬件沒有使用到官方開發板所使用的 PMIC芯片等等。因此這里就涉及到將半導體原廠提供
發表于 09-11 17:04
?776次閱讀
評論