[U-Boot] Can't connect to PHY, BCM5461

Hi!
I have a modified MPC8360 platform with a PHY named BCM5461 and UEC as Ethernet Controller. I started with the MPC8360EMDS card from U-boot and then modified it so that it match the card (what I know). I am using the git-version of U-boot from October, 20, 2008. The problem is that I can't even get contact with the PHY. It says it's a generic phy, but even with that I can't get any contact to it and the phy_ID u-boot prints is just 0.
"UEC: PHY is Generic MII (0)" "warning: FSL UEC0: timeout on PHY link"
Hereafter the u-boot just hanging..
TIA Simon

Simon Boman wrote:
Hi!
I have a modified MPC8360 platform with a PHY named BCM5461 and UEC as Ethernet Controller. I started with the MPC8360EMDS card from U-boot and then modified it so that it match the card (what I know). I am using the git-version of U-boot from October, 20, 2008. The problem is that I can't even get contact with the PHY. It says it's a generic phy, but even with that I can't get any contact to it and the phy_ID u-boot prints is just 0.
"UEC: PHY is Generic MII (0)" "warning: FSL UEC0: timeout on PHY link"
Hereafter the u-boot just hanging..
TIA Simon
What does the MII command tell you about your MII bus in general and your PHY's registers?
gvb

I added this code to the uec.c file: int i; for(i=0;i<20;i++) printf("PHY value %d is %x\n", i, phy_read(uec->mii_info, i));
and got this to the prompt..
PHY value 0 is 0 PHY value 1 is 0 PHY value 2 is 0 PHY value 3 is 0 PHY value 4 is 0 PHY value 5 is 0 PHY value 6 is 0 PHY value 7 is 0 PHY value 8 is 0 PHY value 9 is 0 PHY value 10 is 0 PHY value 11 is 0 PHY value 12 is 0 PHY value 13 is 0 PHY value 14 is 0 PHY value 15 is 0 PHY value 16 is 0 PHY value 17 is 0 PHY value 18 is 0 PHY value 19 is 0
2008/10/29 Jerry Van Baren gerald.vanbaren@ge.com:
Simon Boman wrote:
Hi!
I have a modified MPC8360 platform with a PHY named BCM5461 and UEC as Ethernet Controller. I started with the MPC8360EMDS card from U-boot and then modified it so that it match the card (what I know). I am using the git-version of U-boot from October, 20, 2008. The problem is that I can't even get contact with the PHY. It says it's a generic phy, but even with that I can't get any contact to it and the phy_ID u-boot prints is just 0.
"UEC: PHY is Generic MII (0)" "warning: FSL UEC0: timeout on PHY link"
Hereafter the u-boot just hanging..
TIA Simon
What does the MII command tell you about your MII bus in general and your PHY's registers?
gvb

Simon Boman wrote:
I added this code to the uec.c file: int i; for(i=0;i<20;i++) printf("PHY value %d is %x\n", i, phy_read(uec->mii_info, i));
and got this to the prompt..
PHY value 0 is 0 PHY value 1 is 0 PHY value 2 is 0 PHY value 3 is 0 PHY value 4 is 0 PHY value 5 is 0 PHY value 6 is 0 PHY value 7 is 0 PHY value 8 is 0 PHY value 9 is 0 PHY value 10 is 0 PHY value 11 is 0 PHY value 12 is 0 PHY value 13 is 0 PHY value 14 is 0 PHY value 15 is 0 PHY value 16 is 0 PHY value 17 is 0 PHY value 18 is 0 PHY value 19 is 0
Please don't top post.
I think you first need to *find* your phy. This is likely a hardware/software issue: I/O lines, I/O configuration, PHY address strapping.
I wasn't advocating adding code to print PHY registers, I was advocating using the "mii" command: "help mii". If it isn't in your build, add it. Then do "mii device", IIRC, it will scan the MII bus to see who is out there. That will identify mis-strapped (or misunderstood strapping) PHY address strapping. If nobody answers the call, you likely have a I/O pin misconfiguration or a more serious hardware problem.
gvb
2008/10/29 Jerry Van Baren gerald.vanbaren@ge.com:
Simon Boman wrote:
Hi!
I have a modified MPC8360 platform with a PHY named BCM5461 and UEC as Ethernet Controller. I started with the MPC8360EMDS card from U-boot and then modified it so that it match the card (what I know). I am using the git-version of U-boot from October, 20, 2008. The problem is that I can't even get contact with the PHY. It says it's a generic phy, but even with that I can't get any contact to it and the phy_ID u-boot prints is just 0.
"UEC: PHY is Generic MII (0)" "warning: FSL UEC0: timeout on PHY link"
Hereafter the u-boot just hanging..
TIA Simon
What does the MII command tell you about your MII bus in general and your PHY's registers?
gvb

