Hi all, I still have problems with the ethernet on my custom MCF54452 board.
Here is my current configuration: /* this is defined for M54455EVB in m68k/immap.h *sigh* */ #define CONFIG_SYS_FEC1_IOBASE (MMAP_FEC1) #define CONFIG_NET_MULTI 1 #define CONFIG_MII 1 #define CONFIG_MII_INIT 1 #define CONFIG_SYS_DISCOVER_PHY #define CONFIG_SYS_RX_ETH_BUFFER 8 #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN #define CONFIG_SYS_FEC0_PINMUX 0 #define CONFIG_SYS_FEC1_PINMUX 0 #define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE #define CONFIG_SYS_FEC1_MIIBASE CONFIG_SYS_FEC1_IOBASE #define MCFFEC_TOUT_LOOP 50000 #define CONFIG_HAS_ETH1 I modified fecpin_setclear() in cpu_init.c to set par_fec to GPIO_PAR_FEC_FEC[01]_MII, still have to make a proper configuration for this. Now U-Boot recognizes both FEC0 and FEC1, but I can only access FEC0 with the mii commands. Switching to FEC1 is accepted, but all commands work on FEC0 (I can easily check this by manually switching the status LEDs via the PHY registers). FEC0 is working - though with frequent "TX timeout" messages, I did not yet figure out how to explicitly switch to FEC1. When a command like dhcp times out and eth_init tries to switch to the other interface (FEC1) with eth_current->init(), U-Boot locks up. I still have to look further into this what exactly fails. Furthermore, it seems strange to me that I have to set CONFIG_FEC_SHARED_PHY=y in the linux configuration to get both PHYs recognized, but I definitely have both PHYs wired to separate pins in the hardware. What I am unsure about: - how am I supposed to set CONFIG_SYS_FEC1_MIIBASE? I think I have to set it to CONFIG_SYS_FEC1_IOBASE because I have seperate PHYs connected to seperate physical interfaces, is this correct? - is there maybe any relation to the (from my view inverted) setting of CONFIG_SHARED_PHY in the linux kernel? Best regards, Wolfgang _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot