Hi
I need some help in reading the link speed on the ethernet connection on my custom C6655 board.
I have connected my custom board to my PC, and the PC detects that the connection is 1Gb/s, and I can send data to and from my DSP - so I know the connection is there. My problem is that I need to know the link status on the DSP, because in the final application there will be no PC.
I have tried using the emac_poll() function like this
static void UpdateLink(int *link_status) { EMAC_LINK_INFO_T link_info; if (emac_poll(0, &link_info) == EMAC_DRV_RESULT_OK) { *link_status = link_info.link_status; } }
But it allways returns 0 in link_info.link_status - even though I can see on the PC that the link is 1Gb/s
My application is using
ndk_2_24_00_11
bios_6_41_00_26
pdk_C6657_1_1_2_6
When the network is opened I get the following output in the emulator
[C66xx_0] emac_init: core 0, port 0, total number of channels/MAC addresses: 1/1
MAC addresses configured for channel 0:
C4-ED-BA-9E-F6-BE
SGMII reset successful........
SGMII config successful........
emac_open core 0 port 0 successfully
Registration of the EMAC Successful, waiting for link up ..
Network Added: If-1:192.168.0.189
Service Status: Telnet : Enabled : : 000
Service Status: HTTP : Enabled : : 000
It should be noted that our custom board does not use the same PHY as the EVM, instead it uses the MARVELL Alaska 88E1512, but I do not know if that makes any difference.
Thanks
Jens