在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

code層面 ATF中bl1的啟動

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-11-07 15:53 ? 次閱讀

系統上電之后首先會運行ChipRom,之后會跳轉到ATF的bl1中繼續執行。bl1主要初始化CPU、設定異常向量、將bl2的鏡像加載到安全RAM中,然后跳轉到bl2中開始運行。
bl1的主要代碼存放在bl1目錄中,bl1的鏈接文件是bl1/bl1.ld.s文件,該文件指定bl1的入口函數是bl1_entrypoint。

AArch32的該函數定義在bl1/aarch32/bl1_entrypoint.S文件中,AArch64的該函數定義在bl1/aarch64/bl1_entrypoint. S文件中。bl1的執行流程如圖所示。

圖片
bl1執行流程

bl1_entrypoint函數說明

bl1_entrypoint函數主要完成ARMv8架構中EL3執行環境的基礎初始化、設定異常向量表、加載bl2的鏡像文件到內存中并進行跳轉到bl2繼續執行。該函數的內容如下:

func bl1_entrypoint

        /*  EL3級別運行環境的初始化,該函數定義在include/common/aarch64/el3_common_macros.S文

        件中*/

            el3_entrypoint_common           

                _set_endian=1               

                _warm_boot_mailbox=! PROGRAMMABLE_RESET_ADDRESS           

                _secondary_cold_boot=! COLD_BOOT_SINGLE_CPU                

                _init_memory=1              

                _init_c_runtime=1           

                _exception_vectors=bl1_exceptions

            bl  bl1_early_platform_setup  //調用bl1_early_platform_setup函數完成底層初始化

            bl  bl1_plat_arch_setup        //調用bl1_plat_arch_setup完成平臺初始化

            bl  bl1_main                     //調用bl1_main函數,初始化驗證模塊,加載下一階段的

            image到RAM中

            b   el3_exit                     //調用el3_exit函數,跳轉到下一個image(bl2)

        endfunc bl1_entrypoint

