Hi,
I’m using an Olimex SAM9_L9260 board here, which currently uses an U-Boot 1.2 delivered by Olimex. Sadly this U-Boot version always marks it’s enviroment area as bad block on each write (probably it is patched by Olimex to work with an old Atmel Sam-Ba version, that has the same error and is a different story).
So I’ve decided to compile a new U-Boot.
My Toolchain is Codesourcery 2010q1 on a 32 bit Slackware Linux and I’ve used U-Boot 2010.03 sources. The board runs a 2.6.24-rt kernel with patch for Olimex support.
As the Olimex board is heavily based on the Atmel AT91SAM9260EK board I’ve decided to build U-Boot for this one. I only had to tweak the machine type so that Linux can be started.
On Linux bootup I’ve noticed that the board is not able to get an IP via DHCP with the new bootloader. On my research for the problem I’ve found out that U-Boot won’t detect any PHY.
Google search returned that I have to modify
board/atmel/at91sam9260ek/at91sam9260ek.c for the PHY on the Olimex board:
from
rc = macb_eth_initialize(0, (void *)AT91SAM9260_BASE_EMAC, 0x00);
to
rc = macb_eth_initialize(0, (void *)AT91SAM9260_BASE_EMAC, 0x01);
After that U-Boot detects a “macb” but still no DHCP answer in Linux. I’ve tried the old 1.2 bootloader again and DHCP works fine.
So my questions for now are:
-
Does U-Boot have to detect the PHY and initialize it or is it just needed for network bootup?
-
After endless compile sessions (I never compiled u-boot before) I’m completely out of any idea what I can try now to get network in Linux working. Any suggestions?
It would be really great to receive some help because this board has already driven me mad because of the Atmel Sam-Ba flas tool bugs I’ve mentioned before.
Thanks in advance.