99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ATF里都包括哪些東西呢?

Linux閱碼場(chǎng) ? 來(lái)源:代碼改變世界ctw ATF ? 作者:代碼改變世界ctw ? 2022-06-08 09:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者簡(jiǎn)介

baron,九年手機(jī)安全/SOC底層安全開(kāi)發(fā)經(jīng)驗(yàn)。擅長(zhǎng)trustzone/tee安全產(chǎn)品的設(shè)計(jì)和開(kāi)發(fā)。是國(guó)內(nèi)較早一批做TEE的,對(duì)商用TEE、開(kāi)源TEE研究也比較深入,對(duì)未來(lái)的安全架構(gòu)/安全趨勢(shì)也有著明確的看法...

1、什么是ATF

首先什么是TF-A(ATF)?ATF就是一個(gè)固件, 一段代碼,一個(gè)為armv7-A/armv8-A/armv9-A提供的參考實(shí)現(xiàn)代碼。(注意,這只是參考實(shí)現(xiàn),你也可以不用ATF,用自己寫的一個(gè)固件。)

b06f37a4-e6c0-11ec-ba43-dac502259ad0.png

2、那么ATF里都包括哪些東西呢?

最初的功能很簡(jiǎn)單:

cpu_context的保存和恢復(fù),即: 雙系統(tǒng)的切換

電源管理、PSCI等

但是隨著技術(shù)的發(fā)展,功能也越來(lái)越多,越來(lái)越復(fù)雜,以下列舉了當(dāng)前的部分功能:

安全世界的初始化,例如異常向量表、一些控制寄存器和中斷寄存器

CPU reset和power down的時(shí)序。包括Arm DynamIQ cpu的支持

標(biāo)準(zhǔn)的system IP的驅(qū)動(dòng),例如Generic Interrupt Controller (GIC), Cache Coherent Interconnect (CCI), Cache Coherent Network (CCN), Network Interconnect (NIC) and TrustZone Controller (TZC).

一種通用的SCMI驅(qū)動(dòng)程序, 適用于電源控制接口,例如ARM SYSTEM Control Processor(SCP)

smc處理,using an EL3 runtime services framework

PSCI庫(kù)的支持,用于CPU/Cluster/system的電源管理,這個(gè)庫(kù)集成到了aarch64 el3的runtime中,也適用于aarch32 el3

secure monitor代碼,用于world切換、中斷routing

SPDs for the OP-TEE Secure OS, NVIDIA Trusted Little Kernel and Trusty Secure OS

SecureBoot實(shí)現(xiàn)

預(yù)集成TBB與Arm CryptoCell產(chǎn)品,利用其硬件Root的信任和加密加速服務(wù)。

3、ATF定義的啟動(dòng)模型

ATF將鏡像進(jìn)行了劃分,BL1 BL2屬于啟動(dòng)引導(dǎo)鏡像,BL3屬于runtime鏡像。BL3又分為BL31 BL32 BL33對(duì)應(yīng)的分別是ATF Runtime、REE Runtime、TEE Runtime。

(注:本文是Quick Start,不深入解釋這些概念,請(qǐng)自行理解:BL1 BL2 BL31 BL32 BL33的概念、EL3 S-EL1 NS-EL1的概念)

b0ae77de-e6c0-11ec-ba43-dac502259ad0.png

4、ATF的rt_svc介紹(runtime service)

b0de612e-e6c0-11ec-ba43-dac502259ad0.png

4.1、SPD(opteed)舉例

例如負(fù)責(zé)雙系統(tǒng)切換的SPD,它是 OEN_TOS的RT-Service,它負(fù)責(zé)啟動(dòng)TEE和雙系統(tǒng)切換。

b10927a6-e6c0-11ec-ba43-dac502259ad0.png

補(bǔ)充雙系統(tǒng)切換時(shí)寄存器的保存和恢復(fù)模型( switchcpu_context模型)

b12ec0ba-e6c0-11ec-ba43-dac502259ad0.png

5、ATF參與的多系統(tǒng)交互模型

特權(quán)等級(jí)、security State之間的交互模型,ATF是一段跑在EL3特權(quán)等級(jí)的代碼。如下是一個(gè)特權(quán)等級(jí)、security State之間的切換模型,可以看出所有的交互和跳轉(zhuǎn)都是通過(guò)異常向量表進(jìn)行的。

b15ad8d0-e6c0-11ec-ba43-dac502259ad0.png

異常特權(quán)等級(jí)之間的跳轉(zhuǎn)模型都是通過(guò)同步異?;虍惒疆惓_M(jìn)行的:

