91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

OpenSBI支持哪些固件

麥辣雞腿堡 ? 來(lái)源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-10-08 14:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FW_DYNAMIC固件

FW_DYNAMIC固件在運(yùn)行時(shí)從上一個(gè)啟動(dòng)階段獲取有關(guān)下一個(gè)啟動(dòng)階段的信息,例如引導(dǎo)加載程序或操作系統(tǒng)內(nèi)核。

  • 上一個(gè)啟動(dòng)階段(即LOADER)通過(guò)a2 寄存器struct fw_dynamic_info的位置傳遞給FW_DYNAMIC
  • 之前的啟動(dòng)階段(即LOADER)需要知道struct fw_dynamic_info
struct fw_dynamic_info {
      /** Info magic */
      unsigned long magic;
      /** Info version */
      unsigned long version;
      /** Next booting stage address */
      unsigned long next_addr;
      /** Next booting stage mode */
      unsigned long next_mode;
      /** Options for OpenSBI library */
      unsigned long options;

      unsigned long boot_hart;
  } __packed;

FW_JUMP固件

FW_JUMP固件假定下一個(gè)引導(dǎo)階段的地址固定,但是不直接包含下一階段的二進(jìn)制代碼,只是告訴OpenSBI,它運(yùn)行完后需要到哪個(gè)地址執(zhí)行。

例如,OpenSBI執(zhí)行完后,需要加載kernel,而Kernel的加載地址為0x80200000,那么我們指定0x80200000為需要跳轉(zhuǎn)的地址,OpenSBI執(zhí)行完畢后,就會(huì)跳轉(zhuǎn)到0x80200000處去加載kernel。

具體例子:

OpenSBI執(zhí)行完后,去執(zhí)行uboot或者kernel,假設(shè)uboot或者kernel在內(nèi)存中的地址為0x80200000,則編譯OpenSBI:

make PLATFORM=generic FW_JUMP_ADDR=0X80200000

在編譯OpenSBI時(shí),加入?yún)?shù)FW_JUMP_ADDR,即可指定需要跳轉(zhuǎn)的地址。

注意, 由于OpenSBI運(yùn)行在M模式下,本質(zhì)上也是一個(gè)bootloader ,啟動(dòng)時(shí),OpenSBI就會(huì)進(jìn)行一些硬件的初始化操作,加上fw_jump固件可以指定跳轉(zhuǎn)地址,因此 對(duì)于RISC-V Linux而言,OpenSBI執(zhí)行完后,可以不執(zhí)行uboot,直接啟動(dòng)kernel ,將uboot去掉,不影響RISC-V Linux正常啟動(dòng)。

在某些內(nèi)存優(yōu)化的場(chǎng)景下,可以考慮將uboot去掉,利用fw_jump固件直接啟動(dòng)kernel,從而節(jié)省內(nèi)存。

FW_PAYLOAD固件

FW_PAYLOAD固件直接包含下一引導(dǎo)階段的二進(jìn)制代碼,下一引導(dǎo)階段通常是bootloader或os鏡像。

不同于FW_JUMP固件的指定地址跳轉(zhuǎn),F(xiàn)W_PAYLOAD固件是將bootloader或os鏡像直接打包進(jìn)來(lái)。

具體例子:

將uboot打包進(jìn)來(lái),則編譯OpenSBI:

make PLATFORM=generic FW_PAYLOAD_PATH=uboot.bin

將Linux kernel打包進(jìn)來(lái),則編譯OpenSBI:

make PLATFORM=generic FW_PAYLOAD_PATH=Image

在編譯OpenSBI時(shí),加入?yún)?shù)FW_PAYLOAD_PATH,即可以將下一引導(dǎo)階段的二進(jìn)制代碼打包進(jìn)來(lái)。相當(dāng)于將OpenSBI、uboot、kernel合并為一個(gè)文件。

