999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于G9-X芯片的U-Boot移植

2022-10-27 06:50:50安昱昕
汽車電器 2022年10期
關鍵詞:程序信息

安昱昕,杜 彬,田 彬

(陜西重型汽車有限公司汽車工程研究院,陜西 西安 710200)

隨著域、集中式車載電子電器架構的發展,基于SoC芯片的車載控制器及車用操作系統研發成為構建域、集中式電子電器架構軟硬件平臺的落地方向,而引導加載程序是車用操作系統加載運行的必要組成,U-Boot作為主流的嵌入式操作系統內核引導加載程序,其穩定性、易移植性已被廣泛驗證。本文介紹了基于G9-X芯片,移植U-Boot引導加載程序的方法,為車用操作系統移植以及后續軟件開發工作提供參考。

1 U-Boot介紹

1.1 U-Boot作用及原理

U-Boot負責啟動操作系統內核,并向內核傳遞根文件系統路徑、網絡配置信息、內存地址等重要參數。U-Boot設計目的在于滿足多平臺通用性,通過抽取不同硬件平臺系統啟動的共性特征,形成一套平臺通用引導系統架構。各個芯片廠商根據自己芯片特性進一步完成引導系統的定制化開發或移植,提高開發效率同時減少開發成本。

1.2 U-Boot啟動流程

U-Boot啟動流程主要分為兩個階段:CPU初始化和目標板初始化。CPU初始化階段中通過匯編語言初始化SoC芯片相關硬件,如設置CPU模式、關閉MMU、初始化DDR和時鐘等,以及準備C語言運行環境。在準備好C語言運行環境后,CPU便可以處理C程序了,這時如初始化目標板外設,檢測系統內存映射,啟動內核等C程序將被運行,如圖1所示。

圖1 U-Boot啟動流程

2 U-Boot移植流程

2.1 編譯環境搭建

由于SoC芯片平臺與PC平臺芯片架構不同,需要在PC平臺搭建SoC平臺的編譯環境完成系統編譯,編譯后的鏡像燒錄到目標板中運行。本文采用基于ARM內核SoC芯片,交叉編譯工具使用ARM官方提供的arm-linux-gcc編譯工具,并在Linux系統下完成交叉編譯環境的構建。

2.2 移植文件介紹

本文基于DENX官方U-Boot2016-3完成SoC芯片適配和目標板適配。參考第1.2節U-Boot啟動流程,U-Boot主要分為兩類文件:芯片啟動文件和目標板描述文件,主要包含UBoot官方提供的已適配芯片平臺和目標板文件,如圖2所示。

圖2 U-Boot文件目錄

arch/、board/、drivers/這3個文件目錄包括芯片、目標板相關信息,U-Boot移植主要工作是在這3個目錄下添加芯片及目標板適配程序和配置文件等,見表1。

表1 芯片及目標板相關文件目錄

2.3 移植步驟介紹

芯片適配主要完成SoC芯片內核架構適配以確保內核完成初始化、程序自拷貝、啟動運行等一系列的工作。本文所適配的控制器芯片為ARM架構,U-Boot提供了完整的適配程序,我們可將相應內核目錄下Kconfig文件中內核名應用到目標板適配的配置文件中即可。

對于目標板適配,是將目標板所用的SoC芯片外設信息數據配置到U-Boot程序中,主要有以下步驟。

1)在board/目標板目錄下創建目標板目錄,包括Kconfig、Maintainers、Makefile以及${boardname}.c程序4種文件,如圖3所示。

圖3 board/目錄下文件

其中,Makefile文件中加入指定編譯對象文件:

MAINTAINERS中添加指定配置相關文件目錄:

Kconfig中添加配置編譯信息:

myboard.c程序中主要負責分配外設GPIO接口,以及完成驅動初始化工作,如I2C、EMMC、USB等,在其中加入初始化程序以及GPIO配置宏定義。

2)在include/configs目錄下新建目標板配置頭文件${boardname}.h,通過宏定義存放配置信息,這里創建myboard.h文件:

通過宏定義配置啟動boot地址、串口波特率、Fuses、GPIO、文件系統支持等,添加以下配置選項。

此外,根據需要使用的外設完成配置項,表示使用該外設,如以太網、MMC、I2C、USB等,也包括U-Boot默認環境變量的定義,添加如以下配置選項:

3)根據CPU架構,在arch/各級目錄下(表1)Kconfig文件中添加目標板配置信息,arch/下Kconfig中添加CPU和目標板配置信息、設備信息和編譯頭文件名稱,并將第一級配置信息名稱添加到defconfig文件中,常用配置關鍵字如表2所示。

表2 Kconfig關鍵字

根據本文芯片架構,調用ARMv8目錄的所有程序,以及設備驅動模型程序,添加配置信息如下:config TARGET_MYBOARD

4)在configs/目錄下新建defconfig配置文件,存放各級Kconfig的具體配置:

myboard_defconfig文件中配置項用于確定Kconfig中哪些配置項被激活,即最終編譯哪些文件,本文采用芯片基于ARM架構,并已構建目標板配置文件myboard.h,以及在arch/Kconfig中完成配置信息聲明,如使用新添加的

