imx8 uuu 全升级脚本

uuu_version 1.2.39

# Please Replace below items with actually file names
# @imx-boot-imx8mpevk-sd.bin-flash_evk			| boot loader
# @_Image			| kernel image, arm64 is Image, arm32 it is zImage
# @_board.dtb			| board dtb file
# @_initramfs.cpio.gz.uboot	| mfgtool init ramfs
# @_rootfs.tar.bz2		| rootfs
# @_uTee.tar			| optee image, put dummy _uTee.tar file here if platform is not MX6/MX7*

# This command will be run when i.MX6/7 i.MX8MM, i.MX8MQ
SDP: boot -f imx-boot-imx8mpevk-sd.bin-flash_evk

# This command will be run when ROM support stream mode
# i.MX8QXP, i.MX8QM
SDPS: boot -f imx-boot-imx8mpevk-sd.bin-flash_evk

# These commands will be run when use SPL and will be skipped if no spl
# SDPU will be deprecated. please use SDPV instead of SDPU
# {
SDPU: delay 1000
SDPU: write -f imx-boot-imx8mpevk-sd.bin-flash_evk -offset 0x57c00
SDPU: jump
# }

# These commands will be run when use SPL and will be skipped if no spl
# if (SPL support SDPV)
# {
SDPV: delay 1000
SDPV: write -f imx-boot-imx8mpevk-sd.bin-flash_evk -skipspl
SDPV: jump
# }

# use uboot burn bootloader to eMMC
# becaue difference chip, offset is difference
# you can use kernel to do that for specific boards
FB: ucmd setenv fastboot_dev mmc
FB: ucmd setenv mmcdev ${emmc_dev}
FB: flash bootloader imx-boot-imx8mpevk-sd.bin-flash_evk

FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi;

FB: ucmd setenv emmc_cmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi
FB: ucmd setenv emmc_cmd mmc bootbus ${emmc_dev} 2 2 1;
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi

FB: ucmd setenv fastboot_buffer ${loadaddr}
FB: download -f Image-imx8mpevk.bin
FB: ucmd setenv fastboot_buffer ${fdt_addr}
FB: download -f imx8mp-evk-rm67191.dtb
FB: ucmd setenv fastboot_buffer ${initrd_addr}
FB: download -f fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot
#FB: ucmd setenv bootargs console=${console},${baudrate} earlycon=${earlycon},${baudrate}
FB: acmd ${kboot} ${loadaddr} ${initrd_addr} ${fdt_addr}

# get mmc dev number from kernel command line
# Wait for emmc
FBK: ucmd while [ ! -e /dev/mmcblk*boot0 ]; do sleep 1; echo "wait for /dev/mmcblk*boot* appear"; done;

###############################################################################

