0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

i.MX6ULL|快速配置環(huán)境配置記錄

玩轉(zhuǎn)單片機 ? 來源:玩轉(zhuǎn)單片機 ? 2023-07-28 10:45 ? 次閱讀

最近換了新的筆記本,就把老的筆記本裝了ubuntu,使用體驗比虛擬機好很多,就算是老筆記本的配置,帶個ubuntu還是非常流暢的,就是要重新配置環(huán)境,這篇文章就來記錄下環(huán)境配置。

| 交叉編譯器安裝

交叉編譯參考交叉編譯器安裝這篇推文,具體步驟記錄得非常清楚。想要獲取當(dāng)前路徑,可以使用 pwd 命令:

0d61bdc6-2c9b-11ee-815d-dac502259ad0.png

| uboot編譯

uboot編譯參照uboot初探這篇推文,里邊有相關(guān)介紹和操作,這里就不做過多介紹。

0d9fa910-2c9b-11ee-815d-dac502259ad0.png

| 從網(wǎng)絡(luò)啟動 Linux 系統(tǒng)

可以通過從網(wǎng)絡(luò)啟動Linux系統(tǒng)這篇文章了解相關(guān)內(nèi)容,在ubuntu20中查看ip地址可以使用 ip addr查看,在win11中可以使用ipconfig查看ip,在保證網(wǎng)線接到同一局域網(wǎng)中,還需要配置uboot才能ping通win11和win11,win11需要關(guān)閉防火墻,配置如下:

setenvipaddr192.168.2.50//開發(fā)板IP地址
setenvethaddrb81d:01:00:00//開發(fā)板網(wǎng)卡MAC地址
setenvgatewayip192.168.2.1//開發(fā)板默認網(wǎng)關(guān)
setenvnetmask255.255.255.0//開發(fā)板子網(wǎng)掩碼
setenvserverip192.168.2.55/服務(wù)器地址,也就是Ubuntu地址
saveenv//保存環(huán)境變量

配置完后再重啟開發(fā)板,再ping通win11和ubuntu,確保它們都在同一局域網(wǎng)下面。最后再搭建TFTP服務(wù),測試linux能否正常通過網(wǎng)絡(luò)啟動。

測試啟動

1、設(shè)置環(huán)境變量

進入uboot中,輸入下面配置:

setenvbootargs'console=ttymxc0,115200root=/dev/mmcblk1p2rootwaitrw'
setenvbootcmd'tftp80800000zImage;tftp83000000imx6ull-14x14-evk-emmc.dtb;bootz80800000-83000000'
saveenv

2、下載文件

進入uboot中,輸入下面命令:

tftp80800000zImage
tftp83000000imx6ull-14x14-evk-emmc.dtb

3、啟動內(nèi)核

進入uboot中,輸入下面命令:

bootz80800000-83000000

| 編譯內(nèi)核

內(nèi)核的編譯可以參考移植內(nèi)核這篇推文,里邊有相關(guān)內(nèi)容介紹及實現(xiàn)過程等。

內(nèi)核編譯配置如下:

#!/bin/sh
#編譯之前先清理
makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-distclean
#配置Linux內(nèi)核
makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-imx_v7_mfg_defconfig
#編譯Linux內(nèi)核
makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-all-j16

最終會生成一個很重要的文件,就是zImage文件,下方是它存放在系統(tǒng)中的詳細路徑:

Linux內(nèi)核鏡像文件:
存放路徑為arch/arm/boot/zImage

IMX6ULL EVK開發(fā)板對應(yīng)的設(shè)備樹文件:
存放路徑為arch/arm/boot/dts/imx6ull-14x14-evk.dtb

| 編譯根文件系統(tǒng)

根文件系統(tǒng)相關(guān)知識可以借鑒根文件系統(tǒng)構(gòu)建這篇推文,詳細介紹了如何從零到一構(gòu)建一個根文件系統(tǒng)。

uboot配置:

setenvbootargs'console=ttymxc0,115200root=/dev/nfsnfsroot=192.168.2.55:/home/noah/linux/nfs/rootfs,proto=tcprwip=192.168.2.50192.168.2.1off'
saveenv

如果遇到根文件掛載失敗的,可以借鑒以下下面的方法:

原因:因為ubuntu的nfs版本為version4,而板子的nfs版本為version2,所以直接掛載上去無法識別

解決方法:在 /etc/default/nfs-kernel-server的最后一行添加以下代碼:

RPCNFSDOPTS="--nfs-version2,3,4--debug--syslog"

具體看下圖(使用命令:sudo gedit nfs-kernel-server):

