sd卡烧录U-Boot和Linux内核镜像,设备树以及根文件系统

本文详细介绍了如何在Ubuntu环境下制作嵌入式SD/TF启动卡,包括分区设置、格式化、UBOOT烧录、内核烧录以及根文件系统的烧录过程,同时涉及了Bootargs和mmcargs的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.基于Ubuntu的linux环境制作嵌入式SD/TF启动卡

1.1分区设置

 1.2格式化分区

2.SD卡烧录uboot

3.SD卡烧录内核

 4.sd卡烧录根文件系统


 

1.基于Ubuntu的linux环境制作嵌入式SD/TF启动卡

1.1分区设置

首先查看设备的挂载情况

df -l

 有挂载的设备的话取消挂载

sudo umount /dev/xxx

 再次查看系统设备情况

sudo fdisk -l

执行分区命令:

sudo fdisk /dev/sdb 

p #输入p查看分区

d #输入d删除原有分区

d #输入d确认分区是否删除成功

n #输入n创建新分区

p #输入p选择分区空间

输入分区数字

输入一个地址 16384

+3G

w #输入w保存分区

查看刚才的分区情况

sudo lsblk  

 1.2格式化分区

使用Linux系统自带的格式化工具

sudo mkfs.ext4 /dev/sdb2

sudo mkfs.ext4 /dev/sdb1

2.SD卡烧录uboot

sudo dd if=uboot-imx of=/dev/sdb bs=512 seek=2 conv=sync

3.SD卡烧录内核

mkdir tmpdir                        # 挂载点必须存在
sudo mount /dev/sdb1 tmpdir/        # 将外部设备 /dev/sdb1 挂载到 tmpdir         
 
sudo cp zImage imx6null.dtb tmpdir/        # 将linux内核拷贝到 /dev/sdb1
 
sudo umount tmpdir                # 使用完以后,取消挂载

 sd卡加载内核

bootcmd=run findfdt;run findtee;mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi
 

205 "run findfdt;" \
206 "mmc dev ${mmcdev};" \
207 "mmc dev ${mmcdev}; if mmc rescan; then " \
208 "if run loadbootscript; then " \
209 "run bootscript; " \
210 "else " \
211 "if run loadimage; then " \
212 "run mmcboot; " \
213 "else run netboot; " \
214 "fi; " \
215 "fi; " \
216 "else run netboot; fi"

205 行, run findfdt ;使用的是 uboot run 命令来运行 findfdt findfdt NXP 自行添加
的环境变量。 findfdt 是用来查找开发板对应的设备树文件 (.dtb) IMX6ULL EVK 的设备树文件
imx6ull-14x14-evk.dtb
206 行, mmc dev ${mmcdev} 用于切换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hqb_newfarmer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值