Skip to main content
欢迎来到PAWPAW技术文档网站了解更多信息

xflash Debugging

本章节主要描述在xflash命令行工具的使用过程中,遇到的相关问题,以及对应的参考解决方式。

xflash无反应/失去响应

使用v15.1.4以上版本的XTC工具中的xflash命令在线烧录.xe文件,始终停留在烧录过程中。

这可能是由于XTAG没有连接xLink线,或者没有正确连接xLink线所导致的。

解决思路:

在xflash命令最后添加--force-jtag,该命令会使得芯片通过JTAG调试/烧录固件,而不使用xlink(默认选项)。使用示例如下:

xflash --factory $example.xe$ --spi-spec $example.spec$ --force-jtag

请将$example$包裹的内容替换成对应的文件全名。

--force-jtag

指示程序仅通过JTAG进行调试,而不使用更快的xSCOPE link。默认情况下,如果在XN文件中声明,则使用xSCOPE link。 建议仅在xSCOPE link物理断开时使用该选项。

未声明portHolder 0

在xflash时,出现如下错误

error: parse error before ',' token
error: use of undeclared identifer `portHolder 0'

解决思路:

XN文件中Flash mode,与xxx.spec的mode不匹配,需要将Flash使用的模式设置为一致,均为QSPI ModeSPI Mode

下面是Flash模式匹配错误的两个示例:

  • 在XN文件中定义flash使用QSPI模式(Class="SQIFlash"),而在烧录时使用的xxx.spec定义的模式是SPI(17. READ cmd为0x0B)。
  • 在XN文件中定义flash使用SPI模式(Class="SPIFlash"),而在烧录时使用的xxx.spec定义的模式是QSPI(17. READ cmd为0xEB)。

请检查XN文件或SPI-SPEC

在xflash xxx.xe文件时,出现错误:

error: Site 0 has started.  Error: Incomplete configuration for flash device at node "0". Please check XN file or SPI-SPEC.
error: Error: F03013 Failed to run: 0x7fffa47caa60.

情况1: XN文件当中定义的SPI mode ,而实际的硬件连接是QSPI mode,或者XN的是QSPI 模式,硬件是SPI mode

解决思路:

XN文件中Flash mode,与xxx.spec的mode不匹配,需要将Flash使用的模式设置为一致,均为QSPI ModeSPI Mode

情况2:xflash时,通过--spi-spec 指定的xxx.spec文件,文件中的device_id参数,与实际使用Flash device id不一样

解决思路:

将device_id参数, 修改为实际的Flash device id。

Flash device id获取命令如下

xflash --spi-read-id 0x9f --target=XCORE-AI-EXPLORER

验证页0x00000000失败

在xflash xxx.xe文件时,出现错误

Site 0 write 0x00000000.  Verify failed for page 0x00000000, offset 0x0000 (read 0x00, expected 0x02).

解决思路:

需要将Flash的xxx.spec描述文件中,PROT_TYPE_SR 更改为 PROT_TYPE_NONE,即去除保护;既然不需要保护了,那么QSPI_SP, QSPI_SU参数可以设定为 {{0,0},{0x00,0x00}}

Code DFU部分:DFU_FLASH_DEVICE参数,同样是需要修改的

注意

该报错信息可能由多种原因引起,需要根据实际情况进行分析,上述解决思路仅针对某些情况有效。