USB PC升级


1. 空片升级


1.1. 使用场景和原理

norflash或nandfash里面没有任何资料。需要通过pcb的usb接入pc端,通过pc软件先下载一份uboot到内存,通过执行uboot和pc软件进行交互,完成下载升级。


1.2. 准备资料

用于引导的u-boot.bin ,升级用的image,pc tool。


1.3. Image

参考环境搭建,正常编译出对应的image:project/image/output/images


1.4. BOOT 引导程序

修改配置

开启如图的4个选项。

将编译生成的u-boot_spinand.img.binu-boot.img.bin 重新命名u-boot.bin (仅仅用作空片引导)。下面操作流程会用到此文件。


1.5. Pc tool

点击下载PC Tool


1.6. 操作流程

以norflash为例:

  1. release pc tool to images

  2. release u-boot.bin

    将**引导用的u-boot.bin**文件替换到此处。

  3. 有些版本需要添加images升级脚本(nandflash忽略此项)

    images\scripts[[mxp中添加如下脚本:

    sf probe 0
    
    mxp r.info MXPT
    
    sf erase $(sf_part_start) $(sf_part_size)
    
    sf write 0x21000000 $(sf_part_start) $(filesize)
    

    如果版本中如已经有如下类似代码,不用再添加。

     

  4. 通过usb 接入pc,上电,执行USBDownloadTool-nopad.exe

    正常情况下如图。

     


2. uboot下usb-pc升级

norflash或nandfash里面已经有uboot。且此份uboot支持device模式下接pc升级,通过执行uboot和pc软件进行交互,完成下载升级。

此份uboot默认支持ufu升级,但是不自动运行。

在boot中设定如下参数,开机会进入device升级模式。

setenv ota_upgrade_status 1

saveenv