【UBOOT】1-使用与烧写

​一、uboot简介

1)uboot是一个裸机程序,比较复杂

2)最主要的作用是引导Linux内核启动;

  • 初始化DDR;
    • 因为Linux是运行在DDR里面的;
    • 而Linux镜像(zImage或uImage+dtb)一般存放在SD EMMC NADN FLASHZ外置存储区域
    • 需要将Linux镜像从外置flash拷贝到内存中
  • 引导内核启动

二、​uboot获取

  • uboot官方。缺点:支持少、某一款具体芯片驱动等不完善
  • SOC厂商,从uboot官网下载某一版本的uboot,加入相应自己的SOC以及驱动;
  • 做开发板的厂商,参考厂商的uboot

三、uboot编译

直接使用正点原子提供的uboot源码了,具体见:【链接

  • 编译uboot的时候,需要先配置
bash 复制代码
# 先清除下工程
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
# 配置
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_ddr512_emmc_defconfig
  • 编译
bash 复制代码
# v=1是显示打印信息
make V=1  ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-  
  • 产物生成:
    • u-boot.bin
    • 使用tools/mkimage软件添加头部信息,生成u-boot.imx,就能烧写进板子里了

四、烧写

使用SD卡进行烧写

​4.1 准备

1)烧写脚本:imxdownload

2)格式化工具

使用工具SDforamatter格式化SD卡

3)查看SD卡状态Linux指令:sudo fdisk -l

4.2 ​操作

1)虚拟机上操作:

bash 复制代码
chmod 777 imxdownload
./imxdownload u-boot.bin /dev/sdf
  1. 上述,就把uboot烧写到SD卡中了;
  2. 然后把SD卡拔了,插开发板上;
  3. 打开开发板,复位一下;

4.3 遇到问题

Q1: VMware Ubuntu认不出SD读卡器解决办法

相关推荐
Camellia-Echo3 分钟前
【Linux从青铜到王者】Linux进程间通信(一)——待完善
linux·运维·服务器
Linux运维日记14 分钟前
k8s1.31版本最新版本集群使用容器镜像仓库Harbor
linux·docker·云原生·容器·kubernetes
我是唐青枫23 分钟前
Linux dnf 包管理工具使用教程
linux·运维·服务器
编程修仙1 小时前
Collections工具类
linux·windows·python
芝麻团坚果2 小时前
对subprocess启动的子进程使用VSCode python debugger
linux·ide·python·subprocess·vscode debugger
写点什么啦2 小时前
[debug]不同的window连接ubuntu的vscode后无法正常加载kernel
linux·vscode·ubuntu·debug
wellnw2 小时前
[ubuntu]编译共享内存读取出现read.c:(.text+0x1a): undefined reference to `shm_open‘问题解决方案
linux·ubuntu
不爱学习的YY酱2 小时前
【操作系统不挂科】<CPU调度(13)>选择题(带答案与解析)
java·linux·前端·算法·操作系统
DC_BLOG2 小时前
Linux-Nginx虚拟主机
linux·运维·nginx
XY.散人2 小时前
初识Linux · 信号处理 · 续
linux·信号处理