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