日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[ATF]-MTK:一篇文章了解ATF原理

發布時間:2025/3/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [ATF]-MTK:一篇文章了解ATF原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

關鍵詞: Non-cacheable,Cacheable, non-shareable,inner-shareable,outer-shareable, optee、ATF、TF-A、Trustzone、optee3.14、MMU、VMSA、cache、TLB、arm、armv8、armv9、TEE、安全、內存管理、頁表…

快速鏈接:
.
👉👉👉 個人博客筆記導讀目錄(全部) 👈👈👈

文章目錄

        • 1、ARMv8的軟件結構
        • 2、ATF的編譯
        • 3、ATF啟動
        • 4、跳轉到ATF的兩種方式: 中斷和smc
        • 5、ATF rt_svc(smc的劃分)
        • 6、sip/tos的調用
        • 7、sip/tos的業務劃分

環境 : armv8的MTK芯片, ATF v1.6版本

1、ARMv8的軟件結構

(1)、armv8架構下ARM官方的軟件框圖

(2)、armv8架構下我們常用的軟件框圖

(3)、軟件框圖介紹–以指紋為例

2、ATF的編譯

(1)、編譯的命令

  • make -C $DIRPATH RESET_TO_BL31=1 PLAT=xxxx clean
  • make -C $DIRPATH RESET_TO_BL31=1 PLAT=xxx xxxx_VDK=0 xxxxxx=0
    xxxxxx=0 HIGHADDR_DEVICE=1 all

(2)、lds文件,程序的入庫
在lds文件中,規定的ATF鏡像的起始地址

查看ATF源碼可知,有bl1、bl2、bl31等lds,由于我們編譯選項選擇了RESET_TO_BL31=1,所以呢,程序是從bl31啟動的,也就拋棄了前面的lds(bl1、bl2)

  • ./bl1/bl1.ld.S
  • ./bl2/bl2.ld.S
  • ./bl31/bl31.ld.S

(2)、ATF內存地址

  • TZRAM_BASE是ATF的內存地址
  • 前面的0x1000、ATF、TEE共用TARAM_BASE這段內存


這里也畫了張圖,說明下TZRAM地址

在linux kernel中要reserved出TZRAM地址,防止被其它人使用

3、ATF啟動

(1)、ATF的啟動,從lds的入口開始
ATF中沒有MMU,物理地址等于虛擬地址, 所以生成的匯編代碼的地址,一定在給鏡像分配的地址范圍內

(2)、ATF的啟動流程

(3)、ATF(bl31)啟動時都干了啥

  • 1、初始化幾個系統寄存器
  • 2、初始話TEE線程向量表
  • 3、電源管理相關的初始化
  • 4、save/restore寄存器功能:定義了一個全局數組, 用于保存secure或normal的寄存器
  • 5、一些其它的driver初始化

(3)、以android為例,詳細的系統啟動流程

4、跳轉到ATF的兩種方式: 中斷和smc

SOC reset之后,除bootrom–>pl—>atf之外,PC再次進入ATF的方式有兩種 : smc和中斷

  • 如果是smc,則會觸發同步中斷,進入同步中斷處理程序,在該程序中會調用rt_svc(runtime service)
  • 如果是irq/fiq等,則會觸發異步中斷,進入異步中斷處理程序 ,在該程序中調用注冊的中斷處理程序
    注 : 第2種,一般也沒有使用

5、ATF rt_svc(smc的劃分)

rt_svc是根據SCC文檔中的smc type來定義的.目前常用的只有 : sip和tos

6、sip/tos的調用

(1)、linux kernel中的sip調用

(2)、ATF中的sip響應

(3)、linux kernel中的tos調用

(4)、ATF中的tos響應

7、sip/tos的業務劃分

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的[ATF]-MTK:一篇文章了解ATF原理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。