實(shí)際中,我們用的更多的是FW_PAYLOAD固件,將uboot和OpenSBI一起編譯。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5608

    瀏覽量

    130013
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    4

    文章

    1468

    瀏覽量

    42888
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11763

    瀏覽量

    219088
  • 固件
    +關(guān)注

    關(guān)注

    11

    文章

    569

    瀏覽量

    25000
  • RISC
    +關(guān)注

    關(guān)注

    6

    文章

    485

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【「RISC-V體系結(jié)構(gòu)編程與實(shí)踐」閱讀體驗(yàn)】-- SBI及NEMU環(huán)境

    ,現(xiàn)在業(yè)界流行的SBI固件OpenSBI等。 BenOS和MySBI 書(shū)中大部分實(shí)驗(yàn)是以BenOS為基礎(chǔ),BenOS 基礎(chǔ)實(shí)驗(yàn)代碼包含MySBI和BenOS兩部分,其中MySBI是運(yùn)行在M模式下的固件
    發(fā)表于 11-26 09:37

    有沒(méi)有通過(guò)GPIF支持NAND支持的FX2LP固件源的例子?

    你好,有沒(méi)有通過(guò)GPIF支持NAND支持的FX2LP固件源的例子?
    發(fā)表于 08-20 12:31

    Lua固件是否支持上傳arduino代碼?

    這對(duì) LUA 腳本和編程來(lái)說(shuō)非常有用,我總是用 LUA 來(lái)做。簡(jiǎn)單穩(wěn)定,作為 mqtt esp 客戶端做事時(shí)效果很好。這個(gè)固件是否支持上傳 arduino 代碼或者這是另一個(gè)故事?我的朋友將 arduino 編碼為 esp8266-01,他告訴我
    發(fā)表于 04-26 06:37

    什么是固件,固件的概念

    什么是固件,固件的概念   固件(FirmWare)的詞典里的解釋是具有軟件功能的硬件,在早期這種器件一般都是存有軟件的EROM或EPROM(電可擦除可編程只讀存儲(chǔ)器)等,通常這
    發(fā)表于 02-02 11:43 ?3074次閱讀

    編程器固件和路由器固件什么不同

    本文開(kāi)始闡述了固件的概念,其次介紹了固件的工作原理與固件的技術(shù)性能,最后詳細(xì)的介紹了編程器固件和路由器固件兩者之間的區(qū)別。
    的頭像 發(fā)表于 04-09 09:38 ?2.7w次閱讀

    opensbi下的riscv64裸機(jī)系列編程1(串口輸出)

    opensbi下的riscv64裸機(jī)系列編程1(串口輸出) 1.說(shuō)明 2.opensbi的編譯 3.基本環(huán)境的準(zhǔn)備 3.1 準(zhǔn)備qemu 3.2 準(zhǔn)備交叉編譯工具鏈 4.工程完善 5.封裝的sbi
    的頭像 發(fā)表于 12-31 10:56 ?1.1w次閱讀

    CycurHSM安全固件支持車(chē)聯(lián)網(wǎng)聯(lián)盟數(shù)字密鑰規(guī)范

    CycurHSM 支持 CCC 數(shù)字密鑰的網(wǎng)絡(luò)安全 ESCRYPT 的 CycurHSM 安全固件支持車(chē)聯(lián)網(wǎng)聯(lián)盟 (CCC) 數(shù)字密鑰規(guī)范, 它具備必要的網(wǎng)絡(luò)安全功能,來(lái)實(shí)現(xiàn)通過(guò)智能手機(jī)的安全且通過(guò)
    的頭像 發(fā)表于 09-06 14:37 ?3498次閱讀

    OpenSBI RISC-V開(kāi)源Supervisor二進(jìn)制接口

    opensbi.zip
    發(fā)表于 04-25 10:25 ?1次下載
    <b class='flag-5'>OpenSBI</b> RISC-V開(kāi)源Supervisor二進(jìn)制接口

    Core 3308Y固件ROC RK3308B CC PLUS支持Docker固件

    電子發(fā)燒友網(wǎng)站提供《Core 3308Y固件ROC RK3308B CC PLUS支持Docker固件.txt》資料免費(fèi)下載
    發(fā)表于 09-13 09:52 ?10次下載
    Core 3308Y<b class='flag-5'>固件</b>ROC RK3308B CC PLUS<b class='flag-5'>支持</b>Docker<b class='flag-5'>固件</b>

    如何對(duì)物聯(lián)設(shè)備進(jìn)行遠(yuǎn)程固件升級(jí)?

    當(dāng)有新功能或需要修復(fù)bug,而設(shè)備已經(jīng)生產(chǎn)出來(lái),在渠道或客戶手中時(shí),那么遠(yuǎn)程固件升級(jí)就很重要了。ZLG物聯(lián)網(wǎng)云平臺(tái)支持遠(yuǎn)程固件升級(jí),本文將詳解固件升級(jí)功能。
    的頭像 發(fā)表于 11-01 13:14 ?2259次閱讀

    固件升級(jí) | NDI系列產(chǎn)品支持NDI 5.0

    千視N3、N30、N4、N40、U40、RN-3等多款NDI產(chǎn)品發(fā)布全新固件V-2.00.0208,該版本固件更新了NDISDK至5.0版本、同時(shí)全系列支持語(yǔ)音通話等多種功能,目前已經(jīng)上線了千視官網(wǎng)
    的頭像 發(fā)表于 03-25 09:32 ?1839次閱讀
    <b class='flag-5'>固件</b>升級(jí) | NDI系列產(chǎn)品<b class='flag-5'>支持</b>NDI 5.0

    開(kāi)源網(wǎng)絡(luò)引導(dǎo)固件iPXE正式支持龍架構(gòu)

    開(kāi)源網(wǎng)絡(luò)引導(dǎo)固件iPXE集成龍架構(gòu)補(bǔ)丁,正式支持龍架構(gòu)(LoongArch)。用戶可以使用iPXE從網(wǎng)絡(luò)引導(dǎo)基于龍架構(gòu)的操作系統(tǒng)。
    的頭像 發(fā)表于 07-19 10:12 ?1468次閱讀
    開(kāi)源網(wǎng)絡(luò)引導(dǎo)<b class='flag-5'>固件</b>iPXE正式<b class='flag-5'>支持</b>龍架構(gòu)

    OpenSBI固件類型介紹

    不同的固件類型來(lái)處理不同平臺(tái)早期啟動(dòng)階段的差異。 OpenSBI簡(jiǎn)介 OpenSBI為特定平臺(tái)提供固件構(gòu)建,支持不同類型的
    的頭像 發(fā)表于 10-08 14:11 ?1827次閱讀
    <b class='flag-5'>OpenSBI</b><b class='flag-5'>固件</b>類型介紹

    Klipper固件的打印機(jī)可以插卡打印嗎?

    的3D打印機(jī)固件,它允許用戶通過(guò)編寫(xiě)腳本來(lái)自定義和優(yōu)化他們的3D打印機(jī)。Klipper固件的主要特點(diǎn)包括: 支持多種類型的打印機(jī)和硬件配置,如RepRap、Prusa i3、Creality等。
    的頭像 發(fā)表于 08-30 14:34 ?2159次閱讀

    基于OpenSBI的linux nommu實(shí)現(xiàn)

    Linux內(nèi)核6.10提供了對(duì)沒(méi)有mmu的riscv處理器工作在S模式下的內(nèi)核的支持,本文介紹基于OpenSBI的linuxnommu的實(shí)現(xiàn),供大家參考。1、OpenSBI介紹SBI
    的頭像 發(fā)表于 02-08 13:43 ?1322次閱讀
    基于<b class='flag-5'>OpenSBI</b>的linux nommu實(shí)現(xiàn)