Hi,
I am attempting to migrate the LwIP demo onto a custom board, it uses the RM46L852CPGET in MII with the DP83640 PHY. I modified the demo files for LwIP slightly to fit my hardware and got the demo to work properly, so the hardware is functioning properly. So going with this I started porting files over to my code base to begin the integration. I am at the point where the demo will output:
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
and then nothing. When I open the debugger the system is stuck in the following while statement (from HalCoGen's emac.c):
/* Make sure that the transmission is over */ /*SAFETYMCUSW 28 D MR:NA <APPROVED> "Hardware status bit read check" */ /*SAFETYMCUSW 134 S MR:12.2 <APPROVED> "LDRA Tool issue" */ /*SAFETYMCUSW 45 D MR:21.1 <APPROVED> "Valid non NULL input parameters are assigned in this driver" */ while(((curr_bd->flags_pktlen) & EMAC_BUF_DESC_OWNER) == EMAC_BUF_DESC_OWNER) { }
which is in the "EMACTxIntHandler(hdkif_t *hdkif)" function. The initialization is using DCHP. The only difference I can find is that HalCoGen project for the demo is for the BGA package instead of the LQFP that I am using. Any ideas what could be happening? I am happy to provide any info necessary. I attached a copy of the new project that is not working.
Thanks!4744.Code.zip