日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Buildroot 龙芯1C支持指南

發布時間:2023/12/9 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Buildroot 龙芯1C支持指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文轉載自:https://github.com/pengphei/smartloong-sphinx/blob/master/source/cn/loongson1c_buildroot_guide.rst

Buildroot 龍芯1C支持指南

引子:從龍芯1C預訂拿到板子已經很長一段時間了,因為各種事情,一直讓它呆在角落的冷宮里。昨天,憤而出去騎行,有導航出錯,入的一片幽靜山林,正能量爆棚,一下午休息,晚上興致上來,看了看龍芯的說明,對rootfs部分的構建太過于麻煩,于是夜深人靜,開始折騰,經由幾個小時鼓搗,終于讓buildroot可以支持龍芯1C-智龍開發板rootfs構建。高興之余,覺得可以將過程寫下來,可以讓大家了解buildroot的構建機制,對編譯工具鏈選擇,系統包指定,以及最后的文件系統打包等都有一個細節的了解。

關于智龍開發板

智龍開發板是由 openloongson 開源社區推出的基于龍芯1C處理器的精簡開發板,提供基礎的硬件接口,包括一路以太網接口,一路USB Host接口,SD卡存儲,2x40 pin io擴展,外置紐扣電源供電RTC。具體的信息可以參考開源龍芯社區網站和論壇。

龍芯 1C 介紹

龍芯1C芯片是基于LS232處理器核的高性價比單芯片系統,具備豐富的外設接口及片上模塊,為開發者提供足夠的計算能力和多應用的連接能力??蓱糜谥讣y生物識別、物聯傳感等領域。

龍芯1C包含浮點處理單元,可以有效增強系統浮點數據處理能力。1C的內存接口,支持多種類型的內存,允許靈活的系統設計。支持8-bit SLC NAND或MLC NAND FLASH,提供高容量的存儲擴展接口。

龍芯1C的具體用戶手冊和數據手冊可以查看?http://www.loongson.cn/product_info.php?id=53?。

