• IMX6ULL移植篇-boot 命令的学习


    一.  boot 命令简介

    uboot 的作用是启动 Linux系统。所以 uboot 肯定有相关的 boot(引导)命令来启动 Linux。

    常用的与 boot 有关的命令有:bootz、bootm boot。

    本文主要学习  boot 命令的使用。

    本文接上一篇文章,如下:

    IMX6ULL移植篇-bootz命令的学习_凌肖战的博客-CSDN博客

    二.   boot 命令

    boot 命令也是用来启动 Linux 系统的,只是 boot 会读取环境变量 bootcmd 来启动 Linux
    统。
    bootcmd 是一个很重要的环境变量!其名字分为“ boot ”和“ cmd ”,也就是“引导”和“命令”,说明这个环境变量保存着引导命令,其实就是启动的命令集合,具体的引导命令内容是可 以修改的。

    例如,我们想使用 tftp 命令从网络启动 Linux。

    1.  首先,可以设置 环境变量 bootcmd。如下方法进行设置:

    进入开发板的 uboot命令模式下,输入如下命令:

    1. => setenv bootcmd 'tftp 0x80800000 zImage;tftp 0x83000000 imx6ull-alientek-nand.dtb;bootz 0x80800000 - 0x83000000'
    2. =>

    2.  其次,保存环境变量,操作如下:

    1. => saveenv
    2. Saving Environment to NAND...
    3. Erasing NAND...
    4. Erasing at 0x400000 -- 100% complete.
    5. Writing to NAND... OK

    3.  最后,运行 boot命令,操作如下:

    1. => boot
    2. FEC1 Waiting for PHY auto negotiation to complete.... done
    3. Using FEC1 device
    4. TFTP from server 192.168.1.66; our IP address is 192.168.1.50
    5. Filename 'zImage'.
    6. Load address: 0x80800000
    7. Loading: #################################################################
    8. #################################################################
    9. #################################################################
    10. #################################################################
    11. #################################################################
    12. #################################################################
    13. #################################################################
    14. #
    15. 853.5 KiB/s
    16. done
    17. Bytes transferred = 6680336 (65ef10 hex)
    18. Using FEC1 device
    19. TFTP from server 192.168.1.66; our IP address is 192.168.1.50
    20. Filename 'imx6ull-alientek-nand.dtb'.
    21. Load address: 0x83000000
    22. Loading: ###
    23. 2.9 MiB/s
    24. done
    25. Bytes transferred = 39666 (9af2 hex)
    26. Kernel image @ 0x80800000 [ 0x000000 - 0x65ef10 ]
    27. ## Flattened Device Tree blob at 83000000
    28. Booting using the fdt blob at 0x83000000
    29. Using Device Tree in place at 83000000, end 8300caf1
    30. Starting kernel ...
    31. Booting Linux on physical CPU 0x0
    32. Linux version 4.1.15 (wangtian@wangtian-virtual-machine) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01) ) #1 SMP PREEMPT Sat Sep 2 22:29:18 CST 2023

    可以看出,Linux内核成功加载并启动。以上就是 boot命令的使用。

  • 相关阅读:
    智能驾驶ADAS算法设计及Prescan仿真(2): 自适应巡航ACC控制策略设计与simulink仿真
    Kafka之Broker原理
    字符集编码(二):字符编码模型
    spring事物失效场景及其解决方案
    微信小程序搜索局域网设备
    通过阿里云OOS实现定时备份redis实例转储到OSS
    Spring MVC 执行流程
    蓝桥杯倒计时47天!DFS基础——图的遍历
    MapReduce理论
    家政小程序有哪些功能 怎么制作
  • 原文地址:https://blog.csdn.net/wojiaxiaohuang2014/article/details/132695597