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-Q1: Eth Virtual Mac issue

Part Number: TDA4VM-Q1
Other Parts Discussed in Thread: SYSBIOS

Hi Expert,

Customer Hirain encounter an eth issue as below:

Currently our project is having issues using the Eth Virtual Mac.
We refer to the TI SDK version as 0804, and the document location is MCUSW: Eth Virtual Mac User Guide (ti.com)
According to the build and running methods provided in the document, we compiled the binary on MCU2_1 and verified it on CCS, but we did not see the log phenomenon as given in the document.
In the code path mcusw\mcal_drv\mcal\examples\Eth\eth_app\target\EthVirtmacApp.c,

1. SemaphoreP_pend is waiting to post a semaphore. We found that the post semaphore operation is in EthVirtmacApp_initMainFunctionPoll(), but it can be seen in the figure that the code here is blocked by TI
2. We manually open the shield here, and the code will run away at the position shown in the figure below

The operation process is as follows:
Compilation instruction: eth_virtmac_app
$ cd mcusw/build/
$ make eth_virtmac_app CORE:=mcu2_1 BOARD:=j721e_evm
Generated result:
mcusw/binary/eth_virtmac_app/bin/j721e_evm/eth_virtmac_app_mcu2_1_${build_profile}.xer5f
Host-side application compilation instructions:
$ cd mcal_drv/mcal/examples/Eth/eth_app/host/
$ make
Program loading steps:
1. Run the host-side application with root privileges and specify the interface name to use, for example:
2. $ cd
mcal_drv/mcal/examples/Eth/eth_app/host/
3. $ sudo ./EthHostApp -i eth2
4. At this point, the host-side application will wait for the DUT
5. Load the Ethernet firmware on MAIN_Cortex_R5_0_0 on the target.
o ${ETHFW}/out/${soc}/R5F/SYSBIOS/${build_profile}/app_remoteswitchcfg_server.xer5f
6. Run MAIN_Cortex_R5_0_0
7. Load the target application on MAIN_Cortex_R5_0_1
8. eth_virtmac_app_mcu5_0_${build_profile}.xer1f
9. Run MAIN_Cortex_R5_0_1
When debugging: enter EthVirtmacApp_init() from main, and get stuck in an infinite loop at SemaphoreP_pend

customer question as below:

1. Where is SemaphoreP posted for SemaphoreP_pend detection
2. Is there any error in our operation method?
3. I compared the code implementation of this part in SDK 0805 and 0806. Here is the same implementation. Whether TI has realized the complete function of this part

BR,

Biao

  • Hi,

    8. eth_virtmac_app_mcu5_0_${build_profile}.xer1f

    What is this binary, and how come it is different from "mcusw/binary/eth_virtmac_app/bin/j721e_evm/eth_virtmac_app_mcu2_1_${build_profile}.xer5f".

    We need to load jel script file from RTOS SDK  in CCS setup, which loads SciServer application on MCU1_0 which is responsible for allocation of resources to the cores.

    If MCU1_0 is not loaded with system firmware then MCU2_0 (EthFw) will fail for resources configuration and will get struck. 

    Can you please share MCU2_0 logs form Main UART2 terminal.

    Please refer to CCS setup from RTOS SDK Documentation for setting up the environment.

    Best Regards,
    Sudheer

  • Hi,

    1、The binary is eth_virtmac_app_mcu2_1_${build_profile}.xer5f

    2、We have load jel script form CCS,and SciServer application on MCU1_0 is running status

    3、MCU2_0 logs form Main UART2 terminal as show in the image:

    Best Regards,

    Xue

  • Hi,

    Above seems like issue with Resources, If you try to reset MCU2_0 core and reloading EthFw again then above error will be observed. (Perform power cycle of board every time and load the binaries on MCU2_0 and MCU2_1).

    Can you power cycle the board and run the application once?

    Also, can you please confirm have you made any changes in SDK? or using the TI released SDK as is?

    Can you rebuild Ethfw application using commands specified in SDK documentation and check once.

    Best Regards,
    Sudheer