0dd50682-2c9b-11ee-815d-dac502259ad0.png

| 新字符驅(qū)動

字符驅(qū)動可以借鑒新字符設(shè)備驅(qū)動模板這篇文章,里邊有完整的相關(guān)說明及源代碼;從官方下載了Linux kernel源碼進行編譯,遇到如下錯誤:

cc1: error: code model kernel does not support PIC mode 解決方法:打開官方內(nèi)核源碼,在Makefile中對應(yīng)修改一下:

ARCH?=arm
CROSS_COMPILE?=arm-linux-gnueabihf-
#Architectureaspresentincompile.h
UTS_MACHINE:=$(ARCH)
SRCARCH:=$(ARCH)

和


KBUILD_CFLAGS:=-Wall-Wundef-Wstrict-prototypes-Wno-trigraphs
-fno-strict-aliasing-fno-common
-Werror-implicit-function-declaration
-Wno-format-security
-std=gnu89-fno-pie

圖片如下:

0e0bac14-2c9b-11ee-815d-dac502259ad0.png

0e276c74-2c9b-11ee-815d-dac502259ad0.png

最后加載驅(qū)動,然后測試應(yīng)用程序,到此驅(qū)動開發(fā)環(huán)境基本搭建完成!






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux系統(tǒng)
    +關(guān)注

    關(guān)注

    4

    文章

    590

    瀏覽量

    27316
  • 虛擬機
    +關(guān)注

    關(guān)注

    1

    文章

    904

    瀏覽量

    28018
  • Uboot
    +關(guān)注

    關(guān)注

    4

    文章

    125

    瀏覽量

    28125
  • TFTP協(xié)議
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    5489
  • Ubuntu系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    85

    瀏覽量

    3898

原文標(biāo)題:i.MX6ULL|快速配置環(huán)境

