打印

u-boot的烧写和u-boot命令

[复制链接]
163|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电子学长|  楼主 | 2018-9-29 19:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
第一、先烧写到SD卡,

cat  /proc/partitions          #找出SD卡对应的设备

sudo dd iflag=dsync oflag=dsync if=smart210-uboot.bin of=/dev/sdb seek=1

sync

再使用uboot命令烧写到nand:



用ckermit:

loadb   0x21000000   #uboot命令

send  /tftpboot/filenamesend  /tftpboot/smart210-uboot.bin     #kermit命令



用tftp:

tftp 21000000 smart210-uboot.bin             #uboot命令



nand erase.chip                                    #uboot命令

nand write 21000000 0 3c1f4          #uboot命令



第二、使用jtag直接烧写到nand中

直接用jlink烧写即可。



uboot常用命令:

bdinfo:打印目标板配置信息

flinfo:获取可用的flash信息

help:打印帮助信息

base:打印或设置地址偏移

crc:crc32的校验和计算,用于计算某一段存储区的校验和。

cmp:测试两个存储器区域是否相同。

cp:拷贝存储区。

md:存储区显示,显示某些区域的值。

mm:存储区修改,修改累加地址的值。

mtest:存储区测试,测试写操作是够成功,只能测试rom。

mw:内存填充,

nm:内存修改,修改同一地址的值。

erase:擦除flash存储器某个区域

protect:使能或禁止flash保护功能,更改某一区域的只读属性。

bootm:从存数器启动应用程序镜像

go:开始某地址处的应用程序。

loadb:经由串口线加载二进制文件(kermit模式)

tftpboot:使用tftp协议由网络加载映像文件

printenv:打印环境变量,ipaddr,hostname,netmask。

saveenv:保存环境变量到存储器(sd和nand)

setenv:设置环境变量

nfs:能使用NFS网络协议通过网络启动映像。



bootm工作原理:

用 于启动操作系统镜像,从镜像头获取操作系统类型,所使用的文件压缩方法,加载和入口点地址等信息。加载镜像文件到指定的存储器,甚至解压。也可以传递要求 的启动参数并在入口点启动操作系统。第一个参数是待加载的映像的存储地址(ISRAM,DRAM,NAND),之后可以添加操作系统需要的参数。



bootm用于linux操作系统:

传递一个可选的参数,作为initrd ramdisk映像的起始地址,bootm命令有三个步骤组成:

1.linux内核映像被解压缩并拷贝到DRAM

2.ramdisk映像被加载到DRAM

3.控制权交给linux内核,并传递ramdisk映像的位置和大小信息。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

447

帖子

1

粉丝