XZDEC使用参考


REVISION HISTORY

Revision No.
Description
Date
1.0
  • Initial release
  • 04/18/2023

    1. 概述

    本文讲述Sigmastar XZDEC使用方法,为SPINOR、SPINAND(FLASH ECC)载入压缩档时,提供高效的解压;压缩数据不需要先载入到dram,再由CPU进行解压;而是利用bdma建立SPI与XZDEC的数据传输,压缩数据由bdma 从spi载入到XZDEC,XZDEC将解压后的数据写入dram


    2. project配置

    2.1. 查看当前defconfig使用的IMAGE_CONFIG

    确认使用的CONFIG_IMAGE_CONFIG为“spinand.squashfs.partition.config”

    /# make ipc_iford.nor.glibc-11.1.0-squashfs.ssc029a.512.bga12_ddr4_defconfig
    /# cat .config |grep IMAGE
    CONFIG_IMAGE_CONFIG="spinand.squashfs.partition.config"
    

    2.2. 修改“spinand.squashfs.partition.config”

    2.2.1 uboot压缩格式选择

    2.2.2 kernel压缩镜像格式选择

    kernel编译的时候,会自动生成.xz、.sz压缩格式的文件。project编译的时候会把kernel/arch/链接到kbuild/$(KERNEL_VERSION)/arch下,修改kernel$(RESOURCE),就可以选择使用的kernel镜像格式

    2.3. uboot xzdec(command)

    loados nand/nor addr partname {filesize}
    

    spi快速启动linux,bootcmd示例:

    loados nor 0x23000000 KERNEL ${kernel_file_size}
    bootm 0x23000000