Uboot下的命令与环境变量

help 命令

你可以得到大部分命令的用法介绍,展示出来的一般都是已经在Uboot代码中实现了的,也有例外。
还可以help [想要的指令] 的方式查询指令详细用法。

mem命令

mem list: 列出当前扫描到的所有的设备
mem dev: 当前正在操作的设备
mem dev num : 你可以选择切换到想要的设备上
mem part: 列出当前设备的分区

tftp命令

tftp [ARMaddress] filename
当通过setenv serverip 192.168.9.** 设置好tftp服务器后使用,把服务器的指定文件写入到指定内存中。

setenv

setenv ethact [网卡] 设置指定网卡,至于为什么是这个,而且为什么我用e1000网卡时是为 e1000#0 ,需要看了uboot代码才能懂。

booti 与 bootm区别:

bootp - boot image via network using BOOTP/TFTP protocol
bootz - boot Linux zImage image from memory
bootm - boot application image from memory。
用法:bootm [内存地址] // 从指定位置启动参考链接

booti - boot arm64 Linux Image image from memory。
用法:booti [addr [initrd[:size]] [fdt]]
booti:这是命令本身,用于引导 Linux ‘Image’ 格式的内核
addr:这是必选参数,指定内存中存储的 Linux ‘Image’ 格式的内核地址。
initrd:这是可选参数,指定内存中的 initrd(初始根文件系统)的地址。如果提供了 initrd 参数,还可以选择性地在后面加上 :size,以指定 RAW 格式 initrd 的大小。如果要引导带有 initrd 但没有设备树的内核,可以在 initrd 参数位置使用 ‘-’。
fdt:这是必选参数,指定内存中的设备树 blob 的地址。引导 Linux 内核需要扁平化的设备树。

疑问:什么是initrd?
initrd(Initial RAM Disk)是一个初始的根文件系统,它在Linux系统启动过程的早期阶段被用来加载必要的驱动模块,使得系统能够访问真正的根文件系统所在的磁盘分区。因为我常用的内核Image支持某种文件系统启动,所以这个一般不需要,参考链接:https://blog.csdn.net/weixin_45264425/article/details/129190771。

sf相关命令 与 ext4load、fatload

sf 有一堆相关命令以write为例,其他的看手册:

sf read addr offset|partition len

将于将内存中的数据写入到SPI闪存(SPI Flash)中,详解如下:
addr: 这是内存中数据的起始地址,即你想要从内存中写入到闪存的数据的地址。
offset|partition: 这个参数可以是选择两种形式之一:offset 是SPI闪存中的偏移量,即你想要开始写入数据的位置。partition 是SPI闪存分区的名称,如果你指定了一个分区名称,数据将从该分区的起始位置开始写入。
len: 这是你要写入到闪存中的数据的长度(以字节为单位)。

ext4load与fatload均用于从自己指定的文件系统中加载文件到内存中。使用方法相同:

xxxload <interface> <dev[:part]> [addr] [filename] [bytes]

<interface>:存储设备使用的接口,如mmc、sata等。
<dev[:part]>:设备编号和分区编号,用于指定EXT4文件系统所在的分区。
[addr]:可选参数,指定将文件加载到内存中的地址。
[filename]:要加载的文件名。
[bytes]:可选参数,指定要加载的字节数。

相关推荐

  1. Uboot命令环境变量

    2024-07-20 22:50:01       20 阅读
  2. 掌握uboot使用2个关键点:命令环境变量

    2024-07-20 22:50:01       32 阅读
  3. 【驱动】uboot常用环境变量命令

    2024-07-20 22:50:01       32 阅读
  4. 【linux学习】linux添加环境变量方法

    2024-07-20 22:50:01       48 阅读
  5. 4.9 海思SS928开发 - uboot开发 - 环境变量工具使用

    2024-07-20 22:50:01       26 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 22:50:01       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 22:50:01       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 22:50:01       45 阅读
  4. Python语言-面向对象

    2024-07-20 22:50:01       55 阅读

热门阅读

  1. 力扣第二十二题——括号生成

    2024-07-20 22:50:01       18 阅读
  2. WebKit简介及工作流程

    2024-07-20 22:50:01       15 阅读
  3. 编程中的智慧之设计模式一

    2024-07-20 22:50:01       16 阅读
  4. NVM配置

    NVM配置

    2024-07-20 22:50:01      16 阅读
  5. 获取磁盘剩余容量-----c++

    2024-07-20 22:50:01       14 阅读
  6. springboot3.2 RedisCacheManager配置

    2024-07-20 22:50:01       16 阅读