• Ubuntu驱动程序开发2-Uboot命令使用


    3、Uboot命令使用

    3.1 帮助命令

    help  //查看所有命令
    ?    //查看所有命令
    help bootz  //查看bootz命令说明
    ? bootz    //查看bootz命令说明

    3.2 信息查询

    bdinfo    //查看板子信息

    printenv    //输出环境变量信息
    printfenv baudrate    //打印指定环境变量(波特率)信息

    3.3 环境变量操作

    3.3.1 设置环境变量:

    setenv 命令 值
    setenv 命令 '值1 值2 值3'

    3.3.2 保存环境变量:

    saveenv

    3.4 网络操作

    首先需要设置一下环境变量:

    setenv ipaddr 192.168.1.50  //设置开发板IP地址。也可以不设置,使用dhcp命令从路由器获取IP地址
    setenv ethaddr 00:04:9f:04:d2:35  //开发板MAC地址
    setenv gatewayip 192.168.1.1  //网关
    setenv netmask 255.255.255.0  //子网掩码
    setenv serverip 192.168.1.250  //Ubuntu主机IP
    saveenv  //保存

    设置好后执行

    ping 192.168.1250

    出现下图所示说明ping成功

    3.4.1 nfs

    nfs [loadAddress] {[hostIPaddr:]bootfilename}
    nfs 80800000 192.168.1.250:/home/mk-linux/nfs/zImage  //将IP192.168.1.250这个主机下的/home/mk-linux/nfs路径下的zImage文件下载到开发板DRAM的0x80800000地址处

    3.4.2 tftp

    a)搭建tftp服务器
    sudo apt-get install tftp-hpa tftpd-hpa
    b)新建一个文件夹用于存放要发送的文件
    mkdir /home/mk-linux/tftpboot
    chmod 777 /home/mk-linux/tftpboot
    c)新建文件/etc/xinet.d/tftp,输入以下内容:
    server tftp
    {
     socket_type = dgram
     protocol = udp
     wait = yes
     user = root
     server = /usr/sbin/in.tftpd
     server_args = -s /home/mk-lunx/tftpboot/
     disable = no
     per_source = 11
     cps = 100 2
     flags = IPv4
    }
    d)启动tftp服务
    sudo service tftpd-hpa start
    e)修改/etc/default/tftpd-hpa文件
    TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/home/mk-linux/tftpboot"
    TFTP_ADDRESS=":69"
    TFTP_OPTIONS="-l -c -s"
    f)重启tftp服务
    sudo service tftpd-hpa restart
    g)将zImage文件复制到tftpboot文件夹并给予权限
    chmod 777 zImage
    h)使用
    tftp 80800000 zImage

    3.5 内存操作命令

    3.6 EMMC和SD卡操作命令

    3.7 BOOT操作命令

    3.7.1 bootz命令

      bootz用于启动zImage镜像文件

    bootz [addr [initrd[:size]] [fdt]]
    //addr:linux镜像文件在DRAM中的地址
    //initrd:是initrd文件在DRAM中的地址,如果不使用可以用'-'代替
    //fdt:设备树在DRAM中的地址

      一个完整的下载并启动linux内核的指令如下:

    tftp 80800000 zImage    //下载内核镜像到DRAM地址80800000
    tftp 83000000 imx6ull-mk-emmc.dtb  //下载设备树
    bootz 80800000 - 83000000  //启动内核

    3.7.2 bootm命令

      bootm用于启动uImage镜像文件

    bootm addr

    3.7.3 boot命令

      使用boot命令会读取环境变量bootcmd来启动linux系统,如果想使用tftp命令从网络启动Linux就可以设置bootcmd如下:

    setenv bootcmd 'tftp 80800000 zImage; tftp 83000000 imx6ull-alientek-emmc.dtb; bootz 80800000 - 83000000'
    saveenv

      然后直接运行boot命令就可以从网络启动Linux系统

    boot  //根据环境变量bootcmd启动Linux系统

    4、Uboot移植

  • 相关阅读:
    Python基础05
    Python基础04
    Python基础03
    Python基础02
    Python基础01
    软件测试
    深入了解软件测试基础04
    深入了解软件测试基础03
    深入了解软件测试基础02
    深入了解软件测试基础01
  • 原文地址:https://www.cnblogs.com/Mike2019/p/12864665.html
Copyright © 2020-2023  润新知