b178a37e-e6c0-11ec-ba43-dac502259ad0.png

進(jìn)入ATF的方式觸發(fā)異常:同步異常(不限于smc)、異步異常(irq,fiq,serror)

? 如果是同步異常,那么會(huì)判斷是不是smc調(diào)用觸發(fā)的同步異常,如果是則進(jìn)入跳轉(zhuǎn)ATF中異常向量表中的同步異常程序smchandler64或smchandler32 在該程序中,解析smc id,來(lái)選擇跳轉(zhuǎn)到具體哪一個(gè)rt-svc(runtime service)

? 如果是異步異常,那么一定是觸發(fā)了irq或fiq或serror中斷等,此時(shí)進(jìn)入跳轉(zhuǎn)ATF中異常向量表中的異步異常程序,進(jìn)而跳轉(zhuǎn)到響應(yīng)的中斷處理函數(shù)。

6、ATF如何處理業(yè)務(wù)邏輯的呢

那么ATF里都有哪些業(yè)務(wù)邏輯呢,如何區(qū)分和處理的呢?

當(dāng)有異常進(jìn)來(lái)后,進(jìn)行一些判斷,如您是同步異常還是異步異常? 如果是異步異常,那么你是 dosomething 還是 轉(zhuǎn)發(fā)中斷 ?如果是同步異常,那么你是 dosomething,還是執(zhí)行 RT-Service?

b1c34230-e6c0-11ec-ba43-dac502259ad0.png

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 驅(qū)動(dòng)程序
    +關(guān)注

    關(guān)注

    19

    文章

    861

    瀏覽量

    49102
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70670

原文標(biāo)題:ATF快速掃盲(Quick Start)

