[U-Boot-Users] [PATCHJ PPC4xx enet crossover

Mike Nuss mike at terascala.com
Tue Mar 4 15:27:49 CET 2008


There were differences in the PHY setup between Linux and U-Boot.

This patch fixes the problem. Apparently "remote fault" is being set,
which signals to some devices (on the other end of the cable) that a
fault has occurred, while other devices ignore it. I believe the RF bit
was causing the issue, but I removed T4 also, to match up with Linux.

Signed-off-by: Mike Nuss <mike at terascala.com>

diff --git a/cpu/ppc4xx/miiphy.c b/cpu/ppc4xx/miiphy.c
index 4216f0b..f48e68d 100644
--- a/cpu/ppc4xx/miiphy.c
+++ b/cpu/ppc4xx/miiphy.c
@@ -143,7 +143,7 @@ int phy_setup_aneg (char *devname, unsigned char addr)
        u16 adv;
 
        miiphy_read (devname, addr, PHY_ANAR, &adv);
-       adv |= (PHY_ANLPAR_ACK | PHY_ANLPAR_RF | PHY_ANLPAR_T4 |
+       adv |= (PHY_ANLPAR_ACK |
                PHY_ANLPAR_TXFD | PHY_ANLPAR_TX | PHY_ANLPAR_10FD |
                PHY_ANLPAR_10);
        miiphy_write (devname, addr, PHY_ANAR, adv);




More information about the U-Boot mailing list