• 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命令的使用。

  • 相关阅读:
    【服务器数据恢复】raidz多块硬盘离线的数据恢复案例
    亚马逊日本站坠落防护安全装备JIST8165标准怎么办理?
    离子液体修饰的纳米金光学探针,荧光量子点
    【观察】华为:数智世界“一触即达”,应对数智化转型“千变万化”
    Java基础:Java数字类型
    Pytorch中的torch.device该如何迁移到MindSpore中
    商业园区的万能管理法,还怪高级的咧!
    Spring Boot 版本 GA、RC、beta等含义
    防止安卓崩溃的工具类
    虚拟世界游戏定制开发:创造独一无二的虚拟体验
  • 原文地址:https://blog.csdn.net/wojiaxiaohuang2014/article/details/132695597