Part Number: TDA4VL
I want to use RGMII on MAIN_CPSW2G of TDA4VL. The link is up, but I am not able to establish a communication. I can see that Rx is working but Tx is not working.
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.
Part Number: TDA4VL
I want to use RGMII on MAIN_CPSW2G of TDA4VL. The link is up, but I am not able to establish a communication. I can see that Rx is working but Tx is not working.
Hi,
This is a known issue in SDK 8.5 and SDK 8.6. The reason for this issue being that RGMII clocks are not being set correctly which is affecting the Tx path of RGMII.
To fix this issue, you need to:
Use the following patch on rm_pm_hal. Patch : https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/1045/2677.pll0_5F00_no_5F00_hw_5F00_init.patch
-[PSDK-RTOS-Install-directory]/pdk_j721s2_[version-string]/packages/ti/drv/sciclient/src/rm_pm_halgit init && git apply <path-to-patch>[PSDK-RTOS-Install-directory]/pdk_j721s2_[version-string]/packages/ti/buildmake BOARD=j721s2_evm CORE=mcu1_0 rm_pm_hal_cleanmake BOARD=j721s2_evm CORE=mcu1_0 ipc_echo_testb_freertosThe built binary will be available in [PSDK-RTOS-Install-directory]/pdk_j721s2_[version-string]/packages/ti/binary/ipc_echo_testb_freertos/bin/j721s2_evm/
The prebuilt version of the binary for SDK 8.5 is available here : https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/1045/2677.ipc_5F00_echo_5F00_testb_5F00_mcu1_5F00_0_5F00_release_5F00_strip.xer5f
To include the DM in SPL boot flow, copy the binary to [PSDK-Linux-Install-directory]/board-support/prebuilt-images/ and rebuild the linux bootloaders (majorly tiboot3.bin). See below for building the linux bootloaders.
Apply the following patch on u-boot. Patch - https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/1045/2677.0001_2D00_arch_2D00_arm_2D00_dts_2D00_k3_2D00_j721s2_2D00_Change_2D00_GTC_2D00_and_2D00_CPTS_2D00_clock_2D00_par.patch
[PSDK-Linux-Install-directory]/board-support/u-boot-[commit-hash]/ git apply <path-to-patch>make u-boot"[PSDK-Linux-Install-directory]/board-support/k3-image-gen-[version]/tiboot3.bin [PSDK-Linux-Install-directory]/board-support/u-boot_build/a72/tislp.bin[PSDK-Linux-Install-directory]/board-support/u-boot_build/a72/u-boot.imgWith this, you will see RGMII clock being set to its appropriate value and RGMII Tx will be operational.
Regards,
Tanmay