這篇文章給大家介紹如何使用dtb方式啟動(dòng)內(nèi)核,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),江山企業(yè)網(wǎng)站建設(shè),江山品牌網(wǎng)站建設(shè),網(wǎng)站定制,江山網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,江山網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
主要使用dtb方式啟動(dòng)LINUX內(nèi)核的過(guò)程。采用DTB方式啟動(dòng)LINUX內(nèi)核,主要在于使用dtb可以減少linux內(nèi)核版本的數(shù)量。同一份linux 內(nèi)核代碼可以在多個(gè)板卡上運(yùn)行,每個(gè)板卡可以使用自己的dtb文件。
老式的u-boot使用ATAGS的方式啟動(dòng)linux內(nèi)核,本文使用新式的dtb方式啟動(dòng)內(nèi)核。
我使用的內(nèi)核是linux-3.17.2版本,下面開(kāi)始編譯內(nèi)核。
(1) 解壓內(nèi)核
tar jxf linux-3.17.2.tar.bz2
(2)配置linux內(nèi)核,由于am335x在內(nèi)核中都?xì)w為omap2系列,故可以使用如下命令:
make ARCH=arm omap2plus_defconfig
(3)編譯內(nèi)核:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j8
我的linux工具鏈前綴是arm-linux-gnueabi-,這個(gè)需要根據(jù)自己的實(shí)際的工具鏈情況進(jìn)行替換。
(4)編譯dtb:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- am335x-evm.dtb
(5)制作啟動(dòng)盤(pán):
將SD格式化為FAT系統(tǒng),將MLO、u-boot.img拷貝到根目錄下。
在根目錄下創(chuàng)建boot目錄,將編譯好的zImage和am335x-evm.dtb拷貝到該目錄下。
(6)u-boot命令行啟動(dòng)Linux內(nèi)核
load mmc 0 0x88000000 /boot/am335x-evm.dtb
load mmc 0 0x82000000 /boot/zImage
bootz 0x82000000 - 0x88000000
至此,Linux內(nèi)核就能啟動(dòng)了。
關(guān)于如何使用dtb方式啟動(dòng)內(nèi)核就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。