# serach emmc device number, if your platform have more than two emmc chip, please echo dev number >/tmp/mmcdev 
FBK: ucmd dev=`ls /dev/mmcblk*boot*`; dev=($dev); dev=${dev[0]}; dev=${dev#/dev/mmcblk}; dev=${dev%boot*}; echo $dev > /tmp/mmcdev;

# dd to clear the possible MBR
FBK: ucmd mmc=`cat /tmp/mmcdev`; dd if=/dev/zero of=/dev/mmcblk${mmc} bs=512 count=1
# create partition
FBK: ucmd mmc=`cat /tmp/mmcdev`; PARTSTR=$'10M,500M,0c\n600M,,83\n'; echo "$PARTSTR" | sfdisk --force /dev/mmcblk${mmc}

FBK: ucmd mmc=`cat /tmp/mmcdev`; dd if=/dev/zero of=/dev/mmcblk${mmc} bs=1k seek=4096 count=1
FBK: ucmd sync

##################################uboot burn#####################################

# you can enable below command to write boot partition. but offset is difference at difference platform
#FBK: ucmd mmc=`cat /tmp/mmcdev`; echo 0 > /sys/block/mmcblk${mmc}boot0/force_ro
#FBK: ucp  imx-boot-imx8mpevk-sd.bin-flash_evk t:/tmp
#FBK: ucmd mmc=`cat /tmp/mmcdev`; dd if=/tmp/imx-boot-imx8mpevk-sd.bin-flash_evk of=/dev/mmc${mmc}boot0 bs=1K seek=32
#FBK: ucmd mmc=`cat /tmp/mmcdev`; echo 1 > /sys/block/mmcblk${mmc}boot0/force_ro

##################################kernelburn#####################################

FBK: ucmd mmc=`cat /tmp/mmcdev`; while [ ! -e /dev/mmcblk${mmc}p1 ]; do sleep 1; done
FBK: ucmd mmc=`cat /tmp/mmcdev`; mkfs.vfat /dev/mmcblk${mmc}p1
FBK: ucmd mmc=`cat /tmp/mmcdev`; mkdir -p /mnt/fat
FBK: ucmd mmc=`cat /tmp/mmcdev`; mount -t vfat /dev/mmcblk${mmc}p1 /mnt/fat
FBK: ucp  Image-imx8mpevk.bin t:/mnt/fat/Image
FBK: ucp  imx8mp-evk-rm67191.dtb t:/mnt/fat
FBK: ucp  imx8mp-ddr4-evk.dtb t:/mnt/fat
FBK: ucp  imx8mp-evk.dtb t:/mnt/fat
FBK: ucp  imx8mp-evk-sof-wm8960.dtb t:/mnt/fat
FBK: ucp  imx8mp-evk-pcie-ep.dtb t:/mnt/fat
FBK: ucp  imx8mp-evk-rpmsg.dtb t:/mnt/fat

#FBK: ucp  _uTee.tar t:/tmp/op.tar
#FBK: ucmd tar -xf /tmp/op.tar -C /mnt/fat
FBK: ucmd umount /mnt/fat

##################################rootfs burn#####################################

FBK: ucmd mmc=`cat /tmp/mmcdev`; mkfs.ext4 -F -E nodiscard /dev/mmcblk${mmc}p2
FBK: ucmd mkdir -p /mnt/ext4
FBK: ucmd mmc=`cat /tmp/mmcdev`; mount /dev/mmcblk${mmc}p2 /mnt/ext4
FBK: acmd export EXTRACT_UNSAFE_SYMLINKS=1; tar -jvx -C /mnt/ext4
FBK: ucp  ubuntu18.04-rootfs.tar.bz2 t:-
FBK: Sync
FBK: ucmd umount /mnt/ext4
FBK: DONE

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: i.MX8系列是由恩智浦半导体(NXP)推出的一款高性能的嵌入式处理器芯片。而UUU(Universal Update Utility)是一款用于烧录固件和文件的开源工具。 要使用UUU烧录i.MX8芯片,首先需要准备好以下几个步骤: 1. 下载UUU工具并解压缩。 2. 获取i.MX8芯片或开发板,并准备要烧录的固件或文件。 3. 连接i.MX8与计算机,可以使用USB线缆将它们连接起来。 然后,可以按照以下步骤进行烧录: 1. 打开终端或命令提示符,进入UUU工具所在的目录。 2. 编写一个脚本文件(如uuu_script.txt),在其中指定烧录的命令和参数。 3. 运行UUU工具,将脚本文件作为参数传递给它。例如,可以在终端中输入"uuu.exe uuu_script.txt"来执行烧录。 在脚本文件中,可以指定需要烧录的固件或文件的位置,以及目标设备的地址和路径等信息。还可以在脚本文件中使用其他UUU命令,如设置环境变量或执行其他操作。 执行烧录时,UUU会通过USB连接将固件或文件传输到i.MX8芯片中。烧录完成后,可以断开USB连接,并重新启动i.MX8来应用已烧录的固件或文件。 总结来说,使用UUU烧录i.MX8芯片需要下载并准备好UUU工具和烧录文件,然后编写一个脚本文件并传递给UUU来执行烧录操作。这样就可以将固件或文件传输到i.MX8芯片中,实现更新或更换操作系统或固件。 ### 回答2: imx8是指的i.MX 8系列处理器,它是一款高性能、低功耗的芯片,适用于各种嵌入式应用场景。而UUU是指的Universal Update Utility,它是一款用于烧录固件的开源工具。 使用UUU进行imx8的烧录,需要按照以下步骤进行: 1. 准备工作:首先,需要下载并安装UUU工具,并将imx8的固件文件下载到本地计算机。 2. 连接设备:将imx8处理器与计算机通过USB线或者JTAG调试器进行连接。确保连接稳定并正常识别。 3. 配置脚本:创建一个烧录配置脚本,该脚本包含了烧录的命令和参数。可以使用文本编辑器创建一个名为uuu_script.txt的文件,并将其保存到工作目录中。 示例脚本内容如下所示: ``` SDP: boot -f imx-boot-imx8.img SDP: download -f system.img SDP: jump -f u-boot-imx8.img ``` 这个示例脚本包含了三个命令,分别用于烧录引导器、系统镜像和启动u-boot。根据实际需要进行修改。 4. 开始烧录:打开终端或命令提示符,进入到UUU工具所在的目录。输入以下命令即可开始烧录: ``` uuu -b emmc uuu_script.txt ``` 这条命令告诉UUU工具使用emmc接口进行烧录,并使用之前创建的脚本文件。 5. 等待烧录完成:在烧录过程中,UUU工具会输出详细的进度信息。等待烧录完成后,会收到相应的提示。 总的来说,使用UUU进行imx8的烧录是一种方便快捷的方法,可以有效地管理和更新imx8的固件。通过准备工作、连接设备、配置脚本、开始烧录并等待烧录完成这几个步骤,我们可以轻松地完成imx8的烧录工作。 ### 回答3: IMX8是一种高性能的处理器系列,而UUU是一个用于烧录固件/操作系统到IMX8开发板或设备上的工具。以下是关于IMX8使用UUU烧录的一些要点: 首先,我们需要准备好一台电脑和IMX8开发板或设备。确保电脑上安装了UUU工具和对应的驱动程序。 接下来,我们需要准备好要烧录的固件/操作系统文件。这些文件可以是从官方网站上下载下来的,或者是通过编译生成的。 然后,将IMX8开发板或设备与电脑连接。可以通过USB线缆将它们连接起来,并确保电脑能够正确识别IMX8设备。 在电脑上打开终端或命令提示符窗口,并导航到UUU工具的安装目录。 执行UUU命令,可以使用以下简单的命令格式:uuu [uuu_script]。其中,uuu_script是指包含烧录操作的脚本文件。这个脚本文件中指定了需要烧录的固件/操作系统文件、烧录的地址等参数。 运行UUU命令后,它将自动执行脚本文件中指定的烧录操作。这个过程可能需要一些时间,具体的时间取决于固件/操作系统的大小和设备的性能。 一旦烧录完成,可以通过重启IMX8设备来验证烧录的固件/操作系统是否成功。 使用UUU烧录IMX8的好处是,它提供了一个简单而强大的工具,方便开发人员快速而准确地烧录固件/操作系统到IMX8设备上。它可以提高开发的效率,同时也降低了操作的复杂性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值