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.

TDA4VH-Q1: ETHFW question

Part Number: TDA4VH-Q1

Tool/software:

Hi TI, Sudheer

I have read UserGuide,I've got a question to consult you:

1. How to map virtual ports and CPSW ports?

    For example, how are Virtual Switch Port0 and MAC Port2 mapped in the following? Where is the code?

2. Eth UserGuide introduces that UDMA TX has a total of 8 channels, but I saw 25 in the tool.

They cannot match. Can you help me answer my questions?

Screenshot of EthUserGuide:

Screenshot of Tools:



BR
Lei

  • Hi,

    1. How to map virtual ports and CPSW ports?

        For example, how are Virtual Switch Port0 and MAC Port2 mapped in the following? Where is the code?

    Virtual Switch Interface will have access to all switch Ports.
    Where as Virtual MAC interface will have access to MAC only Port mapped to it.

    Please refer to EthFw User Guide for switch Port & MAC Only Port.
    software-dl.ti.com/.../ethfw_c_ug_top.html

    Please refer to below FAQ for add/map of virtual MAC only to A72.
    e2e.ti.com/.../faq-how-to-add-map-mac-only-port-to-a72-linux-client-in-ethernet-firmware-linux-use-case

    Eth UserGuide introduces that UDMA TX has a total of 8 channels, but I saw 25 in the tool.

    They cannot match. Can you help me answer my questions?

    Yes, The value seen in tool is per core specific i.e. MCU2_0 can have those many.
    Where CPSW side we can't go beyond 8 as UDMA channels are mapped to CPSW Peripheral via PSIL link which are 8 for Tx.
    So, we can't have more than 8 Tx channels for CPSW.

    Please refer to TISCI Document for the PSIL Thread/Links mapped to CPSW Tx.

    Best Regards,
    Sudheer

  • Hi Sudheer,

    I tried to configure TX&RX 2 to MPU, but failed. Log:

    So how to configure TX&RX of MAC4 to A72?

    BR,

    Lei

  • Hi,

    I tried to configure TX&RX 2 to MPU, but failed. Log:

    Can you please share changes made for above?

    In case of Tx it is UDMA channel, will specify the channel number which to be used for client.
    Make sure thar same channel number should not provided to more than one client.

    In case of Rx it is UDMA Ex flows, will specify how many flows required for client.

    Best Regards,
    Sudheer

  • Hi Sudheer,

    Log:

    The fail log issue has been resolved, thank you.

    BR,

    Lei

  • Hi,

    Log:

    The fail log issue has been resolved, thank you.

    Thanks for the update.  Will be closing the thread.

    Best Regards,
    Sudheer

  • Hi Sudheer,

    As previously communicated,I tried to configure TX&RX 2 to MPU.

    It can also be understood as adding MacOnly4 on A72.

    SDK Ver: 09.02

    Code Diff:

    @@ -286,6 +292,7 @@ static EthFw_VirtPortCfg gEthApp_virtPortCfg[] =
             .numMacAddress = 1U,
             .clientIdMask  = ETHFW_BIT(ETHREMOTECFG_CLIENTID_LINUX) | ETHFW_BIT(ETHREMOTECFG_CLIENTID_QNX),
         },
    +#ifdef TIEVM
         {
             .remoteCoreId  = IPC_MCU2_1,
             .portId        = ETHREMOTECFG_MAC_PORT_4,
    @@ -297,6 +304,19 @@ static EthFw_VirtPortCfg gEthApp_virtPortCfg[] =
             .numMacAddress = 1U,
             .clientIdMask  = ETHFW_BIT(ETHREMOTECFG_CLIENTID_RTOS),
         },
    +#else
    +    {
    +        .remoteCoreId  = IPC_MPU1_0,//IPC_MCU2_1,
    +        .portId        = ETHREMOTECFG_MAC_PORT_4,
    +        .numTxCh       = 1U,
    +        .txCh          = {
    +                            [0] = ENET_RM_TX_CH_2
    +                         },
    +        .numRxFlow     = 1U,
    +        .numMacAddress = 1U,
    +        .clientIdMask  = ETHFW_BIT(ETHREMOTECFG_CLIENTID_LINUX) | ETHFW_BIT(ETHREMOTECFG_CLIENTID_QNX),//ETHFW_BIT(ETHREMOTECFG_CLIENTID_RTOS),
    +    },
    +#endif
    
    
    @@ -319,17 +340,26 @@ static EthFw_AllocCfg gEthApp_allocCfg[] =
             {
                 .clientId = ETHREMOTECFG_CLIENTID_LINUX,
                 .remoteProcId = IPC_MPU1_0,
                 .virtSwitchPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_SWITCH_PORT_0),
    +#ifdef TIEVM
                 .virtMacPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_1),
    +#else
    +            .virtMacPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_4) | ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_1),
    +#endif
             },
             {
                 .clientId = ETHREMOTECFG_CLIENTID_QNX,
                 .remoteProcId = IPC_MPU1_0,
                 .virtSwitchPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_SWITCH_PORT_0),
    +#ifdef TIEVM
                 .virtMacPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_1),
    +#else
    +            .virtMacPortMask = ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_4) | ENET_MACPORT_MASK(ETHREMOTECFG_MAC_PORT_1),
    +#endif
             },
    
    

    All Logs:

    [MCU2_0]      4.660975 s: CIO: Init ... Done !!!
    [MCU2_0]      4.661027 s: ### CPU Frequency = 1000000000 Hz
    [MCU2_0]      4.661052 s: CPU is running FreeRTOS
    [MCU2_0]      4.661069 s: APP: Init ... !!!
    [MCU2_0]      4.661101 s: SCICLIENT: Init ... !!!
    [MCU2_0]      4.661218 s: SCICLIENT: DMSC FW version [9.2.4--v09.02.04 (Kool Koala)]
    [MCU2_0]      4.661245 s: SCICLIENT: DMSC FW revision 0x9  
    [MCU2_0]      4.661265 s: SCICLIENT: DMSC FW ABI revision 3.1
    [MCU2_0]      4.661286 s: SCICLIENT: Init ... Done !!!
    [MCU2_0]      4.661303 s: UDMA: Init ... !!!
    [MCU2_0]      4.662133 s: UDMA: Init ... Done !!!
    [MCU2_0]      4.662163 s: UDMA: Init for CSITX/CSIRX ... !!!
    [MCU2_0]      4.662592 s: UDMA: Init for CSITX/CSIRX ... Done !!!
    [MCU2_0]      4.662619 s: MEM: Init ... !!!
    [MCU2_0]      4.662643 s: MEM: Created heap (DDR_LOCAL_MEM, id=0, flags=0x00000004) @ bb000000 of size 6291456 bytes !!!
    [MCU2_0]      4.662684 s: MEM: Created heap (L3_MEM, id=1, flags=0x00000000) @ 60000000 of size 262144 bytes !!!
    [MCU2_0]      4.662720 s: MEM: Created heap (DDR_CACHE_WT_MEM, id=7, flags=0x00000000) @ bb600000 of size 2097152 bytes !!!
    [MCU2_0]      4.662755 s: MEM: Init ... Done !!!
    [MCU2_0]      4.662772 s: IPC: Init ... !!!
    [MCU2_0]      4.662802 s: IPC: 11 CPUs participating in IPC !!!
    [MCU2_0]      4.662839 s: IPC: Waiting for HLOS to be ready ... !!!
    [MCU2_0]     19.732821 s: IPC: HLOS is ready !!!
    [MCU2_0]     19.739167 s: IPC: Init ... Done !!!
    [MCU2_0]     19.739206 s: APP: Syncing with 10 CPUs ... !!!
    [MCU2_0]     20.553478 s: APP: Syncing with 10 CPUs ... Done !!!
    [MCU2_0]     20.553507 s: REMOTE_SERVICE: Init ... !!!
    [MCU2_0]     20.554053 s: REMOTE_SERVICE: Init ... Done !!!
    [MCU2_0]     20.554085 s: ETHFW: Init ... !!!
    [MCU2_0]     20.660073 s: ETHFW: Warning: Using 6 random MAC address(es)
    [MCU2_0]     20.660111 s: ETHFW: Warning: Using 6 MAC address(es) from static pool
    [MCU2_0]     20.660177 s: ETHFW: Shared multicasts:
    [MCU2_0]     20.660205 s: ETHFW:   01:00:5e:00:00:01
    [MCU2_0]     20.660229 s: ETHFW:   01:00:5e:00:00:fb
    [MCU2_0]     20.660252 s: ETHFW:   01:00:5e:00:00:fc
    [MCU2_0]     20.660274 s: ETHFW:   33:33:00:00:00:01
    [MCU2_0]     20.660297 s: ETHFW:   33:33:ff:1d:92:c2
    [MCU2_0]     20.660320 s: ETHFW:   01:80:c2:00:00:00
    [MCU2_0]     20.660343 s: ETHFW:   01:80:c2:00:00:03
    [MCU2_0]     20.660362 s: ETHFW: Reserved multicasts:
    [MCU2_0]     20.660386 s: ETHFW:   01:80:c2:00:00:0e
    [MCU2_0]     20.660410 s: ETHFW:   01:1b:19:00:00:00
    [MCU2_0]     20.660438 s: ETHFW: CPSW recovery is not enabled
    [MCU2_0]     20.660546 s: EnetMcm: CPSW_9G on MAIN NAVSS
    [MCU2_0]     20.674797 s: ETHFW: 0 VLAN entries added in ALE table
    [MCU2_0]     20.675036 s: 
    [MCU2_0] ETHFW Version   : 0.04.00
    [MCU2_0]     20.675065 s: ETHFW Build Date: Jul 22, 2024
    [MCU2_0]     20.675085 s: ETHFW Build Time: 05:27:47
    [MCU2_0]     20.675102 s: ETHFW Commit SHA: 2a0a32f2
    [MCU2_0]     20.675137 s: ETHFW: Init ... DONE !!!
    [MCU2_0]     20.675335 s: unibase-1.1.5-jacinto
    [MCU2_0]     20.675813 s: Starting lwIP, local interface IP is dhcp-enabled
    [MCU2_0]     20.681358 s: ETHFW: Host MAC address: 70:46:48:e2:30:9f
    [MCU2_0]     20.682549 s: ETHFW: ETHFW: Enable gPTP on MAC port 3 (tilld3)
    [MCU2_0]     20.682583 s: ETHFW: ETHFW: Enable gPTP on MAC port 5 (tilld5)
    [MCU2_0]     20.683386 s: [LWIPIF_LWIP] Enet LLD netif initialized successfully
    [MCU2_0]     20.683440 s: Added interface 'ti0', IP is 0.0.0.0
    [MCU2_0]     20.746412 s: ETHFW: EthFwTsn_gptpYangConfig:domain=0
    [MCU2_0]     20.765212 s: ETHFW: ETHFW: TimeSync PTP enabled
    [MCU2_0]     20.765241 s: ETHFW: Remove server Init ... !!!
    [MCU2_0]     20.765982 s: ETHFW: Virtual port configuration:
    [MCU2_0]     20.766316 s: ETHFW: CpswProxyServer: initialization completed (core: mcu2_0)
    [MCU2_0]     20.766353 s: ETHFW: Remove server Init ... DONE !!!
    [MCU2_0]     20.799199 s: INF:cbase:tilld3: has mac: 70:46:48:E2:30:9F
    [MCU2_0] INF:cbase:tilld5: has mac: 70:46:48:E2:30:9F
    [MCU2_0] INF:cbase:cb_lld_task_create: Uniconf Task stack_size=16384
    [MCU2_0] INF:cbase:cb_rawsock_open:combase-1.1.4-jacinto
    [MCU2_0] INF:cbase:cb_rawsock_open:dmaTxChId=-1 numRxChannel
    [MCU2_0]     20.799319 s: =0 dmaRxChId=-1 nTxPkts=0 nRxPkts=0 pktSize=0
    [MCU2_0] INF:cbase:cb_lld_task_create: uniconf_hwal_thread stack_size=16384
    [MCU2_0] INF:cbase:cb_lld_task_create: gPTP Task stack_size=16384
    [MCU2_0] INF:gptp:gptpman_run:max_domains=1, max_ports=2
    [MCU2_0] INF:cbase:cb_rawsock_open:comba
    [MCU2_0]     20.799423 s: e-1.1.4-jacinto
    [MCU2_0] INF:cbase:cb_rawsock_open:dmaTxChId=-1 numRxChannels=0 dmaRxChId=-1 nTxPkts=0 nRxPkts=0 pktSize=0
    [MCU2_0] INF:cbase:DmaOpen: TxChNum -1
    [MCU2_0] INF:cbase:DmaOpen: Rx startIdx 114 flowId 6
    [MCU2_0] INF:cbase:LLDEnetFilter:destmac:01:80:C2:00:00:0E, vlanId:0, 
    [MCU2_0]     20.799517 s: thType:0x88f7
    [MCU2_0] INF:gptp:dev:tilld3 open success
    [MCU2_0] INF:gptp:dev:tilld5 open success
    [MCU2_0] INF:gptp:gptpnet_init:Open lldtsync OK!
    [MCU2_0] INF:gptp:IEEE1588-2019 performance monitoring disabled.
    [MCU2_0] INF:gptp:onenet_activate:tilld3 status=0, duplex=1, speed=0Mbps
    [MCU2_0] INF:gptp:
    [MCU2_0]     20.799602 s: nenet_activate:tilld5 status=0, duplex=1, speed=0Mbps
    [MCU2_0] INF:ubase:GPTP_MEDIUM_ALLOC: fragsize=16 fragused/fragnum=835/1426 (58
    [MCU2_0] INF:ubase:GPTP_SMALL_ALLOC: fragsize=4 fragused/fragnum=19/97 (19
    [MCU2_0] INF:ubase:SM_DATA_INST: fragsize=8 fragused/fragnum=20
    [MCU2_0]     20.799675 s: 2/3806 (52
    [MCU2_0] INF:gptp:gptpman_run:GPTPNET_INTERVAL_TIMEOUT_NSEC=125000000
    [MCU2_0]     20.815846 s: FVID2: Init ... !!!
    [MCU2_0]     20.815897 s: FVID2: Init ... Done !!!
    [MCU2_0]     20.816060 s: DSS: Init ... !!!
    [MCU2_0]     20.816082 s: DSS: Display type is eDP !!!
    [MCU2_0]     20.816100 s: DSS: M2M Path is enabled !!!
    [MCU2_0]     20.816118 s: DSS: SoC init ... !!!
    [MCU2_0]     20.816442 s: DSS: SoC init ... Done !!!
    [MCU2_0]     20.816461 s: DSS: Board init ... !!!
    [MCU2_0]     20.816477 s: DSS: Board init ... Done !!!
    [MCU2_0]     20.835486 s: DSS: Init ... Done !!!
    [MCU2_0]     20.835527 s: VHWA: VPAC Init ... !!!
    [MCU2_0]     20.835619 s: VHWA: LDC Init ... !!!
    [MCU2_0]     20.837335 s: VHWA: LDC Init ... Done !!!
    [MCU2_0]     20.837375 s: VHWA: MSC Init ... !!!
    [MCU2_0]     20.843278 s: VHWA: MSC Init ... Done !!!
    [MCU2_0]     20.843314 s: VHWA: NF Init ... !!!
    [MCU2_0]     20.844175 s: VHWA: NF Init ... Done !!!
    [MCU2_0]     20.844206 s: VHWA: VISS Init ... !!!
    [MCU2_0]     20.849662 s: VHWA: VISS Init ... Done !!!
    [MCU2_0]     20.849703 s: VHWA: VPAC Init ... Done !!!
    [MCU2_0]     20.849729 s:  VX_ZONE_ERROR:Enabled
    [MCU2_0]     20.849747 s:  VX_ZONE_WARNING:Enabled
    [MCU2_0]     20.852528 s: APP: OpenVX Target kernel init ... !!!
    [MCU2_0]     20.859910 s: APP: OpenVX Target kernel init ... Done !!!
    [MCU2_0]     20.859949 s: CSI2RX: Init ... !!!
    [MCU2_0]     20.860388 s: CSI2RX: Init ... Done !!!
    [MCU2_0]     20.860413 s: CSI2TX: Init ... !!!
    [MCU2_0]     20.860614 s: CSI2TX: Init ... Done !!!
    [MCU2_0]     20.860633 s: ISS: Init ... !!!
    [MCU2_0]     20.860653 s: Found sensor MAX96717_X1F at location 0 
    [MCU2_0]     20.860677 s: IssSensor_Init ... Done !!!
    [MCU2_0]     20.860731 s: IttRemoteServer_Init ... Done !!!
    [MCU2_0]     20.860749 s: ISS: Init ... Done !!!
    [MCU2_0]     20.860767 s: VISS REMOTE SERVICE: Init ... !!!
    [MCU2_0]     20.860814 s: VISS REMOTE SERVICE: Init ... Done !!!
    [MCU2_0]     20.860892 s: UDMA Copy: Init ... !!!
    [MCU2_0]     20.861779 s: UDMA Copy: Init ... Done !!!
    [MCU2_0]     20.861816 s: APP: Init ... Done !!!
    [MCU2_0]     20.861894 s: APP: Run ... !!!
    [MCU2_0]     20.861916 s: IPC: Starting echo test ...
    [MCU2_0]     20.862097 s: APP: Run ... Done !!!
    [MCU2_0]     20.863331 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[.] mcu3_1[.] mcu4_0[.] mcu4_1[.] c7x_1[.] c7x_2[.] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863409 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[.] mcu4_0[.] mcu4_1[.] c7x_1[.] c7x_2[.] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863478 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[.] mcu4_1[.] c7x_1[.] c7x_2[.] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863545 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[.] c7x_1[.] c7x_2[.] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863638 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[.] c7x_1[P] c7x_2[.] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863705 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[.] c7x_1[P] c7x_2[P] c7x_3[.] c7x_4[.] 
    [MCU2_0]     20.863770 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[.] c7x_1[P] c7x_2[P] c7x_3[P] c7x_4[.] 
    [MCU2_0]     20.863896 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[.] c7x_1[P] c7x_2[P] c7x_3[P] c7x_4[P] 
    [MCU2_0]     20.863965 s: IPC: Echo status: mpu1_0[x] mcu2_0[s] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[P] c7x_1[P] c7x_2[P] c7x_3[P] c7x_4[P] 
    [MCU2_0]     20.871655 s: ETHFW: VIRT_PORT_INFO | C2S | core=0 endpt=1026
    [MCU2_0]     20.871693 s: ETHFW: VIRT_PORT_INFO | S2C | switchPortMask=1 macPortMask=90
    [MCU2_0]     20.871825 s: ETHFW: ATTACH | C2S | core=0 endpt=1026 virtPort=0
    [MCU2_0]     20.871996 s: ETHFW: ATTACH | S2C | token=0 rxMtu=1522 features=8
    [MCU2_0]     20.872087 s: ETHFW: ATTACH | C2S | core=0 endpt=1026 virtPort=4
    [MCU2_0]     20.872121 s: ETHFW: ATTACH | S2C | token=400 rxMtu=1522 features=0
    [MCU2_0]     20.872194 s: ETHFW: ATTACH | C2S | core=0 endpt=1026 virtPort=7
    [MCU2_0]     20.872225 s: ETHFW: ATTACH | S2C | token=700 rxMtu=1522 features=0
    [MCU2_0]     20.872299 s: ETHFW: ALLOC_RX | C2S | core=0 endpt=1026 token=0
    [MCU2_0]     20.872358 s: ETHFW: ALLOC_RX | S2C | flow=114,0 rxPsil=0x4a00 status=0
    [MCU2_0]     20.872437 s: ETHFW: ALLOC_TX | C2S | core=0 endpt=1026 token=0
    [MCU2_0]     20.872508 s: EnetRm_allocResourceNode deq coreId 0 nodeId 4 resEntry->id 4, coreResTbl[0].resQ.head a34c13c4 qcount 3
    [MCU2_0]     20.872560 s: ETHFW: ALLOC_TX | S2C | txPsil=0xca04 status=0
    [MCU2_0]     20.872634 s: ETHFW: ALLOC_TX | C2S | core=0 endpt=1026 token=0
    [MCU2_0]     20.872694 s: EnetRm_allocResourceNode deq coreId 0 nodeId 7 resEntry->id 7, coreResTbl[0].resQ.head a34c1394 qcount 2
    [MCU2_0]     20.872736 s: ETHFW: ALLOC_TX | S2C | txPsil=0xca07 status=0
    [MCU2_0]     20.872808 s: ETHFW: ALLOC_MAC | C2S | core=0 endpt=1026 token=0
    [MCU2_0]     20.872910 s: ETHFW: ALLOC_MAC | S2C | macAddr=70:34:ba:4e:ea:01 status=0
    [MCU2_0]     20.872997 s: ETHFW: ALLOC_RX | C2S | core=0 endpt=1026 token=400
    [MCU2_0]     20.873051 s: ETHFW: ALLOC_RX | S2C | flow=114,1 rxPsil=0x4a00 status=0
    [MCU2_0]     20.873132 s: ETHFW: ALLOC_TX | C2S | core=0 endpt=1026 token=400
    [MCU2_0]     20.873192 s: EnetRm_allocResourceNode deq coreId 0 nodeId 2 resEntry->id 3, coreResTbl[0].resQ.head a34c1388 qcount 1
    [MCU2_0]     20.873244 s: EnetRm_allocResourceNode enq coreId 0 coreResTbl[0] qcount 2 
    [MCU2_0]     20.873294 s: EnetRm_allocResourceNode deq coreId 0 nodeId 2 resEntry->id 2, coreResTbl[0].resQ.head a34c1394 qcount 1
    [MCU2_0]     20.873336 s: ETHFW: ALLOC_TX | S2C | txPsil=0xca02 status=0
    [MCU2_0]     20.873986 s: ETHFW: ALLOC_MAC | C2S | core=0 endpt=1026 token=400
    [MCU2_0]     20.874031 s: ETHFW: ALLOC_MAC | S2C | macAddr=70:c4:ad:e9:f2:cc status=0
    [MCU2_0]     20.874112 s: ETHFW: ALLOC_RX | C2S | core=0 endpt=1026 token=700
    [MCU2_0]     20.874159 s: ETHFW: ALLOC_RX | S2C | flow=114,2 rxPsil=0x4a00 status=0
    [MCU2_0]     20.874237 s: ETHFW: ALLOC_TX | C2S | core=0 endpt=1026 token=700
    [MCU2_0]     20.874297 s: EnetRm_allocResourceNode deq coreId 0 nodeId 2 resEntry->id 3, coreResTbl[0].resQ.head 0 qcount 0
    [MCU2_0]     20.874345 s: EnetRm_allocResourceNode enq coreId 0 coreResTbl[0] qcount 1 
    [MCU2_0]     20.874380 s: EnetRm_allocResourceNode: EnetRm_allocResourceNode failed, nodeId not found
    [MCU2_0]     20.874412 s: : -1
    [MCU2_0]     20.874436 s: EnetAppUtils_allocAbsTxCh() failed: -8
    [MCU2_0]     20.874462 s: ETHFW: CpswProxyServer_allocTxHandlerCb: Failed to alloc TX channel: -8
    [MCU2_0]     20.874494 s: ETHFW: CpswProxyServer_clientRequestHandler: Failed to alloc TX channel: -2
    [MCU2_0]     20.874525 s: ETHFW: ALLOC_TX | S2C | txPsil=0xabcdabcd status=-2
    [MCU2_0]     20.892547 s: ETHFW: FREE_MAC | C2S | core=0 endpt=1026 token=0 macAdd=70:34:ba:4e:ea:01
    [MCU2_0]     20.892595 s: ETHFW: FREE_MAC | S2C | status=0
    [MCU2_0]     20.893459 s: ETHFW: FREE_TX | C2S | core=0 endpt=1026 token=0 txPsil=0xca04
    [MCU2_0]     20.893505 s: ETHFW: FREE_TX | S2C | status=0
    [MCU2_0]     20.893579 s: ETHFW: FREE_TX | C2S | core=0 endpt=1026 token=0 txPsil=0xca07
    [MCU2_0]     20.893614 s: ETHFW: FREE_TX | S2C | status=0
    [MCU2_0]     20.893687 s: ETHFW: FREE_RX | C2S | core=0 endpt=1026 token=0 flowidx=114,0
    [MCU2_0]     20.893742 s: CpswProxyServer_getRelFlowIdx virtPort 0 j 0 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x0
    [MCU2_0]     20.893798 s: ETHFW: FREE_RX | S2C | status=0
    [MCU2_0]     20.893909 s: ETHFW: DETACH | C2S | core=0 endpt=1026 token=0
    [MCU2_0]     20.893956 s: ETHFW: DETACH | S2C | status=0
    [MCU2_0]     20.894036 s: ETHFW: FREE_MAC | C2S | core=0 endpt=1026 token=400 macAdd=70:c4:ad:e9:f2:cc
    [MCU2_0]     20.894078 s: ETHFW: FREE_MAC | S2C | status=0
    [MCU2_0]     20.894148 s: ETHFW: FREE_TX | C2S | core=0 endpt=1026 token=400 txPsil=0xca02
    [MCU2_0]     20.894184 s: ETHFW: FREE_TX | S2C | status=0
    [MCU2_0]     20.894255 s: ETHFW: FREE_RX | C2S | core=0 endpt=1026 token=400 flowidx=114,1
    [MCU2_0]     20.894307 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 0 rxFlowIdxOffset 0x2 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894357 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 1 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894408 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 2 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894456 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 3 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894506 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 4 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894555 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 5 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894604 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 6 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894653 s: CpswProxyServer_getRelFlowIdx virtPort 7 j 7 rxFlowIdxOffset 0x0 rxFlowIdxOffset 0x1
    [MCU2_0]     20.894690 s: ETHFW: CpswProxyServer_freeRxHandlerCb: Failed to get relative flow index for virtual port 7 flow 1: -2
    [MCU2_0]     20.894729 s: ETHFW: CpswProxyServer_clientRequestHandler: Failed to free RX flow: -2
    [MCU2_0]     20.894758 s: ETHFW: FREE_RX | S2C | status=-2
    [MCU2_0]     20.898867 s: INF:cbase:cbl_query_response:tilld3 link DOWN !!!!
    [MCU2_0] INF:cbase:cbl_query_response:tilld5 link DOWN !!!!
    [MCU2_0]     20.998886 s: INF:gptp:000016-252745:domainIndex=0, GM changed old=00:00:00:00:00:00:00:00, new=70:46:48:FF:FE:E2:30:9F
    [MCU2_0] INF:gptp:gptpclock_set_gmsync:gptpInstanceIndex=0, domainIndex=0, gmstate=2
    [MCU2_0] INF:gptp:set_phase_offsetGM:domainIndex=0, New adjustment(New GM?)
    [MCU2_0]     20.998976 s: RN:gptp:gptpgcfg_link_check:can't read speed
    [MCU2_0]     21.098870 s: WRN:gptp:gptpgcfg_link_check:can't read speed
    

    I found that ErrLogs appeared due to resQ.head is NULL, but I don't know why.

    Please help check for code diff and provide more suggestions.

    Thanks.

    BR,

    Lei

  • Hi,

    Let us check at our side and get back to you soon.

    Best Regards,
    Sudheer

  • Hi,

    We are also observing same Issue.

    There is an issue in A72 client side, It is passing same Virtual Port number for the both MAC Only Ports to EthFw Server.

    We are checking the issue and get back to you soon.

    Best Regards,
    Sudheer

  • Hi Sudheer,


    Thank you for the update.


    BR,
    Lei

  • Hi,

    There is a Macro "CPSWPROXYSERVER_VIRTPORT_PER_CLIENT_MAX" in EthFw (from ethfw/ethremotecfg/server/src/cpsw_proxy_server.h file) which limits no.of virtual Ports per client.

    By default it was 2, as you are enabling 3 virtual ports for A72, can you please increase the value of above macro to 3.

    I have tested by increasing the value to 3, It is working fine.

    Best Regards,
    Sudheer

  • Hi Sudheer,

    May I ask a code question.

    I observed that the following logs were printed:

    I found that it received cmd through RPMessage_recv,

    But I can't find the send code on Linux.

    Can you help provide the code location?

    BR,

    Lei

  • Hi,

    But I can't find the send code on Linux.

    Can you help provide the code location?

    "cpsw-proxy-client" is virtual Linux client module.

    Please refer to cpsw-proxy-client.c file in Linux SDK from "Linux/drivers/net/ethernet/ti/cpsw-proxy-client.c"

    Best Regards,
    Sudheer