2008/10/29 Jerry Van Baren gerald.vanbaren@ge.com:
Simon Boman wrote:
I added this code to the uec.c file: int i; for(i=0;i<20;i++) printf("PHY value %d is %x\n", i, phy_read(uec->mii_info, i));
and got this to the prompt..
PHY value 0 is 0 PHY value 1 is 0 PHY value 2 is 0 PHY value 3 is 0 PHY value 4 is 0 PHY value 5 is 0 PHY value 6 is 0 PHY value 7 is 0 PHY value 8 is 0 PHY value 9 is 0 PHY value 10 is 0 PHY value 11 is 0 PHY value 12 is 0 PHY value 13 is 0 PHY value 14 is 0 PHY value 15 is 0 PHY value 16 is 0 PHY value 17 is 0 PHY value 18 is 0 PHY value 19 is 0
Please don't top post.
I think you first need to *find* your phy. This is likely a hardware/software issue: I/O lines, I/O configuration, PHY address strapping.
I wasn't advocating adding code to print PHY registers, I was advocating using the "mii" command: "help mii". If it isn't in your build, add it. Then do "mii device", IIRC, it will scan the MII bus to see who is out there. That will identify mis-strapped (or misunderstood strapping) PHY address strapping. If nobody answers the call, you likely have a I/O pin misconfiguration or a more serious hardware problem.
gvb
I'm sorry, and thank you for your quick reply!
I have now figured out that MDIO uses the SPI2-bus and what I can see U-boot does'nt support that. If it is, I will really appreciate if you tell me how to use it.
/Simon

2008/10/31 Simon Boman simon.boman@gmail.com:
2008/10/29 Jerry Van Baren gerald.vanbaren@ge.com:
Simon Boman wrote:
I added this code to the uec.c file: int i; for(i=0;i<20;i++) printf("PHY value %d is %x\n", i, phy_read(uec->mii_info, i));
and got this to the prompt..
PHY value 0 is 0 PHY value 1 is 0 PHY value 2 is 0 PHY value 3 is 0 PHY value 4 is 0 PHY value 5 is 0 PHY value 6 is 0 PHY value 7 is 0 PHY value 8 is 0 PHY value 9 is 0 PHY value 10 is 0 PHY value 11 is 0 PHY value 12 is 0 PHY value 13 is 0 PHY value 14 is 0 PHY value 15 is 0 PHY value 16 is 0 PHY value 17 is 0 PHY value 18 is 0 PHY value 19 is 0
Please don't top post.
I think you first need to *find* your phy. This is likely a hardware/software issue: I/O lines, I/O configuration, PHY address strapping.
I wasn't advocating adding code to print PHY registers, I was advocating using the "mii" command: "help mii". If it isn't in your build, add it. Then do "mii device", IIRC, it will scan the MII bus to see who is out there. That will identify mis-strapped (or misunderstood strapping) PHY address strapping. If nobody answers the call, you likely have a I/O pin misconfiguration or a more serious hardware problem.
gvb
I'm sorry, and thank you for your quick reply!
I have now figured out that MDIO uses the SPI2-bus and what I can see U-boot does'nt support that. If it is, I will really appreciate if you tell me how to use it.
/Simon
I can add that I have set the assignvalue so MDIO and MDC use SPI2, but still it does'nt work.. any suggests?
participants (2)
-
Jerry Van Baren
-
Simon Boman