3 實驗驗證

完成移植后,根目錄下執行命令配置編譯目標設備并開始編譯:

通過交叉編譯環境完成U-Boot鏡像編譯后,使用燒錄工具將鏡像燒錄到SD卡中。如圖4所示,編譯生成的u-boot.bin為燒錄所需的鏡像文件,一般芯片啟動會需要如校驗等具有固定格式數據信息,所以只燒錄u-boot.bin通常無法成功啟動U-Boot。根據芯片手冊定義的芯片啟動數據格式,將數據按格式要求添加到SD卡中,保證SD卡燒錄的所有數據能夠正確啟動芯片。

圖4 U-Boot編譯結果

燒錄鏡像前通過fdisk命令對SD卡分區,并通過mkfs.vfat命令格式化分區。本文通過dd命令將鏡像拷貝到SD卡中,根據芯片啟動流程及數據格式,設置參數以確定數據寫入位置。

通過SD卡啟動目標板中,根據CPU啟動流程,內部ROM執行初始化后會完成自拷貝,通過將SD卡指定位置的數據拷貝到RAM中執行,后續程序開始執行,測試U-Boot系統開始運行,如圖5所示。

圖5 U-Boot啟動運行界面

本文通過U-Boot能否加載系統內核并掛載文件系統測試移植是否成功,采用內核版本為Linux Kernel4.1.15。如圖6所示,通過設置U-Boot環境變量參數,通過nfs服務遠程加載PC服務端內核鏡像及根文件系統文件,能夠成功啟動操作系統。

圖6 U-Boot引導啟動操作系統

圖6中所示,通過U-Boot命令設置環境變量可指定系統內核啟動位置,由于本文通過nfs服務從上位機加載內核及文件系統,所以需要設置網絡IP地址等信息,如本文設置IP采用以下命令。

4 結論

綜上,U-Boot減少了芯片及目標板適配的難度及周期,達到了快速移植操作系統的目的,其靈活性和易用性提高了開發效率。此外,移植U-Boot需要對SoC芯片的啟動流程及U-Boot軟件架構有清晰的理解和掌握,這對理解操作系統原理也具有參考意義和價值。

猜你喜歡
程序信息
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
恐怖犯罪刑事訴訟程序的完善
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 欧美日韩高清在线| 欧美亚洲中文精品三区| 国产成人8x视频一区二区| 国产免费羞羞视频| 亚洲成人动漫在线| 国产爽爽视频| 999国产精品| 99视频精品在线观看| 日韩欧美国产另类| 久久国产精品夜色| 国产特一级毛片| 制服丝袜亚洲| 一区二区午夜| 国产真实乱子伦精品视手机观看| 99九九成人免费视频精品| 欧美A级V片在线观看| 在线观看无码a∨| 九九九精品成人免费视频7| 91精品福利自产拍在线观看| 欧美第一页在线| аv天堂最新中文在线| 亚洲无码91视频| 久久国产亚洲欧美日韩精品| 手机在线看片不卡中文字幕| 九九热视频精品在线| 国产成人一二三| 亚洲天堂视频在线免费观看| 国产成人综合在线观看| 欧美成人在线免费| 天天摸夜夜操| 色悠久久久久久久综合网伊人| 久久久精品国产SM调教网站| 日韩毛片在线视频| 国产精品主播| 日韩无码黄色| 少妇精品久久久一区二区三区| 日韩不卡高清视频| 日本一区中文字幕最新在线| 亚洲天堂视频在线观看| yy6080理论大片一级久久| 国产精品刺激对白在线 | 久久久久亚洲Av片无码观看| 全免费a级毛片免费看不卡| 国产小视频a在线观看| 91成人免费观看| 国产成人艳妇AA视频在线| 无码中文字幕精品推荐| 亚洲欧洲日韩综合| 久久久久青草大香线综合精品| 亚洲精品第一在线观看视频| 国产欧美视频在线观看| 日韩无码视频播放| 沈阳少妇高潮在线| 国产精品19p| 欧美19综合中文字幕| 久久99久久无码毛片一区二区| 区国产精品搜索视频| 美女一级毛片无遮挡内谢| 国产成人高清精品免费5388| 亚洲成人在线网| 国产AV毛片| 免费人欧美成又黄又爽的视频| 国产精品免费福利久久播放 | 99爱视频精品免视看| 91麻豆国产精品91久久久| 老司机午夜精品网站在线观看| 人妻一区二区三区无码精品一区| 99久久精品美女高潮喷水| 午夜一区二区三区| 精品亚洲国产成人AV| 五月天福利视频| 中国毛片网| 久久精品娱乐亚洲领先| 久久精品无码中文字幕| 国产一区二区色淫影院| 色综合天天综合中文网| 国产成人无码综合亚洲日韩不卡| 二级毛片免费观看全程| 国产日韩欧美中文| 国产成人精品一区二区免费看京| 久久亚洲AⅤ无码精品午夜麻豆| 四虎永久在线精品国产免费|