Running the NDK 2.0 Demo program at "C:\CCStudio_v3.3\ndk_2_0_0\packages\ti\ndk\example\network\helloWorld" on an 1000Mbps Ethernet link, DM648 could response ping successfully. Below is script:
TCP/IP Stack 'Hello World!' Application
Using MAC Address: 3c-2d-b7-2c-40-0e
cpsw_MDIO_Init
SetPhyMode:000021E1 Auto:1, FD10:64, HD10:32, FD100:256, HD100:128, FD1000:8192 LPBK:0
cpsw_MDIO_Init
SetPhyMode:00000000 Auto:0, FD10:0, HD10:0, FD100:0, HD100:0, FD1000:0 LPBK:0
EMAC should be up and running
EMAC has been started successfully
Registeration of the EMAC Successful
Service Status: DHCPC : Enabled : : 000
Service Status: DHCPC : Enabled : Running : 000
cpsw_MDIO_FindingState: PhyNum: 0
cpsw_MDIO_PhYReset(0)
Enable Phy to negotiate external connection
NWAY Advertising: FullDuplex-1000 FullDuplex-100 HalfDuplex-100 FullDuplex-10 HalfDuplex-10
Negotiated connection: FullDuplex 1000 Mbs
Link Status: 1000Mb/s Full Duplex on PHY 0
Network Added: If-1:192.168.4.2
Service Status: DHCPC : Enabled : Running : 017
Running the same program on an 100Mbps Ethernet link, DM648 could not response ping command. Below is script:
TCP/IP Stack 'Hello World!' Application
Using MAC Address: 3c-2d-b7-2c-40-0e
cpsw_MDIO_Init
SetPhyMode:000021E1 Auto:1, FD10:64, HD10:32, FD100:256, HD100:128, FD1000:8192 LPBK:0
cpsw_MDIO_Init
SetPhyMode:00000000 Auto:0, FD10:0, HD10:0, FD100:0, HD100:0, FD1000:0 LPBK:0
EMAC should be up and running
EMAC has been started successfully
Registeration of the EMAC Successful
Service Status: DHCPC : Enabled : : 000
Service Status: DHCPC : Enabled : Running : 000
cpsw_MDIO_FindingState: PhyNum: 0
cpsw_MDIO_PhYReset(0)
Enable Phy to negotiate external connection
NWAY Advertising: FullDuplex-1000 FullDuplex-100 HalfDuplex-100 FullDuplex-10 HalfDuplex-10
Phy: 0, NegMode 01E1, NWAYadvertise 01E1, NWAYREadvertise 45E1
Negotiated connection: FullDuplex 100 Mbs
Link Status: 100Mb/s Full Duplex on PHY 0
Is there anything wrong with PHY for the 100Mbps link? Does “NWAYadvertise” have something to do with the failure?