Other Parts Discussed in Thread: DP83869HM
Tool/software:
We have a custom board that has two ethernet ports. When I enable them in the configuration files, eth1 is configured as 10 Mbps and half duplex while eth0 is configured as 1000 Mbps and full duplex. We've checked the strapping pins and they seem to be correct (one LED pin is floating on both transceivers).
=> mii device MII devices: 'mdio@f00' 'ethernet@8000000port@1' Current device: 'mdio@f00' => mii dump 0 0 Error reading from the PHY addr=00 reg=00 => mii device ethernet@8000000port@1 => mii dump 0 0 0. (1140) -- PHY control register -- (8000:0000) 0.15 = 0 reset (4000:0000) 0.14 = 0 loopback (2040:0040) 0. 6,13 = b10 speed selection = 1000 Mbps (1000:1000) 0.12 = 1 A/N enable (0800:0000) 0.11 = 0 power-down (0400:0000) 0.10 = 0 isolate (0200:0000) 0. 9 = 0 restart A/N (0100:0100) 0. 8 = 1 duplex = full (0080:0000) 0. 7 = 0 collision test enable (003f:0000) 0. 5- 0 = 0 (reserved) => mii dump 0 1 1. (796d) -- PHY status register -- (8000:0000) 1.15 = 0 100BASE-T4 able (4000:4000) 1.14 = 1 100BASE-X full duplex able (2000:2000) 1.13 = 1 100BASE-X half duplex able (1000:1000) 1.12 = 1 10 Mbps full duplex able (0800:0800) 1.11 = 1 10 Mbps half duplex able (0400:0000) 1.10 = 0 100BASE-T2 full duplex able (0200:0000) 1. 9 = 0 100BASE-T2 half duplex able (0100:0100) 1. 8 = 1 extended status (0080:0000) 1. 7 = 0 (reserved) (0040:0040) 1. 6 = 1 MF preamble suppression (0020:0020) 1. 5 = 1 A/N complete (0010:0000) 1. 4 = 0 remote fault (0008:0008) 1. 3 = 1 A/N able (0004:0004) 1. 2 = 1 link status (0002:0000) 1. 1 = 0 jabber detect (0001:0001) 1. 0 = 1 extended capabilities =>
=> mii devoce ethernet@8000000port@2 No such device: ethernet@8000000port@2 => setenv ethact eth1 => net list eth0 : ethernet@8000000port@1 98:03:8a:7f:17:3f eth1 : ethernet@8000000port@2 f6:db:cb:56:11:a2 active => mii dump 1 0 0. (0000) -- PHY control register -- (8000:0000) 0.15 = 0 reset (4000:0000) 0.14 = 0 loopback (2040:0000) 0. 6,13 = b00 speed selection = 10 Mbps (1000:0000) 0.12 = 0 A/N enable (0800:0000) 0.11 = 0 power-down (0400:0000) 0.10 = 0 isolate (0200:0000) 0. 9 = 0 restart A/N (0100:0000) 0. 8 = 0 duplex = half (0080:0000) 0. 7 = 0 collision test enable (003f:0000) 0. 5- 0 = 0 (reserved) => mii dump 1 1 1. (ffff) -- PHY status register -- (8000:8000) 1.15 = 1 100BASE-T4 able (4000:4000) 1.14 = 1 100BASE-X full duplex able (2000:2000) 1.13 = 1 100BASE-X half duplex able (1000:1000) 1.12 = 1 10 Mbps full duplex able (0800:0800) 1.11 = 1 10 Mbps half duplex able (0400:0400) 1.10 = 1 100BASE-T2 full duplex able (0200:0200) 1. 9 = 1 100BASE-T2 half duplex able (0100:0100) 1. 8 = 1 extended status (0080:0080) 1. 7 = 1 (reserved) (0040:0040) 1. 6 = 1 MF preamble suppression (0020:0020) 1. 5 = 1 A/N complete (0010:0010) 1. 4 = 1 remote fault (0008:0008) 1. 3 = 1 A/N able (0004:0004) 1. 2 = 1 link status (0002:0002) 1. 1 = 1 jabber detect (0001:0001) 1. 0 = 1 extended capabilities
I was asked to start a separate thread so the PHY team might offer an explanation for why eth1 is not configured and the PHY registers are not readable/writable.
With "mdio", I see the same:
Thanks!