TURBOYAN博客-https://turboyan.com

TURBOYAN博客
https://turboyan.com
  1. 首页
  2. 科普
  3. 正文

uboot中bootargs和bootcmd的命令含义

2024 年 5 月 18 日 252点热度 0人点赞 0条评论

一、BOOTCMD

(1)常用命令

  • 加载内核镜像命令,如:
    1. 从网络加载:tftp
    2. 从存储设备加载:fatload, ext4load, load, sf
  • 加载设备树文件命令,如:
    1. 从网络加载:tftp
    2. 从存储设备加载:fatload, ext4load, load, sf
  • 启动内核命令,如:
    1. bootz
    2. bootm
  • 环境变量设置命令,如:
    1. setenv
  • 其他自定义命令或脚本,如:
    1. 执行特定的脚本文件
    2. 执行特定的操作或配置

(2)例子

从SPI FLASH中加载内核启动Linux

#初始化或识别第一个 SPI Flash 设备
sf probe 0;
#将 SPI Flash 中的数据读取到内存地址0x41800000处,读取的起始地址是0x100000,读取的长度是0x10000
sf read 0x41800000 0x100000 0x10000;
#将 SPI Flash 中的数据读取到内存地址0x41000000处,读取的起始地址是0x110000,读取的长度是0x400000
sf read 0x41000000 0x110000 0x400000;
#启动内核,使用0x41000000作为内核的起始地址,0x41800000作为根文件系统的起始地址
bootz 0x41000000 - 0x41800000

从EMMC或TF卡中加载内核启动Linux

#设置引导模式为"secure"模式
setenv bootm_boot_mode sec;
#从MMC卡的第一个分区中加载名为"zImage"的文件到内存地址0x41000000
load mmc 0:1 0x41000000 zImage;
#从MMC卡的第一个分区中加载名为"sun8i-v3s.dtb"的设备树文件到内存地址0x41800000
load mmc 0:1 0x41800000 sun8i-v3s.dtb
#启动内核,使用0x41000000作为内核的起始地址,0x41800000作为设备树的起始地址
bootz 0x41000000 - 0x41800000

其他命令举例

##从FAT文件系统中加载文件,load比fatload跟通用,load支持FAT、ext2、ext3等文件系统
1、mmc dev 1    #切换到 EMMC
2、fatload mmc 1:1 0x41000000 zImage #读取 zImage 到 0x41000000 处
3、fatload mmc 1:1 0x41800000 sun8i-v3s.dtb #读取设备树到 0x41800000 处

##从网络加载文件,TFTP方式
1、tftp 0x41000000 zImage;   #通过TFTP从网络下载名为"zImage"的文件到内存地址0x41000000
2、tftp 0x41800000 sun8i-v3s.dtb   #通过TFTP从网络下载名为"sun8i-v3s.dtb"的设备树文件到内存地址0x41800000
3、bootz 0x41000000 - 0x41800000  #使用下载的zImage和设备树文件启动内核,内核起始地址为0x41000000,设备树文件地址为0x41800000
本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2024 年 5 月 18 日

turboyan

这个人很懒,什么都没留下

点赞
< 上一篇

文章评论

您需要 登录 之后才可以评论

归档

  • 2024 年 5 月

分类

  • 开源源码
  • 科普

COPYRIGHT © 2024 turbo-blog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang