BBB EEPROM details

I am fairly new at this, so my apologies if this is a trivial question. We have a copy of beaglebone black on our board. Changes are 1G DDR3 instead of BBB 512MB and 16GB of eMMC.

First issue was our EEPROM was blank so it would not boot. Learned there is some pinmuxing that takes place from the information in the EEPROM that was necesary.

Replacing the blank EEPROM with a BBB EEPROM allows us to boot off the SD card with following two issues (so far):

  1. NAND: There is no NAND device found
  2. libphy: PHY 4a101000.mdio:01 not found
    net eth0: phy 4a101000.mdio:01 not found on slave 1

When I power up the BBB that we “borrowed” the EEPROM from which has a blank EEPROM now, I get exactly the same two issues to show up.

So the question is what do we need to program into the EEPROM of our board to get it to properly boot?
And what is the best way to accomplish this? Does EEPROM have to be programmed before soldering to the board? or is it possible to halt u-boot and run some commands from there?

Thank you for your assistance
-Erwin

I am fairly new at this, so my apologies if this is a trivial question. We
have a copy of beaglebone black on our board. Changes are 1G DDR3 instead of
BBB 512MB and 16GB of eMMC.

First issue was our EEPROM was blank so it would not boot. Learned there is
some pinmuxing that takes place from the information in the EEPROM that was
necesary.

Replacing the blank EEPROM with a BBB EEPROM allows us to boot off the SD
card with following two issues (so far):
1) NAND: There is no NAND device found

Did you actually install NAND to the board?

eMMC is not NAND (as it has physcall NAND controller and interfaces to
the device over the mmc interface)

2) libphy: PHY 4a101000.mdio:01 not found
    net eth0: phy 4a101000.mdio:01 not found on slave 1

What about mdio:00? There is two phy's on the am335x.

When I power up the BBB that we "borrowed" the EEPROM from which has a blank
EEPROM now, I get exactly the same two issues to show up.

So the question is what do we need to program into the EEPROM of our board
to get it to properly boot?
And what is the best way to accomplish this? Does EEPROM have to be
programmed before soldering to the board? or is it possible to halt u-boot
and run some commands from there?

The production images are done with a blank eeprom, using this flasher script:

http://rcn-ee.net/rootfs/bb.org/testing/2015-01-19/lxde-4gb/BBB-blank-eMMC-flasher-debian-7.8-lxde-4gb-armhf-2015-01-19-4gb.img.xz

Then by grounding test point 4.

That image includes a build of u-boot with this patch:

to bypass eeprom check (and assume it's a bbb)

Regards,

Apologize, no, we do not have NAND. we have eMMC on board, I was just referring to the info copied from the boot log

Regarding mdio:00 I see no messages on boot log to this regard. Is there a command I can query to check it?

Regarding the flasher script - THANKS A MILLION! I have now booted from eMMC on board to debian. Much appreciated. I am not sure when I am supposed to ground the WP, during flashing or after flashing? can you calrify?

Also, is similar image for Angstrom available?

Thanks,
Erwin

Apologize, no, we do not have NAND. we have eMMC on board, I was just
referring to the info copied from the boot log

Regarding mdio:00 I see no messages on boot log to this regard. Is there a
command I can query to check it?

debian@beaglebone:~$ dmesg | grep mdio:00
[ 1.119700] davinci_mdio 4a101000.mdio: phy[0]: device
4a101000.mdio:00, driver SMSC LAN8710/LAN8720
[ 29.275310] libphy: 4a101000.mdio:00 - Link is Up - 100/Full
[ 37.357496] libphy: 4a101000.mdio:00 - Link is Up - 100/Full

debian@beaglebone:~$ dmesg | grep mdio:01
[ 26.198636] libphy: PHY 4a101000.mdio:01 not found
[ 26.203680] net eth0: phy 4a101000.mdio:01 not found on slave 1
[ 33.984396] libphy: PHY 4a101000.mdio:01 not found
[ 33.989465] net eth0: phy 4a101000.mdio:01 not found on slave 1
[ 35.349652] libphy: PHY 4a101000.mdio:01 not found
[ 35.354716] net eth0: phy 4a101000.mdio:01 not found on slave 1

Regarding the flasher script - THANKS A MILLION! I have now booted from eMMC
on board to debian. Much appreciated. I am not sure when I am supposed to
ground the WP, during flashing or after flashing? can you calrify?

GND the pin before power up, it just holds the eeprom in a writeable
state.. On one of my test boards, i just ran a wire from the gnd on
the socket to it.

Also, is similar image for Angstrom available?

I don't believe so..

With the u-boot patch, you should be able to piece one together.

My eeprom flash routine is here:

The mid script reboot is a little tricky, as the eMMC doesn't load
unless you have a proper eeprom in v3.8.x. :wink:

Regards,

Thanks for the info. You have been much help.

I checked mdio:00 and 01. 00 is there and has same SMSC info, 01 is not used so I assume this is normal message and can safely ignore.

Correct, mdio:01 is safe to ignore unless you physically installed a second phy.

Regards,