文章出處:【微信號(hào):LinuxDev,微信公眾號(hào):Linux閱碼場(chǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何燒錄程序進(jìn)入自己畫的20829板?

    Hi,請(qǐng)問(wèn)如何燒錄程序進(jìn)入自己畫的20829板?可以使用20829EVK的J11來(lái)實(shí)現(xiàn)么?或者有沒(méi)有其它的燒錄工具?
    發(fā)表于 07-01 07:42

    可靠性測(cè)試包括哪些測(cè)試和設(shè)備?

    在當(dāng)今競(jìng)爭(zhēng)激烈的市場(chǎng)環(huán)境中,產(chǎn)品質(zhì)量的可靠性成為了企業(yè)立足的根本。無(wú)論是電子產(chǎn)品、汽車零部件,還是智能家居設(shè)備,需要經(jīng)過(guò)嚴(yán)格的可靠性測(cè)試,以確保在各種復(fù)雜環(huán)境下都能穩(wěn)定運(yùn)行,為用戶提供可靠的使用體驗(yàn)。那么,可靠性測(cè)試究竟包括哪些內(nèi)容
    的頭像 發(fā)表于 06-03 10:52 ?323次閱讀
    可靠性測(cè)試<b class='flag-5'>包括</b>哪些測(cè)試和設(shè)備?

    電子紙標(biāo)簽技術(shù)助力博物館綠色轉(zhuǎn)型

    電子紙標(biāo)簽擁有類紙張的顯示效果,有效彌補(bǔ)傳統(tǒng)說(shuō)明牌字體較小、信息承載有限的不足,專注于提升文博場(chǎng)景觀展便利性與友好度為目標(biāo)。
    的頭像 發(fā)表于 05-30 10:34 ?432次閱讀

    DLP4710EVM I2C指令中的LED current數(shù)值和GUI的mA數(shù)是什么對(duì)應(yīng)關(guān)系?

    1.能否編寫程序,燒錄光柵,然后利用SDK的函數(shù),設(shè)置光柵的投射時(shí)間,I2C命令是什么? 2.I2C指令中的LED current數(shù)值和GUI的mA數(shù)是什么對(duì)應(yīng)關(guān)系?
    發(fā)表于 02-26 06:16

    ADS7864 0~5V在AD編碼是怎么表示的?

    ADS7864如果采用單端輸入,-IN端接內(nèi)部標(biāo)準(zhǔn)電壓2.5V,+IN端接0~5V模擬電壓,請(qǐng)問(wèn)0~5V在AD編碼是怎么表示的?難道是0表示為0000H,5V表示為FFFFH嗎?
    發(fā)表于 01-14 08:02

    企業(yè)AI解決方案包括哪些內(nèi)容

    企業(yè)AI解決方案是一種集成了人工智能技術(shù)的綜合性方案,旨在提高企業(yè)運(yùn)營(yíng)效率、降低成本、優(yōu)化業(yè)務(wù)流程,并提升企業(yè)的整體競(jìng)爭(zhēng)力。那么,企業(yè)AI解決方案包括哪些內(nèi)容?下面,AI部落小編帶您了解。
    的頭像 發(fā)表于 01-10 10:15 ?478次閱讀

    AFE4300 EVM-PDK測(cè)得的阻抗能否存到電腦的excel文件或者txt文件中

    AFE4300 EVM-PDK測(cè)得的阻抗能否存到電腦的excel文件或者txt文件中?另外,AFE4300有6個(gè)電流輸出端口(Iout0~Iout5)和6個(gè)電壓測(cè)量端口(Vsense0~Vsense5),這些端口是否具體對(duì)應(yīng)到人體的四肢
    發(fā)表于 12-30 06:11

    折疊屏2024的新東西、好東西、舊東西

    折疊屏2024的新東西、好東西、舊東西
    的頭像 發(fā)表于 12-21 16:05 ?4308次閱讀
    折疊屏2024的新<b class='flag-5'>東西</b>、好<b class='flag-5'>東西</b>、舊<b class='flag-5'>東西</b>

    FDC2114手冊(cè)說(shuō)的shield和gnd是具體連擊到哪里?

    請(qǐng)問(wèn)手冊(cè)說(shuō)的shield和gnd是具體連擊到哪里?有點(diǎn)搞不明白,做了測(cè)試感覺(jué)沒(méi)效果啊!
    發(fā)表于 12-16 08:03

    LMX2820DBLR_CAL_EN和INSTCAL_DBLR_EN如果不使用即時(shí)校準(zhǔn)是否需要打開(kāi)

    您好,關(guān)于DBLR_CAL_EN和INSTCAL_DBLR_EN如果不使用即時(shí)校準(zhǔn)是否需要打開(kāi)?我看到手冊(cè)DBLR_CAL_EN的默認(rèn)值是1,INSTCAL_DBLR_EN的默認(rèn)值是0,而
    發(fā)表于 11-11 07:11

    INA111BP的Offset Voltage的TYP欄“+-100+-500/G”(uV)表示什么意思

    數(shù)據(jù)手冊(cè)“Offset Voltage”不太會(huì)看。例如 INA111BP的 Offset Voltage的TYP欄“+-100+-500/G”(uV)表示什么意思?望專家前輩指教指教哦
    發(fā)表于 09-23 07:02

    INA118U的封裝是什么?另外紅色框的是什么東西?

    我想問(wèn)問(wèn)INA118U的封裝是什么?另外紅色框的是什么東西?
    發(fā)表于 09-20 13:47

    多封裝的運(yùn)放芯片,沒(méi)有使用的運(yùn)放管腳怎么處理?

    如題,一個(gè)芯片中封裝了多個(gè)運(yùn)放,沒(méi)有使用的運(yùn)放管腳怎么處理?
    發(fā)表于 09-18 08:11

    人員定位系統(tǒng)技術(shù)原理包括哪些方面?一篇弄懂

    如今人員定位系統(tǒng)已經(jīng)得到了廣泛的應(yīng)用和發(fā)展,它為各行各業(yè)人員管理提供了全新的手段和方法,使得企業(yè)管理人員更加智能、高效和安全。那么人員定位系統(tǒng)技術(shù)原理包括哪些方面?我們一起來(lái)看一看。 人員定位系統(tǒng)
    的頭像 發(fā)表于 07-26 15:24 ?898次閱讀
    人員定位系統(tǒng)技術(shù)原理<b class='flag-5'>包括</b>哪些方面?一篇弄懂

    室內(nèi)導(dǎo)航 人員管理 信息推送應(yīng)用多合一云E5定位信標(biāo)

    置身大型綜合體建筑內(nèi),如何方便快速地到達(dá)目標(biāo)位置?怎樣更便捷地接收有價(jià)值的信息?這些既是用戶經(jīng)常遇到的問(wèn)題,同時(shí)也是室內(nèi)場(chǎng)所經(jīng)營(yíng)者所面臨的困境。當(dāng)傳統(tǒng)服務(wù)模式的弊端逐漸被放大,我們期待著更加貼心
    的頭像 發(fā)表于 07-25 09:58 ?500次閱讀
    室內(nèi)導(dǎo)航 人員管理 信息推送應(yīng)用多合一云<b class='flag-5'>里</b>物<b class='flag-5'>里</b>E5定位信標(biāo)