91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行PowerPC P2010 SylixOS啟動方式的分析

發布時間:2021-12-01 17:45:57 來源:億速云 閱讀:125 作者:柒染 欄目:互聯網科技

本篇文章給大家分享的是有關 如何進行PowerPC P2010 SylixOS啟動方式的分析,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

1. QorIQ P系列處理器簡介

QorIQ P系列處理器基于Power Architecture e500系列內核。其中P10xx系列、P2010和P2020基于e500v2內核,P204x、P30xx和P40xx基于e500mc內核,P50xx基于e5500內核。

其中,P2系列專為網絡、電信、軍工等各種市場提供高品質部件。P2010包含一個1.2GHz內核,512KB二級高速緩存等等。

2. mkimage工具介紹

mkimage工具可以用來制作不壓縮或者壓縮的多種可啟動鏡像文件。

mkimage在制作鏡像文件的時候,是在原來的可執行鏡像文件的前面加上一個64字節的頭,記錄參數所指定的信息,這樣uboot才能識別這個鏡像是針對哪個CPU體系結構的,哪個OS的,哪種類型,加載內存中的哪個位置,入口點在內存的哪個位置以及鏡像名是什么等等。

mkimage工具用法如下:

-A:設定架構類型;

-O:設定操作系統類型;

-T:鏡像類型;

-a:指定鏡像在內存中的加載地址;

-e:指定鏡像運行的入口點地址;

-C:指定壓縮方式;

-n:指定鏡像名;

-d:指定制作鏡像的源文件。

P2010的BSP源碼中,使用命令

$(TOOLCHAIN_PREFIX)mkimage -A PowerPC -O linux -a 0x1000000 -e 0x1000000 -d $(OUTDIR)/bspp2010.bin -T kernel -C none -n "SylixOS" $(OUTDIR)/uImage

來制作鏡像文件uImage。

指定架構類型為PowerPC,操作系統類型為linux,內存加載地址為0x1000000,鏡像運行地址為0x1000000,無壓縮方式,鏡像類型為kernel,鏡像名為SylixOS,生成的文件名為uImage。

3. uboot使用bootm引導內核

由于P2010使用了Linux的fdt,所以需要使用bootm命令加載kernel和fdt。

P2010使用命令tftp 0x2000000 uImage;bootm 0x2000000 - 0xefe80000引導內核。通過tftp加載mkimage命令制作的鏡像文件uImage到內存0x2000000地址處,然后通過bootm命令啟動系統。其中0x2000000為tftp下載到內存中的鏡像的地址,-表示不讀取ramdisk,0xefe80000為fdt所在的內存地址。

bootm命令解析鏡像文件格式,按Linux方式啟動系統,獲取到fdt內存地址。隨后將其獲取的fdt地址傳入SylixOS。

4. 啟動SylixOS

文件startup.s中,在SylixOS進入halPrimaryCpuMain函數之前,通過從FDT_REGISTER寄存器暫存dts內存地址,如圖 4.1所示。

如何進行PowerPC P2010 SylixOS啟動方式的分析

圖 4.1 暫存FDT

然后將暫存的dts內存地址傳入啟動函數,即halPrimaryCpuMain函數中,如圖 4.2所示,由此完成了uboot到SylixOS的fdt參數傳遞。

如何進行PowerPC P2010 SylixOS啟動方式的分析

圖 4.2 讀取FDT

halPrimaryCpuMain函數根據獲取到的fdt地址,獲取設備信息,完成設備相關初始化工作。

以上就是 如何進行PowerPC P2010 SylixOS啟動方式的分析,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌拉特前旗| 昌乐县| 宝鸡市| 丹寨县| 吉水县| 成都市| 江永县| 永康市| 成武县| 化德县| 诸暨市| 和平区| 鹤庆县| 鹰潭市| 西青区| 舞阳县| 营口市| 梁河县| 石景山区| 四川省| 共和县| 高密市| 延寿县| 盐源县| 青海省| 定兴县| 克东县| 翼城县| 泗阳县| 金山区| 星子县| 沛县| 衢州市| 肃北| 顺义区| 崇明县| 宣武区| 会理县| 莲花县| 霸州市| 古蔺县|