[U-Boot] Possible Denx m28evk ethernet problem + solution

Fabio Estevam festevam at gmail.com
Sat Jan 7 23:04:05 CET 2012


On Fri, Jan 6, 2012 at 3:54 PM, Robert Deliën <robert at delien.nl> wrote:
> Hi Marek,
>
> I'm currently working on U-Boot support for the Freescale i.mx28evk board. It started out as
> an update of the old Freescale supplied U-Boot 2009.08, but it ended up in reconfiguring
> your work on the Denx m28evk module. Today I stumbled upon a problem with Ethernet.
>
> It turned out that communication with the PHYs didn't work, because the SoC isn't supplying
> ENET_CLK. The Ethernet clock is configured properly by cpu_eth_init in
> ./arch/arm/cpu/arm926ejs/mx28/mx28.c. But later in the boot process, board_eth_init in
> board/denx/m28evk/m28evk.c tries to configure the Ethernet clock again. Unfortunately that
> second configuration is just disabling the clock:
>        clrsetbits_le32(&clkctrl_regs->hw_clkctrl_enet,
>                CLKCTRL_ENET_TIME_SEL_MASK | CLKCTRL_ENET_CLK_OUT_EN,
>                CLKCTRL_ENET_TIME_SEL_RMII_CLK);
> After removing this line, I measured a 25MHz clock, communication with the PHYs worked
> and I successfully tftp'ed a kernel from my server.
>
> Does Ethernet on your board work? Does you board have an external clock oscillator for
> the PHYs? If not, do you agree with removing this line?

Please use Stefano's imx git tree, which has support for mx28evk already.

m28evk and mx28evk differ in the way they driver their Ethernet PHYs.

Let me know if you have any issues.

Regards,

Fabio Estevam


More information about the U-Boot mailing list