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.

RM46L852: ethernet bootloader not communicate with my PC

Part Number: RM46L852

Thanks in advance.

I would like to use ethernet bootloader for my RM46L852 board, so I downloaded example code from TI, am now struggling to adapt my hardware.

What should I check out ? I tried 2 things,

1) Ethernet on my board can work  with static IP address, so I modified following sentence, but saw no communication.

 // ipAddr = lwIPInit(0, emacAddress, 0, 0, 0, IPADDR_USE_DHCP);
/* Uncomment the following if you'd like to assign a static IP address. Change address as required, and uncomment the previous statement. */
//for TMS570LC43x. If RM57x, swap the bytes (1st/4th, 2nd/3rd)

uint8 ip_addr[4] = { 60, 11, 168, 192 };
uint8 netmask[4] = { 0, 255, 255, 255 };
uint8 gateway[4] = { 20, 11, 168, 192 };
ipAddr = lwIPInit(0, emacAddress,
*((uint32_t *)ip_addr),
*((uint32_t *)netmask),
*((uint32_t *)gateway),
IPADDR_USE_STATIC);

2) Then, I modified TFTPInit like following sentence, but saw no communication.

void
TFTPInit(tTFTPRequest pfnRequest)
{
struct udp_pcb *UdpPcb;
static ip_addr_t SrcIP;
static ip_addr_t DstIP;
const uint16_t PORT_NO_SRC = 69;
const uint16_t PORT_NO_DST = 22;
ip_addr_t netmask;
ip_addr_t gw;
err_t err;
//
// Remember the application's notification callback.
//
g_pfnRequest = pfnRequest;

IP4_ADDR(&SrcIP, 192, 168, 11, 60);
IP4_ADDR(&DstIP, 192, 168, 11, 20);
IP4_ADDR(&netmask, 0, 255, 255, 255);
IP4_ADDR(&gw, 192, 168, 11, 1);

netmask = netmask, gw = gw;
//
// Start listening for incoming TFTP requests.
//
UdpPcb = udp_new();
// udp_bind(UdpPcb, IP_ADDR_ANY, TFTP_PORT);
err = udp_bind(UdpPcb, &SrcIP, PORT_NO_SRC);
if(err == ERR_OK)
{
udp_recv(UdpPcb, TFTPRecv, (void *)0);
err = udp_connect(UdpPcb, &DstIP, PORT_NO_DST);
if(err == ERR_OK)
{
while(!image_download);
}
else
{
while(1);
}
}
else
{
while(1);
}
}