【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读卡器解决办法

相关推荐
码农小韩1 小时前
Linux应用开发(八)——TCP/IP网络编程基础
linux·嵌入式软件开发·linux操作系统·嵌入式操作系统·linux网络编程·linux应用
迷途之人不知返1 小时前
【进程】-5-进程优先级
linux
fengyehongWorld1 小时前
Linux squid搭建基础代理服务器
linux·运维·服务器
木白CPP2 小时前
Linux DMA驱动详解(二)-----DMA的使用者
java·linux·运维
赵民勇2 小时前
systemd-socket-activate命令详解
linux·运维
Cx330❀3 小时前
【Linux网络】网络层 IP 协议:从网段划分到内核源码解析
大数据·linux·服务器·网络·tcp/ip·性能优化·langchain
企鹅的蚂蚁3 小时前
LubanCat RK3588 实时 Linux 开发(七):YT6801 PCIe 网卡驱动移植与 vermagic 排查
linux·rk3588·linux驱动·yt6801·pcie网卡·vermagic
DYWorker0013 小时前
Linux驱动子系统:DMA子系统 —— Consumer和Provider(006)
linux·驱动开发
byte轻骑兵3 小时前
【BlueZ】 log 模块:日志系统的实现与自定义日志输出配置
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙
探索云原生4 小时前
KubeClipper 1.7.0 发布:Operation 优化与 Kubernetes 1.37 支持
linux·docker·云原生·kubernetes·go