色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

使用TFTP加載內核設備樹

迅為電子 ? 來源:迅為電子 ? 2025-01-17 15:52 ? 次閱讀

需求分析

嵌入式項目開發中,為了適配新外設、調整硬件資源分配或修復驅動問題,需要頻繁修改設備樹和內核。修改完成后,通常需要重新編譯生成鏡像,并將其燒錄到開發板上進行測試。然而,傳統的燒錄方式不僅需要連接物理接口,還可能因為鏡像體積較大而耗費較長時間,這在開發周期緊張的情況下顯得尤為低效。

為了解決這一問題,可以采用基于TFTP(Trivial File Transfer Protocol)的內核和設備樹加載方法。這種方式無需將鏡像完整燒錄到開發板的存儲介質,而是通過網絡直接加載和運行新內核與設備樹。相比傳統燒錄方式,TFTP 加載顯著減少了鏡像更新的等待時間,同時允許更靈活地對不同版本的內核或設備樹進行快速切換和驗證。

TFTP加載內核設備樹

實驗平臺:iTOP-RK3568開發板

01-安裝TFTP服務端

首先進行TFTP 服務端的搭建,首先在ubuntu終端中執行以下命令安裝TFTP服務:

sudo apt-get install tftp-hpa tftpd-hpa

c8cf6c70-d49c-11ef-9310-92fbcf53809c.png

安裝完成以后創建 TFTP 服務器工作目錄,并對TFTP的服務配置文件進行修改,具體步驟如下:

輸入以下命令在家目錄創建tftpboot文件夾,如下圖所示:

mkdir -p tftpboot

c8cf6c70-d49c-11ef-9310-92fbcf53809c.png

安裝完成以后創建 TFTP 服務器工作目錄,并對TFTP的服務配置文件進行修改,具體步驟如下:

輸入以下命令在家目錄創建tftpboot文件夾,如下圖所示:

chmod 777 tftpboot

c9324412-d49c-11ef-9310-92fbcf53809c.png

最后使用以下命令修改TFTP配置文件,打開配置文件以后如下圖所示:

sudo vim /etc/default/tftpd-hpa

c94eb782-d49c-11ef-9310-92fbcf53809c.png

修改為如下內容,修改完成如下圖所示:

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/home/topeet/tftpboot/"

TFTP_ADDRESS=":69"

TFTP_OPTIONS="-l-c-s"

c9697252-d49c-11ef-9310-92fbcf53809c.png

修改完成保存退出,在終端輸入以下命令重啟tftpd-hpa服務。

sudo service tftpd-hpa restart

如下圖所示:

c97a07d4-d49c-11ef-9310-92fbcf53809c.png

02-配置開發板網絡

TFTP服務端搭建完成之后,進行第二步,配置開發板的網絡。

連接好開發板的網線后,上電啟動開發板,在加載階段點擊“ctrl+c”進入uboot命令行,如下圖所示:

c98fe0ea-d49c-11ef-9310-92fbcf53809c.png

然后來到搭建好TFTP環境的ubuntu終端,輸入“ifconfig”命令來查看虛擬機ubuntu的ip,如下圖所示:

c9b024e0-d49c-11ef-9310-92fbcf53809c.png

可以看到ubuntu虛擬機的ip地址為192.168.1.79,然后輸入以下命令設置開發板的網絡,設置完成如下圖所示:

setenv ipaddr 192.168.1.94

setenv serverip 192.168.1.79

setenv gateway 192.168.1.1

c9d2caf4-d49c-11ef-9310-92fbcf53809c.png

然后輸入以下命令測試開發板與ubuntu虛擬機之間的網絡是否暢通,測試成功如下圖所示:

ping 192.168.1.79

c9dcb974-d49c-11ef-9310-92fbcf53809c.png

如果環境變量不知道哪里設置錯了,或者想要恢復成emmc啟動,可以使用以下命令重置環境變量

env default -a

Saveenv

03-tftp加載內核和設備樹