el3_entrypoint_common函數執行時帶入的參數包括大小端標識、屬于冷啟動還是重啟操作、是否是從核的啟動、是否需要進行內存初始化、是否需要建立C語言運行環境(棧初始化)、異常向量表地址注冊等。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9322

    瀏覽量

    375609
  • 函數
    +關注

    關注

    3

    文章

    4372

    瀏覽量

    64369
  • Code
    +關注

    關注

    0

    文章

    70

    瀏覽量

    15737
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    【NanoPi M2試用體驗】+SD卡啟動BL1拷貝BL2到DDR2運行

    裸機程序SD卡啟動BL1拷貝BL2到DDR2運行;代碼的拷貝會用到一些指針函數,第一個參數為SD卡存放BL2的開始BLOCK,第二個參數
    發表于 06-11 17:03

    自制s5pv210啟動uboot的BL1代碼

    自制s5pv210啟動uboot的BL1代碼
    發表于 02-10 23:21

    關于iTop4412 iROM階段啟動流程簡析

    BL1讀取啟動模式寄存器判斷是從哪個設備上啟動的,然后從這個設備讀取BL2到SRAM里面,然后檢查SRAM
    發表于 04-21 11:45

    關于TF-A(ATF)固件的基本知識詳解

    ATF定義的啟動模型ATF將鏡像進行了劃分,BL1 BL2屬于啟動引導鏡像,
    發表于 06-15 16:57

    請問一下RK3399芯片啟動需要像三星一樣的bl1

      請問一下RK3399芯片啟動需要像三星一樣的bl1嗎?求大神解答
    發表于 07-11 09:32

    S32g如何在ATF啟用安全啟動

    /cortexa53-wrs-linux/atf-s32g/2.5-r0/build/batman/release/bl2/bl2 .elf] 錯誤 1 原來的 BSP 版本似乎不支持
    發表于 04-03 07:12

    ls1046a如何查看BL1 LOG?

    BL1 嵌入 硬件(BootROM + PBLcommands),平臺未初始化。它無法查看日志。
    發表于 04-10 07:36

    TF-A的不同啟動階段有哪些

    不同的啟動階段,按照鏈式結構依次啟動ATF 代碼啟動流程如圖所示: 當芯片復位以后首先運行 bl1 代碼,
    的頭像 發表于 09-11 16:54 ?1324次閱讀
    TF-A的不同<b class='flag-5'>啟動</b>階段有哪些

    ATF啟動流程介紹

    一、BL32(TEE OS)的準備 ATF啟動流程 ATF流程 ATF啟動實現分為5個步驟:
    的頭像 發表于 11-02 17:51 ?1633次閱讀
    <b class='flag-5'>ATF</b><b class='flag-5'>啟動</b>流程介紹

    啟動(Cold boot)流程及階段劃分

    restart--冷啟動 reset--熱啟動 ATF啟動實現分為5個步驟: ? BL1 - AP Trusted ROM,一般為Boot
    的頭像 發表于 11-07 15:17 ?3539次閱讀
    冷<b class='flag-5'>啟動</b>(Cold boot)流程及階段劃分

    ATF啟動過程介紹

    ATF啟動過程根據ARMv8的運行模式(AArch32/AArch64)會有所不同,但基本一致。 在AArch32是不會去加載bl31而是將EL3或者Monitor模式的運行代碼保
    的頭像 發表于 11-07 15:48 ?1729次閱讀
    <b class='flag-5'>ATF</b>的<b class='flag-5'>啟動</b>過程介紹

    ATFbl2的啟動

    bl2_entrypoint函數最終會觸發安全監控模式調用(smc) ,通知bl1將CPU的控制權限轉交給bl31,然后執行bl31。 該函數會執行 ? 平臺相關的初始化、 ? 獲取
    的頭像 發表于 11-07 15:59 ?1207次閱讀
    <b class='flag-5'>ATF</b><b class='flag-5'>中</b><b class='flag-5'>bl</b>2的<b class='flag-5'>啟動</b>

    ATFbl2到bl31的跳轉介紹

    數之后,系統將跳轉到中斷處理函數(smc_handler64)繼續執行。該函數定義在bl1/aarch64/bl1_exception.S文件。 該函數最終通過判定安全監控模式調用的類型(在
    的頭像 發表于 11-07 16:09 ?1379次閱讀

    ATFbl32的啟動方法

    ATFbl32的啟動 bl31的runtime_svc_init函數會初始化OP-TEE對應
    的頭像 發表于 11-07 16:32 ?963次閱讀
    <b class='flag-5'>ATF</b><b class='flag-5'>中</b><b class='flag-5'>bl</b>32的<b class='flag-5'>啟動</b>方法

    uboot的啟動BL1BL2兩個階段介紹

    之前對這個uboot的源碼了解有些許遺忘。最近做AVB校驗,需要uboot到kernel的這個過程。這里再復習一下。 與大多數BootLoader一樣,uboot的啟動過程分為BL1BL2兩個階段
    的頭像 發表于 12-04 17:53 ?3842次閱讀
    主站蜘蛛池模板: 四虎影院一级片 | 丰满年轻岳欲乱中文字幕 | 精品午夜久久影视 | 五月综合色啪 | 在线播放91灌醉迷j高跟美女 | 2020av在线播放 | 亚洲一区二区三区中文字幕 | 黄床大片| 欧美色爱综合网 | 国产精品欧美久久久久天天影视 | 四虎永久在线精品视频免费观看 | 欧美乱理伦另类视频 | 在线播放视频网站 | 免费一级特黄3大片视频 | 高清激情小视频在线观看 | 国产精品人人爱一区二区白浆 | 操操插插 | www亚洲成人 | 欧美日韩色图 | 亚洲三级电影在线播放 | 色天天色综合 | 国产人人澡 | 久久免费精品国产72精品剧情 | 国产精品福利午夜一级毛片 | japanese69xxx日本 japanesexxx日本69 | 黄色永久网站 | 亚洲成人77777| 一本到午夜92版免费福利 | 久久久免费精品 | a级午夜毛片免费一区二区 a看片 | 国产1卡2卡三卡四卡网站 | 最好看最新的中文字幕1 | 五月婷婷综合网 | 亚洲天堂网在线观看 | 天天干免费视频 | 免费被黄网站在观看 | 日韩欧美一区二区三区视频 | 国内精品哆啪啪 | 欧美一级片观看 | 视色4se视频在线观看 | 天堂网色 |