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.

[参考译文] AM5716:PRU-ETH 在 DSP 内核中不可用、无法发送/接收任何数据包

Guru**** 2394305 points
Other Parts Discussed in Thread: AM5716, AM5746

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1449917/am5716-pru-eth-unavailable-in-dsp-core-can-not-send-recv-any-packet

器件型号:AM5716

工具与软件:

我正在基于 SYS/BIOS 的 AM5716芯片的 DSP 内核上运行 EtherCAT 协议栈、使用 SDK 中提供的 ICSS_EMAC 模块通过 PRU-ETH 处理网络数据包发送和接收。 同时、我使用 IPC (MessageQ 和 CMEM)与 A 内核应用程序进行数据交互。
我偶尔会遇到网络接口无法使用的问题。 即使在重新启动、关机后再开机或使用 SD 卡重置系统后、此问题仍然存在。
在 Linux 中、两个 PRU-ETH 接口是 eth2和 eth3。 为了提高 DSP 程序的稳定性、在实际使用中、可以使用命令 ifdown eth2和 ifdown eth3在 Linux 中禁用 PRU-ETH 接口。
根据 SDK 源代码、我将问题追溯到 ICSS_emacdrv.c 文件中的 ICSS_EmacTxPacketEnqueue ()函数 发生错误时、该函数返回值 ICSS_EMAC_ERR_TX_OUT_OF_BD、其定义如下:
#define ICSS_EMAC_ERR_TX_OUT_OF_BD                     (ICSS_EMAC_SWITCH_ERROR_MAJOR + 8u)
/**< Tx ran out of Buffer descriptors to use.             
发生错误的特定位置如下(已将调试打印添加到代码中):
/*Check if queue is full and there is an wrap around */
printf_INFO("P+%d,HWREG(0x%x) = 0x%x,wr_ptr=0x%x,size=0x%x,rd_ptr=0x%x, desc_off=0x%x\n",portNumber, temp_addr, temp, queue_wr_ptr, size, queue_rd_ptr, txQueue->buffer_desc_offset);
if (((queue_wr_ptr + 4U) % size) == 0U)
{
    if (queue_rd_ptr == txQueue->buffer_desc_offset) /* Since queue is not starting from 0. */
    {
        txQueue->qStat.errCount++;
        if (emacMode == 0U)
        { /*Switch Mode*/
            temp_addr = ((((ICSS_EmacHwAttrs *)icssEmacHandle->hwAttrs)->emacBaseAddrCfg)->dataRam1BaseAddr + txQueue->queue_desc_offset + 4U);
            HWREGB(temp_addr) = 0;
        }
        else
        {
            temp_addr = (pruSharedMem + txQueue->queue_desc_offset + 4U);
            HWREGB(temp_addr) = 0U;
        }
        hostStatPtr->txDroppedPackets++;
        printf_INFO("--ICSS_EMAC_ERR_TX_OUT_OF_BD(-1)=0x%x, M:0x%x + 8 \n", ICSS_EMAC_ERR_TX_OUT_OF_BD, ICSS_EMAC_SWITCH_ERROR_MAJOR);
        return ((int32_t)ICSS_EMAC_ERR_TX_OUT_OF_BD); /* No space in queue */
    }
}
发生错误时、调试程序会打印如下:
P+1,HWREG(0x4b281ed8) = 0x162c14ac,wr_ptr=0x162c,size=0x1630,rd_ptr=0x14ac, desc_off=0x14ac
为了进行比较、当网络接口正常工作时、调试程序将打印如下:
P+1,HWREG(0x4b281ed8) = 0x15ec15ec,wr_ptr=0x15ec,size=0x1630,rd_ptr=0x15ec, desc_off=0x14ac
在我的测试中、以下步骤可以可靠地重现问题:
此程序执行以下操作:DSP 程序通过网络接口发送和接收数据、同时使用 IPC (MessageQ 和 CMEM)将数据传输到 A15内核。
[ 1471.745615] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.767063] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.783669] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.797017] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.810024] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.824034] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.838006] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.851038] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.864030] virtio_rpmsg_bus virtio1: msg received with no recipient
[ 1471.878025] virtio_rpmsg_bus virtio1: msg received with no recipient
出现上述打印输出是因为 IPC 通信中的 A 内核程序已断开连接、但 DSP 程序会继续发送数据。 一段时间(1-5秒)后、打印将停止。  如果在打印完上述信息之前使用以下命令暂时停止 DSP 程序、则可能会重现网络接口无法使用的问题。
echo 40800000.dsp > /sys/bus/platform/drivers/omap-rproc/unbind
 
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好?

    评估所提供的信息。 并环插几个工程师进行响应。 请预计会略有延迟。

    -若苏厄

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

    下面是一些版本信息:

    DSP:processor_sdk_rtos_am57xx_09_02_00_00
    Linux: Processor SDK Linux_06_03_00_106

    用于 PRUSS 的固件来自 SDK 版本09.02.00.133 、旨在解决 AM5746提到的问题:RX_ERROR_OFFSET 条件

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

    ??、

    感谢您提供的信息、请注意不支持混合和匹配 Linux 和 RTOS 版本、因此产生的任何问题由客户负责。 请参阅以下 常见问题解答。

    除了 SDK 版本之外、您能否分享更多信息?

    • 您是否 为 prueth 使用一个 ICSS (PRU)实例、而为 EtherCAT 使用另一个实例?
    • 您能否共享 Wireshark 流量?

    -若苏厄

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

    您好、Josue  

    感谢您的答复。 关于 RTOS 和 Linux 版本混合使用的问题、我稍后会确认。 但是、由于数据包丢失问题、我无法将用于 PRU-ETH (文件:/lib/firmware/ti-pruss/am57xx-pru0(1)-prueth-fw.elf)的 PRUSS 固件恢复为与 Linux 相同的版本。 据我所知、两个版本的 PRUSS 固件源代码仅在"AM5746:Rx_ERROR_OFFSET 条件"中提到的修改中有所不同。

    • 两个 ICSS (PRU)均用作 PRU-ETH。 我使用 RTOS-SDK 中提供的 API 通过 PRU-ETH 发送和接收 EtherCAT 数据包、并且程序在 DSP 内核上运行。

    • 当 PRU-eth 端口不可用时、Wireshark 中没有通信。 同样、使用时ethtool -S eth2、所有统计都显示为0。 (当网络端口正常工作时、统计信息将正确显示。)

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

    一旦我弄清楚如何上传文件、我将提供一些正常的 PRU-ETH Wireshark 流量。

    这是 ethtool 命令:的输出

    root@SunGrow:~# ethtool -S eth3
    NIC statistics:
         txBcast: 22361
         txMcast: 0
         txUcast: 0
         txOctets: 12270177
         rxBcast: 22361
         rxMcast: 0
         rxUcast: 0
         rxOctets: 12270177
         tx64byte: 6564
         tx65_127byte: 7139
         tx128_255byte: 100
         tx256_511byte: 0
         tx512_1023byte: 0
         tx1024byte: 8558
         rx64byte: 6564
         rx65_127byte: 7139
         rx128_255byte: 100
         rx256_511byte: 0
         rx512_1023byte: 0
         rx1024byte: 8558
         lateColl: 0
         singleColl: 0
         multiColl: 0
         excessColl: 0
         rxMisAlignmentFrames: 0
         stormPrevCounterBC: 0
         stormPrevCounterMC: 0
         stormPrevCounterUC: 0
         macRxError: 0
         SFDError: 0
         defTx: 0
         macTxError: 0
         rxOverSizedFrames: 0
         rxUnderSizedFrames: 0
         rxCRCFrames: 0
         droppedPackets: 0
         txHWQOverFlow: 0
         txHWQUnderFlow: 0
         emacMulticastDropped: 0
         emacVlanDropped: 0
    

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

    以下是正常通信期间的 EtherCAT 数据包:

    e2e.ti.com/.../prueth_2D00_ethercat.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="620299" url="~/support/processors-group/processors/f/processors-forum/1449917/am5716-pru-eth-unavailable-in-dsp-core-can-not-send-recv-any-packet/5563260 #5563260"]

    下面是一些版本信息:

    DSP:processor_sdk_rtos_am57xx_09_02_00_00
    Linux: Processor SDK Linux_06_03_00_106

    用于 PRUSS 的固件来自 SDK 版本09.02.00.133 、旨在解决 AM5746提到的问题:RX_ERROR_OFFSET 条件

    [报价]

    您好 Zhijie

       如 Webchat 中所述、它可以在开始时工作、在 IPC 触发故障后、无法发送/接收数据包、在什么条件下可以触发 IPC 固件、在正常情况下、IPC 不应中断、如果没有 IPC Linux 无法发送/接收数据包、  

       请说明 IPC 是如何损坏的?

    此致

      Semon

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

    您好、Semon

    我还不清楚 IPC 崩溃的原因。 我可以提供一些程序崩溃时通过串行端口观察到的内核日志:

    [ 7793.462214] pgd = 3241b813
    [ 7793.465164] [00000000] *pgd=ada21003, *pmd=be23c003
    [ 7793.470282] CPU: 0 PID: 15059 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.480428] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.487264] PC is at 0xb6db59ee
    [ 7793.490510] LR is at 0x11d08
    [ 7793.493494] pc : [<b6db59ee>]    lr : [<00011d08>]    psr: 400d0030
    [ 7793.499900] sp : bebf2f08  ip : 000290b8  fp : bebf37a4
    [ 7793.505338] r10: 0002922c  r9 : 0000000e  r8 : 00040080
    [ 7793.510686] r7 : bebf2f08  r6 : 0002926c  r5 : 000be150  r4 : 00000006
    [ 7793.517330] r3 : b6dc40f4  r2 : 00000000  r1 : 00000000  r0 : 00000000
    [ 7793.523970] Flags: nZcv  IRQs on  FIQs on  Mode USER_32  ISA Thumb  Segment user
    [ 7793.531503] Control: 30c5387d  Table: adb51d00  DAC: fffffffd
    [ 7793.537489] CPU: 0 PID: 15059 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.547364] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.553487] Backtrace: 
    [ 7793.555961] [<c020d93c>] (dump_backtrace) from [<c020db94>] (show_stack+0x18/0x1c)
    [ 7793.563570]  r7:600d0113 r6:c1874790 r5:00000000 r4:c1874790
    [ 7793.569266] [<c020db7c>] (show_stack) from [<c0e43ab0>] (dump_stack+0x8c/0xa0)
    [ 7793.576530] [<c0e43a24>] (dump_stack) from [<c0209de0>] (show_regs+0x14/0x18)
    [ 7793.583702]  r7:00000000 r6:ee319e40 r5:0000000b r4:c18064c8
    [ 7793.589398] [<c0209dcc>] (show_regs) from [<c0215440>] (__do_user_fault+0x90/0x110)
    [ 7793.597095] [<c02153b0>] (__do_user_fault) from [<c02157c4>] (do_page_fault+0x288/0x388)
    [ 7793.605228]  r10:eda1297c r9:c18c3718 r8:00000207 r7:00000000 r6:eda12940 r5:ee319e40
    [ 7793.613095]  r4:ed199fb0
    [ 7793.615645] [<c021553c>] (do_page_fault) from [<c0215aac>] (do_DataAbort+0x48/0xe0)
    [ 7793.623340]  r10:0002922c r9:0000000e r8:ed199fb0 r7:c180e39c r6:00000000 r5:00000207
    [ 7793.631206]  r4:c18064c8
    [ 7793.633757] [<c0215a64>] (do_DataAbort) from [<c0201d20>] (__dabt_usr+0x40/0x60)
    [ 7793.641188] Exception stack(0xed199fb0 to 0xed199ff8)
    [ 7793.646267] 9fa0:                                     00000000 00000000 00000000 b6dc40f4
    [ 7793.654486] 9fc0: 00000006 000be150 0002926c bebf2f08 00040080 0000000e 0002922c bebf37a4
    [ 7793.662704] 9fe0: 000290b8 bebf2f08 00011d08 b6db59ee 400d0030 ffffffff
    [ 7793.669352]  r9:0000000e r8:30c5387d r7:30c5387d r6:ffffffff r5:400d0030 r4:b6db59ee
    [ 7793.677261] pgd = 3241b813
    [ 7793.681262] [00000000] *pgd=ada21003, *pmd=be23c003
    [ 7793.686762] CPU: 0 PID: 15061 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.696720] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.702923] PC is at 0xb6db59ee
    [ 7793.706172] LR is at 0x11d08
    [ 7793.709149] pc : [<b6db59ee>]    lr : [<00011d08>]    psr: 40010030
    [ 7793.715553] sp : b63cbaa8  ip : 000290b8  fp : b63cbf9c
    [ 7793.720894] r10: 0002922c  r9 : 0000000e  r8 : 00040080
    [ 7793.726226] r7 : b63cbaa8  r6 : 0002926c  r5 : ffffffff  r4 : 00000006
    [ 7793.732859] r3 : b6dc40f4  r2 : 00000000  r1 : 00000000  r0 : 00000000
    [ 7793.739606] Flags: nZcv  IRQs on  FIQs on  Mode USER_32  ISA Thumb  Segment user
    [ 7793.747606] Control: 30c5387d  Table: adb51d00  DAC: fffffffd
    [ 7793.753463] CPU: 0 PID: 15061 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.763337] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.769459] Backtrace: 
    [ 7793.771928] [<c020d93c>] (dump_backtrace) from [<c020db94>] (show_stack+0x18/0x1c)
    [ 7793.779535]  r7:60010113 r6:c1874790 r5:00000000 r4:c1874790
    [ 7793.785228] [<c020db7c>] (show_stack) from [<c0e43ab0>] (dump_stack+0x8c/0xa0)
    [ 7793.792491] [<c0e43a24>] (dump_stack) from [<c0209de0>] (show_regs+0x14/0x18)
    [ 7793.799663]  r7:00000000 r6:edb56d40 r5:0000000b r4:c18064c8
    [ 7793.805357] [<c0209dcc>] (show_regs) from [<c0215440>] (__do_user_fault+0x90/0x110)
    [ 7793.813055] [<c02153b0>] (__do_user_fault) from [<c02157c4>] (do_page_fault+0x288/0x388)
    [ 7793.821188]  r10:eda1297c r9:c18c3718 r8:00000207 r7:00000000 r6:eda12940 r5:edb56d40
    [ 7793.829054]  r4:ed17ffb0
    [ 7793.831604] [<c021553c>] (do_page_fault) from [<c0215aac>] (do_DataAbort+0x48/0xe0)
    [ 7793.839299]  r10:0002922c r9:0000000e r8:ed17ffb0 r7:c180e39c r6:00000000 r5:00000207
    [ 7793.847166]  r4:c18064c8
    [ 7793.849717] [<c0215a64>] (do_DataAbort) from [<c0201d20>] (__dabt_usr+0x40/0x60)
    [ 7793.857148] Exception stack(0xed17ffb0 to 0xed17fff8)
    [ 7793.862226] ffa0:                                     00000000 00000000 00000000 b6dc40f4
    [ 7793.870445] ffc0: 00000006 ffffffff 0002926c b63cbaa8 00040080 0000000e 0002922c b63cbf9c
    [ 7793.878663] ffe0: 000290b8 b63cbaa8 00011d08 b6db59ee 40010030 ffffffff
    [ 7793.885312]  r9:0000000e r8:30c5387d r7:30c5387d r6:ffffffff r5:40010030 r4:b6db59ee
    [ 7793.893205] pgd = 3241b813
    [ 7793.896597] [00000000] *pgd=ada21003, *pmd=be23c003
    [ 7793.902249] CPU: 0 PID: 15062 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.912241] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.918452] PC is at 0xb6db59ee
    [ 7793.921703] LR is at 0x11d08
    [ 7793.924690] pc : [<b6db59ee>]    lr : [<00011d08>]    psr: 40070030
    [ 7793.931082] sp : b634aaa0  ip : 000290b8  fp : b634af9c
    [ 7793.936415] r10: 0002922c  r9 : 0000000e  r8 : 00040080
    [ 7793.941745] r7 : b634aaa0  r6 : 0002926c  r5 : ffffffff  r4 : 00000006
    [ 7793.948350] r3 : b6dc40f4  r2 : 00000000  r1 : 00000000  r0 : 00000000
    [ 7793.955089] Flags: nZcv  IRQs on  FIQs on  Mode USER_32  ISA Thumb  Segment user
    [ 7793.963153] Control: 30c5387d  Table: adb51d00  DAC: fffffffd
    [ 7793.969016] CPU: 0 PID: 15062 Comm: ecat_test Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
    [ 7793.978891] Hardware name: Generic DRA72X (Flattened Device Tree)
    [ 7793.985013] Backtrace: 
    [ 7793.987481] [<c020d93c>] (dump_backtrace) from [<c020db94>] (show_stack+0x18/0x1c)
    [ 7793.995090]  r7:60070113 r6:c1874790 r5:00000000 r4:c1874790
    [ 7794.000782] [<c020db7c>] (show_stack) from [<c0e43ab0>] (dump_stack+0x8c/0xa0)
    [ 7794.008047] [<c0e43a24>] (dump_stack) from [<c0209de0>] (show_regs+0x14/0x18)
    [ 7794.015219]  r7:00000000 r6:ef1196c0 r5:0000000b r4:c18064c8
    [ 7794.020914] [<c0209dcc>] (show_regs) from [<c0215440>] (__do_user_fault+0x90/0x110)
    [ 7794.028612] [<c02153b0>] (__do_user_fault) from [<c02157c4>] (do_page_fault+0x288/0x388)
    [ 7794.036744]  r10:eda1297c r9:c18c3718 r8:00000207 r7:00000000 r6:eda12940 r5:ef1196c0
    [ 7794.044611]  r4:edbf9fb0
    [ 7794.047160] [<c021553c>] (do_page_fault) from [<c0215aac>] (do_DataAbort+0x48/0xe0)
    [ 7794.054856]  r10:0002922c r9:0000000e r8:edbf9fb0 r7:c180e39c r6:00000000 r5:00000207
    [ 7794.062723]  r4:c18064c8
    [ 7794.065273] [<c0215a64>] (do_DataAbort) from [<c0201d20>] (__dabt_usr+0x40/0x60)
    [ 7794.072704] Exception stack(0xedbf9fb0 to 0xedbf9ff8)
    [ 7794.077783] 9fa0:                                     00000000 00000000 00000000 b6dc40f4
    [ 7794.086002] 9fc0: 00000006 ffffffff 0002926c b634aaa0 00040080 0000000e 0002922c b634af9c
    [ 7794.094221] 9fe0: 000290b8 b634aaa0 00011d08 b6db59ee 40070030 ffffffff
    [ 7794.100870]  r9:0000000e r8:30c5387d r7:30c5387d r6:ffffffff r5:40070030 r4:b6db59ee

    关于 PRU-eth 端口无法正常工作的问题、可以使用前面提到的方法可靠地重现该问题。

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

    我想找到一种在发生错误后恢复 PRU-ETH 可用性的方法、例如通过复位 PRUSS 寄存器等

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我仍不清楚 IPC 崩溃的原因。 我可以提供一些在程序崩溃时通过串行端口观察到的内核日志:[/QUOT]

    您好 Zhijie

      您能否提供 Linux 的完整日志?

       如果流量中断、Linux 和 M4核心会出现什么错误?

    此致

     Semon

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

    您好、Semon

    zip 文件包含两个 dmesg 输出文件。 在当前环境中、eth2不可用、eth3可用。 dmesg.eth2.log 包含程序崩溃时的日志、而 dmesg.eth3.log 不包含崩溃 日志。

    e2e.ti.com/.../2451.dmesg.zip

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

    下面是在 Linux 下对两个 PRU-eths 的简单测试、eth2不可用、eth3可用:

    root@SunGrow:~# ifconfig 
    eth0      Link encap:Ethernet  HWaddr 30:E2:83:7A:3C:1C  
              inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
              inet6 addr: fe80::32e2:83ff:fe7a:3c1c/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:76 errors:0 dropped:0 overruns:0 frame:0
              TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:9094 (8.8 KiB)  TX bytes:5360 (5.2 KiB)
              Interrupt:106 
    
    eth1      Link encap:Ethernet  HWaddr 30:E2:83:7A:3C:1D  
              inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0
              UP BROADCAST MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    eth4      Link encap:Ethernet  HWaddr 00:00:DE:AD:BE:EF  
              inet addr:12.12.12.12  Bcast:12.255.255.255  Mask:255.0.0.0
              inet6 addr: fe80::200:deff:fead:beef/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:656 (656.0 B)
    
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    root@SunGrow:~# ifconfig eth2 192.168.22.100 up
    root@SunGrow:~# ifconfig eth3 192.168.33.100 up
    root@SunGrow:~# ethtool -S eth2
    NIC statistics:
         txBcast: 0
         txMcast: 0
         txUcast: 0
         txOctets: 0
         rxBcast: 0
         rxMcast: 0
         rxUcast: 0
         rxOctets: 0
         tx64byte: 0
         tx65_127byte: 0
         tx128_255byte: 0
         tx256_511byte: 0
         tx512_1023byte: 0
         tx1024byte: 0
         rx64byte: 0
         rx65_127byte: 0
         rx128_255byte: 0
         rx256_511byte: 0
         rx512_1023byte: 0
         rx1024byte: 0
         lateColl: 0
         singleColl: 0
         multiColl: 0
         excessColl: 0
         rxMisAlignmentFrames: 0
         stormPrevCounterBC: 0
         stormPrevCounterMC: 0
         stormPrevCounterUC: 0
         macRxError: 0
         SFDError: 0
         defTx: 0
         macTxError: 0
         rxOverSizedFrames: 0
         rxUnderSizedFrames: 0
         rxCRCFrames: 0
         droppedPackets: 0
         txHWQOverFlow: 0
         txHWQUnderFlow: 0
         emacMulticastDropped: 0
         emacVlanDropped: 0
    root@SunGrow:~# ethtool -S eth3
    NIC statistics:
         txBcast: 0
         txMcast: 14
         txUcast: 0
         txOctets: 1228
         rxBcast: 0
         rxMcast: 0
         rxUcast: 0
         rxOctets: 0
         tx64byte: 0
         tx65_127byte: 14
         tx128_255byte: 0
         tx256_511byte: 0
         tx512_1023byte: 0
         tx1024byte: 0
         rx64byte: 0
         rx65_127byte: 0
         rx128_255byte: 0
         rx256_511byte: 0
         rx512_1023byte: 0
         rx1024byte: 0
         lateColl: 0
         singleColl: 0
         multiColl: 0
         excessColl: 0
         rxMisAlignmentFrames: 0
         stormPrevCounterBC: 0
         stormPrevCounterMC: 0
         stormPrevCounterUC: 0
         macRxError: 14
         SFDError: 0
         defTx: 0
         macTxError: 0
         rxOverSizedFrames: 0
         rxUnderSizedFrames: 0
         rxCRCFrames: 0
         droppedPackets: 0
         txHWQOverFlow: 0
         txHWQUnderFlow: 0
         emacMulticastDropped: 0
         emacVlanDropped: 0
    root@SunGrow:~# ping 192.168.22.100
    PING 192.168.22.100 (192.168.22.100): 56 data bytes
    64 bytes from 192.168.22.100: seq=0 ttl=64 time=0.276 ms
    64 bytes from 192.168.22.100: seq=1 ttl=64 time=0.227 ms
    64 bytes from 192.168.22.100: seq=2 ttl=64 time=0.185 ms
    64 bytes from 192.168.22.100: seq=3 ttl=64 time=0.182 ms
    ^C
    --- 192.168.22.100 ping statistics ---
    4 packets transmitted, 4 packets received, 0% packet loss
    round-trip min/avg/max = 0.182/0.217/0.276 ms
    root@SunGrow:~# ping 192.168.33.100
    PING 192.168.33.100 (192.168.33.100): 56 data bytes
    64 bytes from 192.168.33.100: seq=0 ttl=64 time=0.303 ms
    64 bytes from 192.168.33.100: seq=1 ttl=64 time=0.202 ms
    64 bytes from 192.168.33.100: seq=2 ttl=64 time=0.255 ms
    64 bytes from 192.168.33.100: seq=3 ttl=64 time=0.183 ms
    ^C
    --- 192.168.33.100 ping statistics ---
    4 packets transmitted, 4 packets received, 0% packet loss
    round-trip min/avg/max = 0.183/0.235/0.303 ms
    root@SunGrow:~# ifconfig
    eth0      Link encap:Ethernet  HWaddr 30:E2:83:7A:3C:1C  
              inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
              inet6 addr: fe80::32e2:83ff:fe7a:3c1c/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:476 errors:0 dropped:0 overruns:0 frame:0
              TX packets:346 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:45632 (44.5 KiB)  TX bytes:44750 (43.7 KiB)
              Interrupt:106 
    
    eth1      Link encap:Ethernet  HWaddr 30:E2:83:7A:3C:1D  
              inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0
              UP BROADCAST MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    eth2      Link encap:Ethernet  HWaddr 46:8F:D2:D1:2F:04  
              inet addr:192.168.22.100  Bcast:192.168.22.255  Mask:255.255.255.0
              UP BROADCAST MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    eth3      Link encap:Ethernet  HWaddr 02:F8:51:F9:1D:70  
              inet addr:192.168.33.100  Bcast:192.168.33.255  Mask:255.255.255.0
              inet6 addr: fe80::f8:51ff:fef9:1d70/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:1242 (1.2 KiB)
    
    eth4      Link encap:Ethernet  HWaddr 00:00:DE:AD:BE:EF  
              inet addr:12.12.12.12  Bcast:12.255.255.255  Mask:255.0.0.0
              inet6 addr: fe80::200:deff:fead:beef/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:796 (796.0 B)
    
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:16 errors:0 dropped:0 overruns:0 frame:0
              TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:1344 (1.3 KiB)  TX bytes:1344 (1.3 KiB)
    
    root@SunGrow:~# ethtool -S eth2
    NIC statistics:
         txBcast: 0
         txMcast: 0
         txUcast: 0
         txOctets: 0
         rxBcast: 0
         rxMcast: 0
         rxUcast: 0
         rxOctets: 0
         tx64byte: 0
         tx65_127byte: 0
         tx128_255byte: 0
         tx256_511byte: 0
         tx512_1023byte: 0
         tx1024byte: 0
         rx64byte: 0
         rx65_127byte: 0
         rx128_255byte: 0
         rx256_511byte: 0
         rx512_1023byte: 0
         rx1024byte: 0
         lateColl: 0
         singleColl: 0
         multiColl: 0
         excessColl: 0
         rxMisAlignmentFrames: 0
         stormPrevCounterBC: 0
         stormPrevCounterMC: 0
         stormPrevCounterUC: 0
         macRxError: 0
         SFDError: 0
         defTx: 0
         macTxError: 0
         rxOverSizedFrames: 0
         rxUnderSizedFrames: 0
         rxCRCFrames: 0
         droppedPackets: 0
         txHWQOverFlow: 0
         txHWQUnderFlow: 0
         emacMulticastDropped: 0
         emacVlanDropped: 0
    root@SunGrow:~# ethtool -S eth3
    NIC statistics:
         txBcast: 0
         txMcast: 15
         txUcast: 0
         txOctets: 1302
         rxBcast: 0
         rxMcast: 0
         rxUcast: 0
         rxOctets: 0
         tx64byte: 0
         tx65_127byte: 15
         tx128_255byte: 0
         tx256_511byte: 0
         tx512_1023byte: 0
         tx1024byte: 0
         rx64byte: 0
         rx65_127byte: 0
         rx128_255byte: 0
         rx256_511byte: 0
         rx512_1023byte: 0
         rx1024byte: 0
         lateColl: 0
         singleColl: 0
         multiColl: 0
         excessColl: 0
         rxMisAlignmentFrames: 0
         stormPrevCounterBC: 0
         stormPrevCounterMC: 0
         stormPrevCounterUC: 0
         macRxError: 15
         SFDError: 0
         defTx: 0
         macTxError: 0
         rxOverSizedFrames: 0
         rxUnderSizedFrames: 0
         rxCRCFrames: 0
         droppedPackets: 0
         txHWQOverFlow: 0
         txHWQUnderFlow: 0
         emacMulticastDropped: 0
         emacVlanDropped: 0
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此 zip 包含两个 dmesg 输出文件。 在当前环境中、eth2不可用、eth3可用。 dmesg.eth2.log 包含程序崩溃时的日志、而 dmesg.eth3.log 不包含崩溃 日志。

    您好 Zhijie

      在 log3中、最后一条消息是"[32.047203] virtio_rpmsg_BUS virtio1: MSG received with no receipient"

      在这个字之后、Pruss 端口是否可以接收数据包?

    此致

      Semon

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

    Zhijie

       在 log2中、有与 W5100_SPI 相关的日志、

       您能否检查此模块、例如关闭或暂时将其删除

       是否再次出现此问题?

    此致

      Semon

    --------------------------------------------------------

    [  44.177883][000001d0]* PgD=80000080004003、* PMD=00000000
    [  44.201826]内部错误:Oops:207 [#1]抢占 SMP ARM
    [  44.207339]链接的模块:w5100_spi exp32_spi (O) cmemk (O) c_can_platform
    [  44.214516] CPU: 0 PID: 242 Comm: kworker/0:6污染: G       W O     4.19.94-rt39SunGrow-ga242ccf3F1 #2
    [  44.224384]硬件名称:通用 DRA72X (平展的设备树)
    [44.230512]  工作队列:事件 mbox_rx_work

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

    为了进一步阐明该问题、这里提供了一些其他详细信息。

    1.出现问题后、关机和重新启动无法解决问题。

    2.此问题可以通过以下方式在我的硬件上重现:

    1. 在 DSP 内核上运行的程序使用 PRU-ETH 接收和发送数据包、并使用 IPC (MessageQ 和 CMEM)与 A 内核通信。
    2. A 内核程序通过 IPC 与 DSP 内核程序通信。
    3. 当 A 内核和 DSP 内核程序正常运行时、我通过按 Ctrl+C 终止 A 内核程序的执行
      1. A 内核程序退出后、可以通过串行端口观察到大量日志、如下所示:
        [ 1471.745615] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.767063] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.783669] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.797017] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.810024] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.824034] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.838006] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.851038] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.864030] virtio_rpmsg_bus virtio1: msg received with no recipient
        [ 1471.878025] virtio_rpmsg_bus virtio1: msg received with no recipient
      2. 日志打印可能会持续一段时间。
    4. 在上述日志打印完成之前执行以下命令。
      1. echo 40800000.dsp > /sys/bus/platform/drivers/omap-rproc/unbind
      1. 然后、出现以下错误日志、PRU-ETH 变得不可用。
        [  793.294755] Unable to handle kernel paging request at virtual address 6b6b6b9c
        [  793.325788] pgd = 3d719542
        [  793.332131] [6b6b6b9c] *pgd=80000080005003, *pmd=00000000
        [  793.343788] Internal error: Oops: 205 [#1] PREEMPT SMP ARM
        [  793.349304] Modules linked in: esp32_spi(O) cmemk(O) c_can_platform
        [  793.355618] CPU: 0 PID: 25992 Comm: kworker/0:2 Tainted: G        W  O      4.19.94-rt39SunGrow-ga242ccf3f1 #2
        [  793.365666] Hardware name: Generic DRA72X (Flattened Device Tree)
        [  793.371804] Workqueue: events mbox_rx_work
        [  793.375930] PC is at virtqueue_add_inbuf+0x28/0x3c8
        [  793.380835] LR is at rpmsg_recv_done+0x128/0x2c8
        [  793.385474] pc : [<c0793d4c>]    lr : [<c0b45884>]    psr: a00d0113
        [  793.391771] sp : eda5dd98  ip : eda5dde0  fp : eda5dddc
        [  793.397021] r10: 00000000  r9 : 00000024  r8 : c1892668
        [  793.402271] r7 : edb03390  r6 : 6b6b6b6b  r5 : eda5de18  r4 : d9058c00
        [  793.408830] r3 : d9058c00  r2 : 00000001  r1 : eda5de18  r0 : 6b6b6b6b
        [  793.415390] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
        [  793.422560] Control: 30c5387d  Table: adb00640  DAC: fffffffd
        [  793.428334] Process kworker/0:2 (pid: 25992, stack limit = 0x520a483d)
        [  793.434893] Stack: (0xeda5dd98 to 0xeda5e000)
        [  793.439272] dd80:                                                       eda5ddb4 d9058c00
        [  793.447491] dda0: c0215d70 d9058c00 eda5dddc 00000001 c0b45684 d9058c00 edb03340 00000000
        [  793.455708] ddc0: edb03390 c1892668 00000024 00000000 eda5de64 eda5dde0 c0b45884 c0793d30
        [  793.463927] dde0: 006000c0 ef65f240 00000009 00000009 c12b266c c138c674 c138c63c c18064c8
        [  793.472145] de00: c138c6e8 ecc42d80 ecc2b1c0 c1803d00 ef65f1c0 00000200 efa2ac62 00000c00
        [  793.480363] de20: 6b6b6b6b 00000000 00000000 00000000 c020c788 d7d12656 c12a9348 ecc2b1c0
        [  793.488580] de40: 00000000 ecc414a4 ee8aa050 eda02c40 eda6d7dc 00000000 eda5de7c eda5de68
        [  793.496797] de60: c0792d3c c0b45768 ecc41240 00000000 eda5de94 eda5de80 c0b3ec68 c0792cf0
        [  793.505016] de80: c18923c8 00000000 eda5debc eda5de98 c0b40328 c0b3ec24 eda6d7d8 eda6d7c0
        [  793.513234] dea0: eda6d7c4 c18064c8 c1389a14 eda6d7dc eda5decc eda5dec0 c0b38400 c0b401e8
        [  793.521452] dec0: eda5defc eda5ded0 c0b39570 c0b383ec 00000000 d7d12656 edbd4b40 eda6d7d8
        [  793.529669] dee0: edbd4b40 ef65edc0 ef662100 00000000 eda5df34 eda5df00 c024c738 c0b3950c
        [  793.537887] df00: ef65edc0 ef65edc0 00000008 edbd4b54 ef65edc0 00000008 ef65edd8 c1803d00
        [  793.546105] df20: ef65edc0 edbd4b40 eda5df74 eda5df38 c024dd18 c024c550 c0e5f108 c12a83b4
        [  793.554323] df40: c1876353 ffffe000 c0252a78 ecc0b040 ecc0b1c0 00000000 eda5c000 edbd4b40
        [  793.562541] df60: c024dcc0 eda1fe74 eda5dfac eda5df78 c0252f84 c024dccc ecc0b05c ecc0b05c
        [  793.570757] df80: 00000000 ecc0b1c0 c0252e24 00000000 00000000 00000000 00000000 00000000
        [  793.578974] dfa0: 00000000 eda5dfb0 c02010e0 c0252e30 00000000 00000000 00000000 00000000
        [  793.587192] dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        [  793.595408] dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
        [  793.603623] Backtrace: 
        [  793.606090] [<c0793d24>] (virtqueue_add_inbuf) from [<c0b45884>] (rpmsg_recv_done+0x128/0x2c8)
        [  793.614747]  r10:00000000 r9:00000024 r8:c1892668 r7:edb03390 r6:00000000 r5:edb03340
        [  793.622614]  r4:d9058c00
        [  793.625165] [<c0b4575c>] (rpmsg_recv_done) from [<c0792d3c>] (vring_interrupt+0x58/0xb0)
        [  793.633296]  r10:00000000 r9:eda6d7dc r8:eda02c40 r7:ee8aa050 r6:ecc414a4 r5:00000000
        [  793.641161]  r4:ecc2b1c0
        [  793.643716] [<c0792ce4>] (vring_interrupt) from [<c0b3ec68>] (rproc_vq_interrupt+0x50/0x78)
        [  793.652106]  r5:00000000 r4:ecc41240
        [  793.655708] [<c0b3ec18>] (rproc_vq_interrupt) from [<c0b40328>] (omap_rproc_mbox_callback+0x14c/0x184)
        [  793.665058]  r5:00000000 r4:c18923c8
        [  793.668658] [<c0b401dc>] (omap_rproc_mbox_callback) from [<c0b38400>] (mbox_chan_received_data+0x20/0x24)
        [  793.678271]  r9:eda6d7dc r8:c1389a14 r7:c18064c8 r6:eda6d7c4 r5:eda6d7c0 r4:eda6d7d8
        [  793.686054] [<c0b383e0>] (mbox_chan_received_data) from [<c0b39570>] (mbox_rx_work+0x70/0xf8)
        [  793.694625] [<c0b39500>] (mbox_rx_work) from [<c024c738>] (process_one_work+0x1f4/0x404)
        [  793.702754]  r8:00000000 r7:ef662100 r6:ef65edc0 r5:edbd4b40 r4:eda6d7d8
        [  793.709491] [<c024c544>] (process_one_work) from [<c024dd18>] (worker_thread+0x58/0x56c)
        [  793.717622]  r10:edbd4b40 r9:ef65edc0 r8:c1803d00 r7:ef65edd8 r6:00000008 r5:ef65edc0
        [  793.725487]  r4:edbd4b54
        [  793.728038] [<c024dcc0>] (worker_thread) from [<c0252f84>] (kthread+0x160/0x168)
        [  793.735472]  r10:eda1fe74 r9:c024dcc0 r8:edbd4b40 r7:eda5c000 r6:00000000 r5:ecc0b1c0
        [  793.743338]  r4:ecc0b040
        [  793.745889] [<c0252e24>] (kthread) from [<c02010e0>] (ret_from_fork+0x14/0x34)
        [  793.753145] Exception stack(0xeda5dfb0 to 0xeda5dff8)
        [  793.758222] dfa0:                                     00000000 00000000 00000000 00000000
        [  793.766439] dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        [  793.774655] dfe0: 00000000 00000000 00000000 00000000 00000013 00000000
        [  793.781303]  r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c0252e24
        [  793.789169]  r4:ecc0b1c0
        [  793.791719] Code: e50b3040 e1a05001 e50b2030 0a0000a0 (e5d03031) 
        [  794.053540] ---[ end trace 11a26d7f2a542cb0 ]---
        
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    3.当 A 核程序捕获 Ctrl+C 信号时,它将执行以下函数:

    1. void handle_Signal(int sig)
      {
          Ipc_stop();
          CMEM_free(CmemAddr_AT_host, &cmemAttrs);
          printf("Caught signal %d, memory released. virAddr=0x%x  phyAddr=0x%x\n", sig, CmemAddr_AT_host, physicalAddr);
          exit(0);
      }
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     E2E 回复将因 TI 假日(圣诞节)而延迟。 感谢您的耐心。

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

    圣诞快乐,新年快乐!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="620299" url="~/support/processors-group/processors/f/processors-forum/1449917/am5716-pru-eth-unavailable-in-dsp-core-can-not-send-recv-any-packet/5582561 #5582561"]
    • 在上述日志打印完成之前执行以下命令。
      1. 全屏
        1.
        echo 408000.dsp >/sys/bus/platform/drivers/omap-rproc/unbind
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    [报价]

    您好 Zhijie

      如果 在  日志打印完成后等待足够的时间、  

      此问题是否再次触发?

    此致

      Semon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1. 出现问题后、关闭电源和重新启动无法解决问题。

    对于这一点、即使下电上电也无法恢复、这非常奇怪、无法理解这一点、

    请帮助检查操作过程中是否保存了某些内容?

    该问题是否在所有版本上发生、或仅在某些特定版本上发生?

    谢谢  

      Semon

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

    如果等待日志打印的时间已完成、则不会出现此问题。

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

    根据我们的调查,我们没有发现任何节省某些东西的操作。

    以下两个版本均会出现此问题:

    • processor_sdk_rtos_am57xx_09.02.00.00
    • processor_sdk_rtos_am57xx_08.01.00.09

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果日志打印的等待时间已完成、则不会出现此问题。

    在  Handle_Signal 函数中、请尝试关闭 pruss 端口、然后等待日志打印完成(延迟一些时间)

    然后执行其他工作以释放资源

    ---------------

    空 Handle_Signal (int sig)

    //关闭 pruss 端口

    //等待一些提示


    ipc_stop();
    CMEM_free (CmemAddr_AT_host、&cmemAttrs);
    printf ("捕获信号%d、释放内存。 virAddr=0x%x phyAddr=0x%x\n"、sig、CmemAddr_AT_host、physicalAddr);
    退出(0);
    }

    ---------------

    此致

      Semon

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

    您好 Zhijie

       根据本次演讲、我总结一下这个问题:

    --------------------------------------------------------

       1.在正常操作过程中,有时系统会触发错误,请参阅上面注释中的 Linux 错误日志
       2. ctrl-c 取消 Linux 应用程序可以模拟此问题
       3.流量路径:A15 APP <->ETHCAT <->PRUSS、与、A15通过 IPC 与 DSP 内核通信
       4.在 IPC 中断后,ctrl-c 取消 Linux 应用程序
       5.或者由于 ctrl-c 不能停止运行 Linux app 而关闭重启硬件,

       6.下电上电时、Linux 应用程序可启动、DSP ETHCAT 可启动、IPC 已设置、但流量无法通过

       但是可以看到数据包已经传送到  DSP 内核中的 ICSS_EmacTxPacketEnqueue

    --------------------------------------------------------
       请帮助检查是否可以在下电上电后运行 rpmsg IPC 示例以测试 IPC 功能

    谢谢

      Semon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="507109" url="~/support/processors-group/processors/f/processors-forum/1449917/am5716-pru-eth-unavailable-in-dsp-core-can-not-send-recv-any-packet/5594134 #5594134"]

     请帮助检查是否可以在下电上电后运行 rpmsg IPC 示例以测试 IPC 功能

    谢谢

    [报价]

    您好 Zhijie

       、您试过测试吗?

    此致

      Semon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
      关于该项测试的情况如何、您试过它吗?

    您好 Zhijie

        如您在手机通话中所说、您已经制定了一种变通方法、让 PRUSS 端口正常工作、具体步骤如下:

        1.在 DSP 内核中运行示例应用、然后

        2.在 DSP 内核中运行您自己的应用

      通过上述步骤、您能否提供测试中使用的示例应用的详细信息?

      并在我漏掉内容时提供更多详细信息

    谢谢

      Semon

       

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="507109" url="~/support/processors-group/processors/f/processors-forum/1449917/am5716-pru-eth-unavailable-in-dsp-core-can-not-send-recv-any-packet/5682489 #5682489"]

    您好 Zhijie

        如您在手机通话中所说、您已经制定了一种变通方法、让 PRUSS 端口正常工作、具体步骤如下:

        1.在 DSP 内核中运行示例应用、然后

        2.在 DSP 内核中运行您自己的应用

      通过上述步骤、您能否提供测试中使用的示例应用的详细信息?

      并在我漏掉内容时提供更多详细信息

    [报价]

    您好 Zhijie

      请在 Linux 和 DSP 中共享应用程序、以便我可以在 TI-EVM 上重新生成此问题、

      或者是否可以将权变措施修补程序用于正式的大规模生产?

    此致

      Semon