在前面兩個小節中分別搭建了TFTP服務器以及配置好了開發板的網絡,現在進行最后一步,使用tftp加載內核和設備樹。

首先將內核鏡像boot.img和設備樹文件rk3568-evb1-ddr4-v10-linux.dtb拷貝到第一小節創建的“/home/topeet/tftpboot”目錄下,拷貝完成如下圖所示:

c9ee883e-d49c-11ef-9310-92fbcf53809c.png

然后根據上一小節內容配置自身ip和server ip,設置完成之后,使用以下命令將內核和設備樹通過網絡加載進內存之中,如下圖所示:

setenv bootcmd "tftpboot 0x08300000 rk3568-evb1-ddr4-v10-linux.dtb;tftpboot 0x0027f800 boot.img ; bootm 0x0027f800 - 0x08300000"

c9fe4b84-d49c-11ef-9310-92fbcf53809c.png

通過以上命令將boot.img鏡像下載到首地址為0x0027f800的內存空間;將rk3568-evb1-ddr4-v10-linux.dtb設備樹鏡像將下載到首地址為0x08300000的內存空間;隨后輸入以下命令,等待網絡下載內核和設備樹,如下圖所示:

env run bootcmd

ca1dc810-d49c-11ef-9310-92fbcf53809c.png

可以看到在這里加載的就是tftp服務端存放內核以及設備樹,等待開發板進入系統之后進行調試即可。


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

    關注

    5088

    文章

    19160

    瀏覽量

    306546
  • 內核
    +關注

    關注

    3

    文章

    1379

    瀏覽量

    40348
  • TFTP
    +關注

    關注

    0

    文章

    21

    瀏覽量

    14348
  • 開發板
    +關注

    關注

    25

    文章

    5100

    瀏覽量

    97837
  • 設備樹
    +關注

    關注

    0

    文章

    39

    瀏覽量

    3141

原文標題:【技術分享】使用TFTP加載內核設備樹