要點準備

  • 龍芯處理器兼容MIPS32指令集,而且官方提供消息,在新的gcc中是對龍芯各類芯片提供主流的支持。那么也就是說我們可以通過MIPS32的GCC編譯工具鏈編譯出能夠支持龍芯1C的可執行文件。

  • 目前在開源社區存在兩個非常廣泛使用的Linux from scratch 開發平臺,即 openWRT 和 Buildroot,兩者都對MIPS32提供支持。這里我們選擇Buildroot作為基礎工具構建適用于龍芯1C的rootfs。

  • 根據龍芯開源社區或者網上有限的參考資料,智龍開發板使用yaffs2作為根分區文件系統,并且整個Nand Flash分為三個分區。第一個分區為內核分區,第二個分區為根分區,第三個分區為數據區。對應的分區表如下:

    # cat /proc/mtd dev: size erasesize name mtd0: 00e00000 00020000 "kernel" mtd1: 06400000 00020000 "os" mtd2: 00e00000 00020000 "data"
  • 龍芯使用網絡燒錄 rootfs 指令如下:

    基于?cramfs?文件系統鏡像燒錄指令:

    PMON>devcp tftp://192.168.x.xxx/rootfs-cramfs.img /dev/mtd1

    基于?jffs2?文件系統鏡像燒錄指令:

    PMON>devcp tftp://192.168.x.xxx/rootfs-jffs2.img /dev/mtd1

    基于?yaffs2?文件系統鏡像燒錄指令:

    PMON>mtd_erase /dev/mtd1 PMON>devcp tftp://192.168.x.xxx/rootfs-yaffs2.img /dev/mtd1 yaf nw
  • 龍芯啟動參數設置指令如下:

    基于?cramfs?文件系統的啟動參數設置:

    PMON>set append 'root=/dev/mtdblock1 console=ttyS2,115200 rootfstype=cramfs video=ls1bfb:480x272-16@70'

    基于?jffs2?文件系統的啟動參數設置:

    PMON>set append 'root=/dev/mtdblock1 console=ttyS2,115200 rootfstype=jffs2 video=ls1bfb:480x272-16@70'

    基于?yaffs2?文件系統的啟動參數設置:

    set append 'root=/dev/mtdblock1 console=ttyS2,115200 rootfstype=yaffs2 video=ls1bfb:480x272-16@70'

    PMON 中的系統重啟指令:

    PMON>reboot
  • 龍芯的根文件系統打包方法:

    基于?cramfs?文件系統打包:

    mkcramfs /root/rootfs rootfs-cramfs.img chmod 777 rootfs-cramfs.img# 或者自帶工具 mkfs.cramfs /root/rootfs rootfs-cramfs.img chmod 777 rootfs-cramfs.img

    Note

    使用 chmod 777 rootfs-cramfs.img 修改文件系統權限,是為了防止出現無法燒寫的情況。

    基于?jffs2?文件系統打包:

    mkfs.jffs2 -r /root/rootfs -o rootfs-jffs2.img -e 0x20000 --pad=0x2000000 -n chmod 777 rootfs-jffs2.img

    基于?yaffs2?文件系統打包:

    mkyaffs2image /root/rootfs rootfs-yaffs2.img chmod 777 rootfs-yaffs2.img

    Note

    這里需要注意的是,打包 yaffs2 文件系統鏡像所使用的命令為?mkyaffs2image?而不是 Buildroot 中默認打包 yaffs2 的?mkyaffs2?指令。兩者由不同的軟件包生成,命令也不相同。

  • Buildroot MIPS 構建

    在拿到智龍開發板,并了解了上面的準備工作,就可以開始 MIPS 版本的 Buildroot 構建。目前使用的 Buildroot 來自于 buildroot 的?github 開發版本。構建更多詳細信息可以參考它的?操作手冊。

  • 獲取 Buildroot 源碼

    git clone https://github.com/pengphei/buildroot.git
  • 安裝準備軟件

    buildroot 的構建需要依賴以下軟件或者庫:

    • which
    • sed
    • make (3.81及以上版本)
    • binutils
    • build-essential (僅用于Debian衍生版本)
    • gcc (2.95及以上版本)
    • g++ (2.95及以上版本)
    • bash
    • patch
    • gzip
    • bzip2
    • perl (5.8.7及以上版本)
    • tar
    • cpio
    • python (2.6及以上版本)
    • unzip
    • rsync
    • wget
    • ncurses5 (用于 menuconfig 命令行配置界面)
    • qt4 (用于 xconfig 配置界面)
    • glib2, gtk2, glade2 (用于 gconfig 配置界面)
    • 其他的配置,需要根據構建過程中的問題,相應進行添加。
  • 系統構建

    為了構建出支持智龍開發板可用的鏡像格式。在原本的 Buildroot 環境中添加了 yaffs2img 文件系統支持。該包與 Buildroot 中原有的 yaffs2 文件系統構建并不相同,需要特別注意。

    智龍開發板的構建命令如下:

    cd buildroot cp configs/loongson1c_smartloong_defconfig .config make

    如果希望根據自己的需要,添加自己需要的軟件包,可以執行如下命令進行根文件系統軟件包的定制:

    make menuconfig

    Note

    上述命令與 linux 內核的配置工具和使用方法完全相同。只是 buildroot 將會從網絡上下載自己所需要的基礎軟件包以及構建工具鏈,在首次構建時,代碼的下載和構建將會需要比較長的時間。

    在?make?命令執行完成之后,會生成?output/images/rootfs.yaffs2img?文件,該文件即為可以燒錄到智龍開發板中的根文件系統鏡像。

  • 鏡像燒錄

    在完成上述的鏡像構建后,可以通過?tftp?將最終的根文件系統鏡像燒錄到智龍開發板,相應的指令如下:

    • 在開機后,馬上按下空格鍵,進入 PMON 環境。

    • 在進入?PMON?環境后,執行如下指令序列完成鏡像燒錄,和重新啟動系統。

      擦出 rootfs 分區以及燒錄 rootfs 鏡像:

      PMON> mtd_erase /dev/mtd1 PMON> devcp tftp://192.168.x.xxx/rootfs-yaffs2.img /dev/mtd1 yaf nw

      設置內核啟動參數:

      PMON> set append 'root=/dev/mtdblock1 console=ttyS2,115200 rootfstype=yaffs2'

      重啟系統:

      reboot
  • 系統使用

    在完成 Buildroot 根文件系統燒錄之后,可以開始使用自己選擇的構建工具,對系統進行測試,或者根據自己的需要對編譯的程序進行測試。

    連接以太網絡

    在默認的 buildroot 系統中,開機并沒有默認連接網絡。可以通過下述命令連接以太網,以及啟用 DHCP 獲取 IP 地址。

    ifconfig eth0 up dhcpcd eth0

    通過上述兩條命令,可以連接以太網絡,并啟用 DHCP 服務,獲取 IP 地址。

    總結

    以上是生活随笔為你收集整理的Buildroot 龙芯1C支持指南的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: www.一起操| 精品久久无码视频 | 国产高潮国产高潮久久久91 | 三上悠亚一区二区在线观看 | 一卡二卡在线观看 | www.日日| 美女污污网站 | 天堂网一区 | 黄色a一片 | 日韩欧美精品国产 | 天堂一级片 | 欧美成人一区二区视频 | 欧美最猛黑人xxxx | 天堂在线资源库 | 白嫩初高中害羞小美女 | 成人区人妻精品一熟女 | 日韩精品无码一区二区三区久久久 | 中文字幕一区二区三区四区 | 一本色道久久综合亚洲 | av中文字幕观看 | 穿扒开跪着折磨屁股视频 | 日本视频免费观看 | 欧美极品少妇×xxxbbb | 中文字幕人成人乱码亚洲电影 | 成人福利片 | 男人的天堂视频在线观看 | 美女隐私免费 | 特级毛片在线 | jizzjizz免费 | 久久超碰精品 | 国产在线观看免费视频今夜 | 麻豆久久久久久久久久 | 精品人妻一区二区三区日产乱码卜 | 人妻视频一区二区三区 | 都市乱淫 | 极品色av| 精品国产99一区二区乱码综合 | 丁香花高清在线观看完整动漫 | 韩国精品av | 五月婷综合网 | 日本国产精品一区 | 国产精品久久久久久久久久久久午夜片 | 免费美女视频网站 | 日韩精品视频中文字幕 | 欧美自拍偷拍一区二区 | 精品日韩视频 | 特黄一区 | 成年人黄色小视频 | 狠狠干b | 欧美做受高潮1 | 宅男在线视频 | 国产传媒视频 | 美女张开双腿让男人捅 | 全球av在线 | 高清视频在线免费观看 | 五月婷婷综合网 | 娇妻第一次尝试交换的后果 | 欧美综合自拍 | 91亚洲欧美激情 | 久久久99久久 | 欧美大片一区二区三区 | 91免费网址| 日日射夜夜操 | 抖音视频在线观看 | 99视频在线精品 | 色偷偷在线观看 | 极品人妻一区二区三区 | 午夜福利理论片在线观看 | 亚洲激情图 | 尤物精品 | 玩日本老头很兴奋xxxx | 国产不卡在线 | 国产欧美日韩激情 | 海角社区id:1220.7126,10. | 亚洲看片网站 | 国产美女精品在线 | 91精品人妻一区二区三区四区 | 欧美日韩视频一区二区 | 国产原创在线播放 | 亚洲欧美另类国产 | 亚洲综合一区二区 | 一级黄色录像免费观看 | 亚洲春色在线观看 | 久久国产精品无码一区二区 | 久操视频在线 | 男女在线观看视频 | 一本一道人人妻人人妻αv 九一在线视频 | 狠狠撸视频 | 一本大道av伊人久久综合 | 亚洲免费av网址 | 亚洲视频中文字幕在线观看 | 国产成人自拍视频在线观看 | 国产成人无码专区 | 日韩在线第一 | 国产精品-色哟哟 | 激情五月综合色婷婷一区二区 | 国产卡一卡二在线 | 午夜精品久久久久久久久久久久 | 草草影院国产 |