May 5, 2024

Zynq bootrom - Ebaz 4205 boot jumpers

The boot jumpers are not brought out in any handy way on the Ebaz. You have to do tricky surface mount soldering to change them. The above article lays out the details for the Ebaz (thanks!).

Here is where things are that you need to screw with:

BOOT_MODE[2] / MIO[4]: R2578 (1, default) and R2585 (0)
BOOT_MODE[1] / MIO[3]: R2579 (1) and R2586 (0, default)
BOOT_MODE[0] / MIO[5]: R2577 (1) and R2584 (0, default)
TxD / MIO48: R2447
RxD / MIO49: R2448
Here are nice big images (from the above article) showing where these resistors are:

A brief note here. I always get mixed up with this crazy business of the boot-mode and MIO numbering being crazy. And I end up wasting all kinds of time and accomplishing nothing. So stay alert -- pay close attention. What I will try to do here is to adopt a standard of always talking about things in boot mode and in order 2,1,0. The MIO pins will have to take care of themselves.

You generally find the board with the boot mode set to 1 0 0 (NAND boot) as shown above.

You may also (someday) want to set 1 0 1 (5), which is SD card boot, but never mind that for now.

To enable the "secret" UART boot mode you want 0 1 1 (3)

You have to move tiny 20K resistors from one place to another.
Be careful with them. I managed it with my sorta fine tipped soldering iron, but have more recently acquired a hot air rework station that should make things like this easier and less risky. Unless of course the hot air gun blows one of those resistors off into oblivion -- then I will order a strip of 100 of them and try again.

To get to the UART boot mode, you will need to move all three resistors from the NAND boot setting, as follows:

MIO4 (bm2) move R2578 -> R2585  0
MIO3 (bm1) move R2586 -> R2579  1
MIO5 (bm0) move R2584 -> R2577  1
There is more to it than this though. The secret uart boot uses the second uart (uart1) on pins MIO-48 and MIO-49. The EBAZ uses the first uart (uart0) on pins MIO-24 and MIO-25. So to see the secret uart boot, we will need to solder connections to those pins, which is pretty tricky to do.
TxD / MIO48: R2447
RxD / MIO49: R2448
See the photos above. Once you make those connections, power the unit up and check if you see:
XLNX-ZYNQ
This is a lot of work, and only worth it if you are deeply curious and don't have other hardware. If you have an Antminer S9 (or a Zedboard), this is all trivial. No soldering is required, you can set boot modes with jumpers, the uart is already connected up to MIO-48 and MIO-49 and you are good to go for the trouble of moving some jumpers around. Antminer S9 are cheap these days, save yourself some trouble and just get one and keep the Ebaz for other things.
Feedback? Questions? Drop me a line!

Tom's Computer Info / tom@mmto.org