文章出處:【微信號:迅為電子,微信公眾號:迅為電子】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    通過Uboot?TFTP啟動rt-smart內核

    介紹Windows下通過 Uboot??TFTP 方式下載和啟動rt-smart 內核
    的頭像 發表于 06-30 12:34 ?3782次閱讀
    通過Uboot?<b class='flag-5'>TFTP</b>啟動rt-smart<b class='flag-5'>內核</b>

    tftp加載和執行eewiki u-boot映像失敗

    時,u-boot使用tftp檢索新內核設備blob(?)和根文件系統(我的理解是它必須將這些圖像加載到ram中,然后將ram的內容復制到
    發表于 10-24 14:27

    iMX6Q開發板設備內核-注冊驅動例程介紹

    `文檔主要講解在 iMX6Q/D/PLUS 開發板的設備內核(4.1.15)源碼中,設備注冊驅動和非
    發表于 07-18 15:42

    iTOP-iMX6開發板-設備內核-注冊驅動例程

    本文檔主要講解在迅為iTOP-iMX6Q/D/PLUS 開發板的設備內核(4.1.15)源碼中,設備注冊驅動和非
    發表于 08-09 10:01

    如何編譯設備和Linux內核鏡像文件

    實驗任務:編譯設備和Linux內核鏡像文件,拷貝到sd卡中,再從sd卡中拷貝到nand閃存對應的分區中,最后nand啟動,進入linux系統本篇博客內容:1.實驗流程2.注意事項1.實驗流程1.
    發表于 12-20 07:11

    內核設備的相關資料分享

    1 硬件基礎在我們的開發板上集成了一顆RGB燈組,引腳連接著主控的三路PWM輸出,因此我們可以通過三路PWM輸出進行調色的功能,硬件原理圖如下:2 內核設備我們把設備
    發表于 12-24 07:00

    請問LS1043A板子能否通過nfs方式掛載文件系統?

    -a 0x80080000 -e 0x80080000 -n Linux -d arch/arm64/boot/Image.gz uImage命令可以生成uImage文件。然后tftp加載內核
    發表于 01-06 07:03

    如何將uboot-2020和Linux5.4.1移植到OK210?

    tftp加載內核設備。linux內核移植了dm9000網卡驅動,所以可以掛載nfs文件系統。
    發表于 01-13 07:31

    Linux內核設備DTS使用方法詳解

    會得到dtb文件,dtb通過Bootloader引導程序加載內核。所以Bootloader需要支持設備才行;Kernel也需要加入設備
    發表于 05-06 16:14

    rk3308b使用tftp啟動內核設備的具體流程

    1、rk3308b使用tftp啟動內核設備的具體流程我使用的是firefly的rk3308b的板子,RK官方提供的sdk里面默認不支持使用tft
    發表于 05-17 11:12

    如何修改內核設備

    本文檔介紹了內核設備的位置和包含關系 1.內核設備位置 文件 備注 dts longan/d
    發表于 12-14 13:42

    設備的傳遞及kernel 對設備的解析

    當 U-Boot 將設備加載到內存指定位置后,ARM 內核的 SoC 以通用寄存器 r2 來傳遞 dtb 在內存中的地址。kernel 獲取到該地址后對 dtb 文件做進一步的處理。
    的頭像 發表于 07-29 11:19 ?2458次閱讀
    <b class='flag-5'>設備</b><b class='flag-5'>樹</b>的傳遞及kernel 對<b class='flag-5'>設備</b><b class='flag-5'>樹</b>的解析

    Linux設備詳解(二) DTB文件格式

    一、背景 ????dtb作為二進制文件被加載到內存中,然后由內核讀取并進行解析,如果對dtb文件的格式不了解,那么在看設備解析相關的內核
    的頭像 發表于 08-10 16:02 ?5162次閱讀
    Linux<b class='flag-5'>設備</b><b class='flag-5'>樹</b>詳解(二) DTB文件格式

    如何修改內核設備

    如何修改內核設備
    的頭像 發表于 12-14 14:06 ?852次閱讀
    如何修改<b class='flag-5'>內核</b><b class='flag-5'>設備</b><b class='flag-5'>樹</b>

    linux驅動程序如何加載內核

    ,需要了解Linux內核的基本概念和API。以下是一些關鍵概念: 1.1 內核模塊:Linux內核模塊是一種動態加載和卸載的代碼,可以在不重新啟動系統的情況下
    的頭像 發表于 08-30 15:02 ?533次閱讀
    主站蜘蛛池模板: 天美传媒在线观看完整高清 | 韩日美无码精品无码| 国偷自产AV一区二区三区健身房| 美女扒开腿让男生桶免费看动态图| 天天干夜夜曰| 99免费在线| 久久九九免费| 性一交一无一伦一精一品| 24小时日本在线电影| 国产自拍视频在线一区| 日韩精品熟女一区二区三区中文| 玉娇龙续集春雪瓶txt免费阅读 | 久就热视频精品免费99| 天美传媒果冻传媒入口视频| 91嫩草国产在线观看免费| 黑人开嫩苞| 校花爽好大快深点h| 电影 qvod| 欧美精品一区二区三区四区| 诱受H嗯啊巨肉各种play| 国产亚洲精品首页在线播放| 全文都是肉高h文| 24小时日本免费看| 久久精品国产亚洲精品2020| 亚洲国产综合久久精品| 国产精品99久久久久久人韩国| 清晨紧湿爱运动h高h| babesvideos性欧美| 男人J进入女人P免费狂躁| 中文字幕a有搜索网站| 久久re视频这里精品一本到99| 亚洲 欧美 另类 中文 在线| 高清欧美性猛交xxxx黑人猛交| 强开少妇嫩苞又嫩又紧九色| 99久久99久久精品| 男生脱美女内裤内衣动态图| 69ZXX少妇内射无码| 免费观看视频成人国产| 90后美女乳沟| 免费人成网站永久| 538prom精品视频我们不只是|