Hi,
We are developing NDK drivers of AM335x using,
NDK v2.22.02.16
SYS/BIOS v6.33.04.39
I'm facing issues when trying to assign IP addresses for multiple interfaces on AM335x based IDK(The two interfaces being ICSS based PRU and CPSW). Can you give me an insight on how to assign the IP addresses for both interfaces? Currently both drivers are up and running, but IP Address is assigned to only one IF. Here is the IF info
[CortxA8] EDRV: PDI MAC Address: 00-31-de-00-00-00
[CortxA8] Nimu: EMAC started
[CortxA8] Nimu: Registration of EMAC successful
[CortxA8] Using MAC Address: bc-6a-29-63-a4-a6
[CortxA8] Got packet back, Enabling RXGot packet back, Enabling RXEMAC has been started successfully
[CortxA8] Registeration of the EMAC Successful
[CortxA8] Interface Name: eth1
[CortxA8] Interface Id : 2
[CortxA8] IP Address : 192.168.1.4
[CortxA8] IP Mask : 255.255.254.0
[CortxA8] MTU : 1500 bytes
[CortxA8] MAC Address : 0xbc-0x6a-0x29-0x63-0xa4-0xa6
[CortxA8]
[CortxA8]
[CortxA8] Interface Name: eth0
[CortxA8] Interface Id : 1
[CortxA8] MTU : 1500 bytes
[CortxA8] MAC Address : 0x0-0x31-0xde-0x0-0x0-0x0
[CortxA8]
[CortxA8]
[CortxA8] Network Added: If-2:192.168.1.4
[CortxA8] enter taskPruss()
[CortxA8] Link Status: 100Mb/s Full Duplex on PHY 2
The assigned IP address is taken for *.cfg file. I can toggle the Ip.ifIdx to run the drivers individually.
I tried using the following approach to assign IP address on the first interface, but it results in an exception(probably as those entries are not available)
/* get the current static IP entry */
// CfgGetEntry(hCfg, CFGTAG_IPNET, 1, 1, &hCfgIpAddr);
/* remove the current static IP entry */
// CfgRemoveEntry(hCfg, hCfgIpAddr);
/* add a new static IP entry */
// CfgAddEntry(hCfg, CFGTAG_IPNET, 1, 0,
// sizeof(CI_IPNET), (UINT8 *)&NA, 0);
Thanks,
Vinesh