I have implemented QJ Wang's LwIP FreeRTOS example on a TMS570LC4357 HDK and am having an issue that is hard to resolve. To set up the project for building I had to
- Modify HL_emac.c on line 1760 to enable EMACTxIntISR and EMACRxIntISR
- cd ~/ti/Hercules && git clone https://git.ti.com/git/hercules_examples/hercules_examples.git
- Updated ${workspace_loc:/${ProjName}/example and ${workspace_loc:/${ProjName}/lwip-1.4.1 directories to point to ~/ti/Hercules/hercules_examples...
Over terminal I can see
HERCULES MICROCONTROLLERS Texas Instruments Little Endian device Initializing ethernet (DHCP) DEBUG - Getting PHY ID....SUCCESS DEBUG - Getting PHY Alive Status...SUCCESS DEBUG - Getting PHY Link Status...SUCCESS DEBUG - Setting up Link...SUCCESS
The program hangs in EMACTxIntHandler on line 1538:
while(((EMACSwizzleData(curr_bd->flags_pktlen)) & EMAC_BUF_DESC_OWNER) == EMAC_BUF_DESC_OWNER) { }
I have read some posts about this issue but they have not helped so far.
https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/445955?while-EMACSwizzleData-curr-bd-flags-pktlen-EMAC-BUF-DESC-OWNER-EMAC-BUF-DESC-OWNER-
I understand that Asina-Chie-Shih-Shuai has put up quite a few helpful posts on this topic and may be able to provide some input. My project is attached.