• Linux-使用uboot命令将Linux镜像和设备树文件下载到DRAM中


    一、使用uboot中的tftp命令将Linux镜像和设备树文件下载到DRAM中

      1.uboot中的tftp命令格式如下:

    1 tftpboot [loadAddress] [[hostIPaddr:]bootfilename]

      loadAddress:要保存的DRAM地址;

      [[hostIPaddr:]bootfilename]:要下载的文件地址。

      比如使用uboot的tftp命令将tftp文件夹中的zImage下载到DRAM的0x8080 0000地址处,然后再将设备树imx6ull-fire-emmc.dtb下载到DRAM的0x8300 0000地址处,最后使用bootz命令启动:

    1 tftp 80800000 zImage
    2 tftp 83000000 imx6ull-fire-emmc.dtb
    3 bootz 8080000083000000

       注意:在使用tftp服务的时候需要给对应的文件目录以及文件对应的权限,通常设置文件的权限方式为“chmod 777 xxx”;

    二、使用uboot中的nfs命令将Linux镜像和设备树文件下载到DRAM中

      1.uboot中的nfs命令格式如下:

    1 nfs [loadAddress] [[hostIPaddr:]bootfilename]

      loadAddress:要保存的DRAM地址;

      [[hostIPaddr:]bootfilename]:要下载的文件地址。

      比如使用uboot的nfs命令将nfs文件夹中的zImage下载到DRAM的0x8080 0000地址处,然后再将设备树imx6ull-fire-emmc.dtb下载到DRAM的0x8300 0000地址处,最后使用bootz命令启动:

    1 nfs 80800000 192.168.1.110:/home/robot/linux/nfs/zImage
    2 nfs 83000000 192.168.1.110:/home/robot/linux/nfs/imx6ull-fire-emmc.dtb
    3 bootz 80800000 - 83000000

       注意:在使用nfs服务的时候需要给对应的文件目录以及文件对应的权限,通常设置文件的权限方式为“chmod 777 xxx”;

    三、使用uboot中的fatload命令将EMMC中的Linux镜像和设备树文件下载到DRAM中

      1.在EMMC作为Flash的Linux开发板中EMMC通常有3个分区:

      (1)分区0:用来存放uboot;

      (2)分区1:用来存放Linux镜像和设备树;

      (3)分区2:用来存放根文件系统。

      2.使用fatinfo命令查询指定EMMC设置指定分区的文件系统信息,格式如下:

    1 fatinfo <interface> [<dev[:part]>]

      interface:表示接口,如emmc;

      dev:表示查询的设备号;

      part:表示查询的分区。

      比如查询EMMC分区1的文件系统信息,命令如下: 

    1 fatinfo mmc 1:1

      结果如下图所示:

      EMMC分区1的文件系统为FAT16格式。

      3.使用fstype命令查看EMMC设备某个分区的文件系统格式,命令格式如下:

    1 fstype <interface> <dev>:<part>

      interface:表示接口,如emmc;

      dev:表示查询的设备号;

      part:表示查询的分区。 

      比如查看3个分区的文件系统格式,命令如下:

    1 fstype mmc 1:0    /* 查看分区0 */
    2 fstype mmc 1:1    /* 查看分区1 */
    3 fstype mmc 1:2    /* 查看分区2 */

      结果如下图所示:

      

      分区0没有格式化文件系统格式未知;分区1格式为fat;分区2格式为ext4。

      4.使用fatload命令将指定的文件读取到DRAM中,命令格式如下:

    1 fatload <interface> [<dev[:part]> [<addr>[<filename> [bytes [pos]]]]]

      interface:接口,如:emmc;

      dev:设备号;

      part:分区;

      addr:保存在DRAM中的起始地址;

      filename:要读取的文件名;

      bytes:读取字节数,如果为0或者省略表示读取整个文件;

      pos:要读的文件相对于文件首地址的偏移,如果为0或者省略表示从文件首地址开始读取;

      比如使用fatload命令将emmc分区1中的zImage下载到DRAM的0x8080 0000地址处,然后再将设备树imx6ull-fire-emmc.dtb下载到DRAM的0x8300 0000地址处,最后使用bootz命令启动:

    fatload mmc 1:1 80800000 zImage
    fatload mmc 1:1 83000000 imx6ull-fire-emmc.dtb
    bootz 80800000 - 83000000
  • 相关阅读:
    1 2 3 4 5 6 7 8 9 = 81 在19之间添加加减乘除号,使等式成立
    D3D 模板缓存的创建过程
    visual studio 引用lib
    ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(一) 基本模型以及数据库的建立
    ViewModel、ViewData、ViewBag、TempData、Session之间的区别和各自的使用方法
    ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(二)数据库初始化、基本登录页面以及授权逻辑的建立
    在visual studio code和visual studio中编写TypeScript文件自动生成JavaScript文件
    605. 种花问题
    53. 最大子数组和
    47. 全排列 II
  • 原文地址:https://www.cnblogs.com/wenhao-Web/p/13208933.html
Copyright © 2020-2023  润新知