文章出處:【微信號:玩轉(zhuǎn)單片機,微信公眾號:玩轉(zhuǎn)單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    通過工業(yè)智能網(wǎng)關(guān)實現(xiàn)中間變量表達式的快速配置

    ,出現(xiàn)告警可能是多個變量達到條件而觸發(fā)的,就需要對中間變量進行配置。 對此,物通博聯(lián)提供基于工業(yè)智能網(wǎng)關(guān)實現(xiàn)中間變量表達式的快速配置操作。用戶可以根據(jù)生產(chǎn)現(xiàn)場的應(yīng)用需求,靈活配置中間變量表達式,實現(xiàn)多參數(shù)、多條件
    的頭像 發(fā)表于 10-08 17:10 ?187次閱讀
    通過工業(yè)智能網(wǎng)關(guān)實現(xiàn)中間變量表達式的<b class='flag-5'>快速配置</b>

    在NXP源碼基礎(chǔ)上如何適配ELF 1開發(fā)板的UART功能

    。 接下來,我們將針對上述幾個UART接口逐一進行詳細的配置說明。本次源碼適配工作是在NXP i.MX6ULL EVK評估板的Linux內(nèi)核源碼(特定版
    的頭像 發(fā)表于 09-29 11:49 ?262次閱讀
    在NXP源碼基礎(chǔ)上如何適配ELF 1開發(fā)板的UART功能

    使用TPS6521815 PMIC為NXP i.MX 6ULL6UltraLite供電

    電子發(fā)燒友網(wǎng)站提供《使用TPS6521815 PMIC為NXP i.MX 6ULL、6UltraLite供電.pdf》資料免費下載
    發(fā)表于 09-13 09:44 ?1次下載
    使用TPS6521815 PMIC為NXP <b class='flag-5'>i.MX</b> <b class='flag-5'>6ULL</b>、<b class='flag-5'>6</b>UltraLite供電

    Linux平臺移植音頻芯片實戰(zhàn)記錄

    本文詳細記錄在NXP I.MX6ULL+Linux平臺下進行WM8960音頻芯片移植的過程,其他平臺操作方法類似,希望為大家提供幫助。
    的頭像 發(fā)表于 05-17 14:28 ?1013次閱讀
    Linux平臺移植音頻芯片實戰(zhàn)<b class='flag-5'>記錄</b>

    淺析在NXP I.MX6ULL+Linux平臺下進行WM8960音頻芯片移植的過程

    本文詳細記錄在NXP I.MX6ULL+Linux平臺下進行WM8960音頻芯片移植的過程,其他平臺操作方法類似,希望為大家提供幫助。
    的頭像 發(fā)表于 05-17 11:33 ?1139次閱讀
    淺析在NXP <b class='flag-5'>I.MX6ULL</b>+Linux平臺下進行WM8960音頻芯片移植的過程

    I.MX6ULL-飛凌 ElfBoard ELF1板卡- 減少uboot階段的等待時間

    ; saveenv 也可以在include/configs/mx6ullevk.h中將bootdelay設(shè)置為默認環(huán)境變量,并設(shè)置其值。 如果不設(shè)置bootdelay環(huán)境變量,我們也可以在代碼中進行修改,在include/con
    發(fā)表于 04-12 09:06

    基于飛凌嵌入式i.MX6ULL核心板的電梯智能物聯(lián)網(wǎng)關(guān)方案

    使用飛凌嵌入式FETMX6ULL-S核心板作為智能電梯物聯(lián)網(wǎng)關(guān)的主控平臺,為智能電梯的變革提供了強有力的技術(shù)支持。
    的頭像 發(fā)表于 03-22 10:45 ?1370次閱讀
    基于飛凌嵌入式<b class='flag-5'>i.MX6ULL</b>核心板的電梯智能物聯(lián)網(wǎng)關(guān)方案

    適用于 NXP i.MX 6ULL、6ULZ 和 6UltraLite的TPS6521835電源管理IC數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《適用于 NXP i.MX 6ULL、6ULZ 和 6UltraLite的TPS6521835電源管理IC數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 03-01 09:10 ?0次下載
    適用于 NXP <b class='flag-5'>i.MX</b> <b class='flag-5'>6ULL</b>、<b class='flag-5'>6</b>ULZ 和 <b class='flag-5'>6</b>UltraLite的TPS6521835電源管理IC數(shù)據(jù)表

    小疆CCLINK轉(zhuǎn)ModbusTCP網(wǎng)關(guān)快速配置說明

    關(guān)鍵字:cclink ModbusTCP 三菱PLC CCLINK轉(zhuǎn)ModbusTCP 本案例是用于指導(dǎo)客戶快速使用CCLINK轉(zhuǎn)ModbusTCP網(wǎng)關(guān)建立起設(shè)備通訊,具體功能如下圖所示 拓撲圖
    的頭像 發(fā)表于 01-23 17:27 ?457次閱讀
    小疆CCLINK轉(zhuǎn)ModbusTCP網(wǎng)關(guān)<b class='flag-5'>快速配置</b>說明

    AD7147使用,input pin與conversion stage是怎么連接的?控制寄存器要如何快速配置?數(shù)據(jù)是怎么輸入輸出?

    AD7147使用,input pin與conversion stage是怎么連接的?控制寄存器要如何快速配置?數(shù)據(jù)是怎么輸入輸出的? 我需要用AD7147做幾個簡單的觸控屏的驅(qū)動(僅僅是觸控部分
    發(fā)表于 12-18 06:53

    jvm配置mx

    JVM配置中的mx參數(shù)主要用于設(shè)置JVM的最大堆內(nèi)存大小。本文將詳細介紹mx參數(shù)的作用、配置方法以及如何選擇合適的值。 一、mx參數(shù)的作用
    的頭像 發(fā)表于 12-05 14:24 ?659次閱讀

    如何通過GPIO驅(qū)動配置實現(xiàn)控制i.MX8芯片引腳電平變化

    本文我們要講的是如何通過 GPIO 驅(qū)動配置實現(xiàn)控制 i.MX8 芯片引腳電平變化。
    的頭像 發(fā)表于 12-04 11:41 ?995次閱讀
    如何通過GPIO驅(qū)動<b class='flag-5'>配置</b>實現(xiàn)控制<b class='flag-5'>i.MX</b>8芯片引腳電平變化

    i.MX6ULL——ElfBoard ELF1板卡 初次編譯uboot的方法

    在下面章節(jié)有講解,本章節(jié)主要演示編譯流程,ELF1開發(fā)板的配置文件為imx6ull_elf1_defconfig。 三、 編譯 如果曾經(jīng)編譯過,在編譯之前可以使用make clean命令清除一下中間
    發(fā)表于 11-16 09:34

    行車記錄儀專用的配置工具:termconfigv1.52快速配置工具

    一款行車記錄儀專用的配置工具,可以快速產(chǎn)生指令termconfigv1.52快速配置工具
    發(fā)表于 11-15 09:30 ?3次下載

    如何使用配置工具配置 i. MX7D的IIC和UART配置 ?

    請指導(dǎo)我如何使用配置工具配置 i. MX7D 的 IIC 和 UART 配置 ? 我之所以要求這樣做,是因為我假設(shè)ITC和UART通常通過開
    發(fā)表于 11-13 06:23