I have an am3359, and I cannot get the ethernet to work. The phy chip is a Lan8710, just like on the beaglebone, which is the schematic I copied. Every few reboots, the mdio address switches between 0:04 and 0:06. The physical jumper configuration for the chip is address 0:06.
When the 'scanned' mdio address matches the physical jumper settings, I can enumerate the phy as an ethernet port.
~ dmesg | grep phy
[ 4.021636] davinci_mdio davinci_mdio.0: detected phy mask ffffffbe
[ 4.032623] davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver SMSC LAN8710/LAN8720
[ 4.040863] davinci_mdio davinci_mdio.0: phy[6]: device 0:06, driver SMSC LAN8710/LAN8720
[ 4.301452] net eth0: CPSW phy found : id is : 0x7c0f1
~ ifup eth1
[ 20.129333] net eth1: CPSW phy found : id is : 0x7c0f1
~ ping [ 23.126098] PHY: 0:06 - Link is Up - 100/Full
Then I can use ethtool
~ ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 6
Transceiver: external
Auto-negotiation: on
Current message level: 0x00000000 (0)
Link detected: yes
So, it looks like it is going to work, but then I try to USE the interface, and:
~ ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:18:31:E0:CD:D1
inet addr:192.168.1.105 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING ALLMULTI MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
~ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
--- 192.168.1.1 ping statistics ---
7 packets transmitted, 0 packets received, 100% packet loss
There does not seem to be any traffic through it. The network lights are on on my switch and my board, so they LAN8710 is talking to the switch, there just doesn't seem to be any communication between the AM3359 and the LAN8710. I checked the clock, it is 50Mhz, 1.5Vpp, sourced TO the AM3359 AND the LAN8710 from a clock chip. I don't know what else to test, or what else to try. Does anyone have any ideas?