This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VM:开/关测试时Mbox超时错误

Guru**** 2539500 points
Other Parts Discussed in Thread: TDA4VM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1075821/tda4vm-mbox-timeout-error-while-on-off-test

部件号:TDA4VM

亲爱的Champs:

我的客户在开启/关闭测试时遇到TI-sci模块中的mbox超时错误。

请查看下面的日志并告诉我您的建议,他们如何调试日志?

此问题发生在我客户的定制主板上,他们在开/关测试时遇到35 % Ratio (高比)问题。

在开/关测试中,他们使用外部电源控制器打开/关闭系统。

(接通时间410秒/断开时间10秒)

请检查以下日志。

-错误日志。

e2e.ti.com/.../boot_5F00_err_5F00_cases.txt

-正常日志(无错误情况)。

e2e.ti.com/.../boot_5F00_ok.txt

谢谢,此致,

SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SI,您好!

    这是定制电路板还是标准TI TDA4VM EVM?  

    pingshan zhao 说:
    (准时410秒/关闭时间10秒)

    它们如何触发电源开/关?  软件触发或外部电源切换设备?

    ——基尔西

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,TI团队:

    这是我们定制的电路板,
    使用外部电源切换设备进行测试。

    谢谢你。
    城南市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Keerthy:

    您是否检查了他们的日志,您能否建议他们如何调试日志?

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Keerthy:

    他们在开/关测试中仍面临35 % 比率问题,这是非常紧迫的问题,因为他们将很快开始生产。

    您能否为他们提供如何在ti-sci模块中进行调试的指南?

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SI,您好!

    尝试隔离此mbox超时是否来自remoteprocs。 您是否可以禁用DSP和r5f的远程处理器节点并检查是否
    发生这种情况?

    这将给我们一个线索。

    ——基尔西

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,TI团队:

    如果我禁用所有远程处理器,mbox超时不会发生。

    我做了一些额外的测试。

    仅禁用R5F Cores(J7-main-r5f0_0, J7-main-r5f0_1)会导致症状
    仅禁用DSP内核(C6x,C7x)会导致症状。

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,TI团队:

    有关"禁用所有远程处理器"测试的更多信息。

    多次重复测试后,出现mbox超时错误。

    关于10 % 发生的几率。


    谢谢你。
    城南

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sungnam先生,您好!

    您基于什么SDK版本, 您对每个内核使用什么固件?  

    mbox_timeout错误是MCU1_0固件不能正常运行/执行的典型症状。 您可以尝试禁用内核DTS中的MCU1_0内核,并查看问题是否仍然存在。

    我看到您的内存映射与我们的SDK有很大不同。 您对U形靴进行了哪些更改以适应这种情况?

    此致

    Suman

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:  

    感谢您的意见。

    您基于什么SDK版本, 您对每个内核使用什么固件?  

    -> 我们正在使用8.0 SDK。  

    TI-processor-SDK-RTOS-j721e-EVM-EVM-08_00_00_12,
    TI-processor-SDK-Linux-J7-EVM-08_00_00_08

    -> 我正在使用RTOS 8.0 中包含的修改固件。 如上一条所述,
    即使未加载所有固件,也会发生mbox超时。

     J7-C66_0-FW -> VISION APPS_EVM/VX_APP_RTOS_LINUX_C6x_1.OUT
     J7-C66_1-FW -> VISION APPS_EVM/VX_APP_RTOS_LINUX_C6x_2.OUT
     J7-C71_0-FW -> VISION APPS_EVM/VX_APP_RTOS_LINUX_c7x_1.out
     j7-main-r5f0_0-fw -> vision应用程序_EVM-VM/vx_app_RTOS_Linux_MCU2_0.out
     j7-main-r5f0_1-fw -> vision应用程序_EVM-VM/vx_app_RTOS_Linux_MCU2_1.out
     j7-mcU-r5f0_0-fw -> vision应用程序_EVM-VM/vx_app_RTOS_linux_mcu1_0.out


    mbox_timeout错误是MCU1_0固件不能正常运行/执行的典型症状。 您可以尝试禁用内核DTS中的MCU1_0内核,并查看问题是否仍然存在。

    ->我们正在通过参阅下面的文档加载MCU1_0 F/W。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/08_00_00_12/exports/docs/psdk_rtos/docs/user_guide/developer_notes_mcu1_0_sysfw.html#spl-uboot-loading

    我看到您的内存映射与我们的SDK有很大不同。 您对U形靴进行了哪些更改以适应这种情况?

    ->我们已更改内存映射以优化内存使用。
    已修改uboot引用的DTS文件。

    如果存储器映射修改不正确,将继续出现故障,但是
    我们有10 30 % 的故障可能性。

    如果更改内存映射,是否应该构建SYSFW? 我们使用SDK中包含的预构建映像。

    谢谢你。
    城南

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

     

    以下问题是否有任何更新?

    正如我在邮件中提到的,

    我的客户在没有加载mcu1_0 FW的情况下发现了相同的问题,但他们无法在DTS中禁用它,也不知道如何在DTS中禁用它。

    您能告诉他们如何在DTS中禁用它吗?

     

    还有其他建议吗?

     

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Sung-IL,

    您需要禁用MCU R5FSS群集。 只需要求您的客户在其主板DTS文件的MCU_r5fss0节点下添加status ="disabled"。

    此致

    Suman

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

    当他们禁用MCU R5FSS群集时,他们仍然面临相同的mbox错误。

    他们确认'CU R5FSS cluster disabled'如下。

    根@J7-EVM:/proc/device-tree/bus@10万# grep -r disable *| grep R5
    总线@2838万/r5fss@4100万/r5f@4100万/status: disabled.
    总线@2838万/r5fss@4100万/r5f@414万/status: disabled.

    能否让我知道他们如何调试它?

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    苏门

    </s>400.4521万

    我看到您的内存映射与我们的SDK有很大不同。 您对U形靴进行了哪些更改以适应这种情况?

    ->我们已更改内存映射以优化内存使用。
    已修改uboot引用的DTS文件。

    如果存储器映射修改不正确,将继续出现故障,但是
    我们有10 30 % 的故障可能性。

    如果更改内存映射,是否应该构建SYSFW? 我们使用SDK中包含的预构建映像。

    [/引述]

    您能否提供您的意见,他们是否应该为内存映射更改构建SYSFW以及如何实现?

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

    您是否知道如何调试此问题?

    谢谢,此致,

    SI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,TI团队:

    我们仍有高频重现的症状。
    是否有任何有关调试的更新信息?

    此外,请检查以下信息(之前询问过)。

    "如果我更改内存映射,是否应该构建SYSFW? 我们使用SDK中包含的预构建映像。"
    如果需要重建,应在何处参考源代码和构建指南文档?

    谢谢!
    城南市。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sungnam先生,您好!

    SYSFW代码和数据完全放置在子系统的指令和数据RAM中。 因此,他们不需要任何更新。

    您在MCU1_0上使用什么固件? 它是针对链接器cmd文件调整的TI固件还是您自己的客户固件?

    我们需要确定是内存重叠问题还是MCU1_0固件中的线程优先级问题。 请勿在任何主域R5F或DSP上使用任何remoteproc固件。 MCU1_0是必需的,因此我们来调试MCU1_0问题。

    能否提供MCU1_0固件映像的readelf -l输出?

    此致

    Suman

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

    链接器cmd文件通过更改的内存映射进行了如下调整:

    内存

    /* R5F_TCMA [ Size 32.00 KB ]*/
    R5F_TCMA_VECS (X):原点= 0x0万长度= 0x0.004万
    R5F_TCMA (X):原点= 0x0.004万长度= 0x0.0007万FC0
    /* R5F_TCMB0_VECS [大小256 B ]*/
    R5F_TCMB0_VECS ( RWIX ):原点= 0x4101万,长度= 0x0.004万
    /* R5F_TCMB0 [ Size 31.75 KB ]*/
    R5F_TCMB0 ( RWIX ):原点= 0x4101.004万,长度= 0x0.0007万FC0

    /* DDR for MCU1_0 for Linux IPC [ Size 1024.00 KB ]*/
    DDR_MCU1_0_IPC ( RWIX ):原始= 0xB800万,长度= 0x10万
    /* DDR for MCU1_0 for Linux资源表[大小1024 B ]*/
    DDR_MCU1_0_resource_table ( RWIX ):原始= 0xB810万,长度= 0x0.04万
    /* DDR,用于MCU1_0,用于代码/数据[ Size 12.00 MB ]*/
    DDR_MCU1_0 ( RWIX ):原点= 0xB840万,长度= 0x00C0万

    /* IPC振铃的内存。 必须为非缓存或缓存一致[ Size 32.00 MB ]*/
    IPC_VRING_MEM:原点= 0xC800万,长度= 0x200万
    /*用于远程内核日志记录的内存[ Size 256.00 KB ]*/
    APP_LOG_MEM:Origin = 0xCA0万,length = 0x4万
    TI OpenVX共享内存的/*内存。 必须为非缓存或缓存一致[ Size 63.62 MB ]*/
    TIOVX_OBJ_DESC_MEM:Origin = 0xCA4万,length = 0x03FA0000

    /* DDR中共享内存缓冲区的内存[ Size 320.00 MB ]*/
    DDR_SHARD_MEM:原始= 0xD0万,长度= 0x1400万

    /* DDR,用于MCU1_0,用于本地堆[ Size 8.00 MB ]*/
    DDR_MCU1_0_local_heap ( RWIX ):原始= 0xE600万,长度= 0x80万
    }

    即使我们不加载除MCU1_0之外的任何其他固件,mbox超时也会以相同的方式发生。

    以下是请求的readelf输出。

    $ readelf -l vx_app_rtos_linux_mcu1_0.out

    elf文件类型为EXEC (可执行文件)
    入口点0x4101万
    共有14个程序标题,从偏移27.5196万开始

    程序标题:
    键入Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
    加载0x0.0038万 0x4101万 0x4101万 0x010b0 0x010b0 R E 0x8
    加载0x0.2万 0xb810万 0xb810万 0x0008c 0x0008c R 0x1000
    加载0x0.4万 0xb840万 0x0万 0xdd573 RW 0x2000
    加载0x0.4万 0xb84dd578 0xb84dd578 0x0.0868万 0x0.0868万 R 0x8
    加载0x0.6万 0xb84de000 0xb84de000 0x0万 0x5e000 RW 0x2000
    加载0x0.6万 0xb853c000 0x2a6a0 0x2a6a0 R E 0x8
    装入0x0306a0 0xb8.5666万a0 0xb8.5666万a0 0x0万 0x1万 RW 0x8
    加载0x0306a0 0xb8.5766万a0 0xb8.5766万a0 0x0c0a0 0x0c0a0 R 0x8
    加载0x03c780 0xb858.278万 0xb858.278万 0x0万 0x0.58万 RW 0x80
    装入0x03c780 0xb8587f80 0xb8587f80 0x0.471万 0x0.471万 R 0x4
    装入0x040f00 0xb858c700 0xb858c700 0x0.1684万 0x0.1684万 R 0x80
    装入0x4.2584万 0xb858dd84 0xb858dd84 0x0万 0x011f8 RW 0x4
    装入0x4.2584万 0xb8ff6c00 0xb8ff6c00 0x0万 0x0.14万 R 0x4
    装入0x4.2588万 0xb8ff8000 0xb8ff8000 0x0万 0x0.8万 RW 0x8

    节到段映射:
    分段部分...
    00 .freertosrstvectors .bootcode .startupCode .startupData .text.hwi .text.cache .text.mpu .text.boot .mpu_cfg
    01 .resource_table
    02 .bss .tracebuf __lvm_prf_cnts
    03 .cinit
    04 .bss:taskStackSection
    05。文本
    06.sysmem
    07。常量
    08。data
    09 .const.devgroup*
    10 .boardcfg_data
    11 .bss.devgroup*
    12.irqStack.fiqStack.abortStack.undStack.svcStack
    13.stack

    谢谢!

    城南市。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sungnam先生,您好!

    您是自定义MCU1_0固件还是包括Vision Apps MCU1_0固件(不是链接器地图调整和调整 各种内存映射更新 宏,如IPC_VRING_MEM_ADDR)?

    我们能否使用PDK IPC ipc_echo_testb固件切换MCU1_0固件,但更新的内存映射和IPC区域更改,看看问题是否仍然存在? 主要目标是排除Vision Apps MCU1_0固件的任何问题(SDK 测试 通常都使用PDK IPC固件映像)。

    此致

    Suman

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

    我们使用TI提供的python工具更改了内存映射。
    我确认每个内存地址常量都已通过app_mem_map.h文件中更改的内存映射进行了更改。

    /* DDR for MCU1_0 for Linux IPC [ Size 1024.00 KB ]*/
    #define DDR_MCU1_0_IPC_ADDR (0xB800万u)
    #define DDR_MCU1_0_IPC_size (0x10万u)

    /* DDR for MCU1_0 for all sections,用于在DTS文件[ Size 15.00 MB ]*/中保留内存
    #define DDR_MCU1_0_DTS_ADDR (0xB810万u)
    #define DDR_MCU1_0_DTS_Size (0x00F0万u)

    /* DDR,用于MCU1_0,用于本地堆[ Size 8.00 MB ]*/
    #define DDR_MCU1_0_local_heap_ADDR (0xE600万u)
    #define DDR_MCU1_0_local_heap_size (0x80万u)

    /* IPC振铃的内存。 必须为非缓存或缓存一致[ Size 32.00 MB ]*/
    #define IPC_VRING_MEM_ADDR (0xC800万u)
    #define IPC_VRING_MEM_SIZE (0x200万u)

    /*用于远程内核日志记录的内存[ Size 256.00 KB ]*/
    #define app_log_MEM_ADDR (0xCA0万u)
    #define app_log_MEM_size (0x4万u)

    我们使用vision应用程序中包含的mcu1_0固件,无需修改。
    我们仅应用了更改后的内存映射。

    能否告诉我如何应用和测试IPC_ECHO_testb固件?
    我只知道如何使用预构建的"IPC_ECHO_testb_mcu1_0_release_strip"。

    ifeq ($(build_CPU_MCU1_0),yes)
    # copy remote firmware files for mcu1_0 (复制mcu1_0的远程固件文件)
    $(eval image_name := vx_app_rtos_linux_mcu1_0.out)
    CP $(VISION_APPS_PATH)/OUT / J7/R5F/$(RTOS)/$(Linux_APP_PROTOP)/$(image_name)$(Linux_FS_STAGE PATH)/lib/firmware/$(firmware_subfolders)/。
    $(TIARMCGT_ROOT)/bin/armstrip -p $(linux_FS_stage_path)/lib/firmware/$(firmware_subfolder)/$(image_name)
    ln -SR $(Linux_FS_STAGE路径)/lib/firmware/$(firmware_subfolder)/$(image_name)$(Linux_FS_STAGE路径)/lib/firmware/J7-MCU-r5f0_0-fw
    否则
    # Copy MCU1_0 firmware which is used in the default uboot.(复制默认uboot中使用的MCU1_0固件。
    ln -SR $(Linux_FS_stage_path)/lib/firmware/pdm-ipc/ipc_echo_testb_mcu1_0_release_strip.xer5f $(Linux_FS_stage_path)/lib/firmware/j7-mcU-r5f0_0-fw
    环境

    谢谢!

    城南市。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Suman:

    是否有任何更新?

    谢谢!

    城南市。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    TI团队,您好

    我们解决了问题。

    谢谢!

    城南市。