ESPRESSObin Marvell U-Boot version


Last Update: Sep 16, 2021 @ 10:04

The UBoot firmware is what the ESPRESSObin executes on power up, and if the SD card is present and contains a bootable image, starts Ubuntu.

There are situations where U-Boot may need some environment parameter adjustments to support additional hardware. The primary example is when the Ubuntu kernel has been updated to recognize mPCIe SSD cards.

Checking the installed version

Power up the board and press any key to stop the boot process, and present the Marvell>> prompt.

U-Boot 2015.01-armada-17.02.0-gc80c919 (Mar 04 2017 - 15:51:07)
aarch64-linux-gnu-gcc (Linaro GCC 5.2-2015.11-2) 5.2.1 20151005
GNU ld (GNU Binutils) 2.25.0 Linaro 2015_10
Marvell>>
The PCIe bus support can be checked.
Marvell>>pci init
 pci_bus_to_hose() failed
Marvell>>

This error message occurs in version 17.02. The last available pre-built version of UBoot is 17.10.

The binary for ESPRESSObin v4 DDR3 1GB and 2GB boards respectively are

espressobin-bootloader-cpu-1000-ddr3-2cs-1g-atf-ga3306ab-uboot-gaee49fc-20180129-REL.bin

espressobin-bootloader-cpu-1000-ddr3-2cs-2g-atf-ga3306ab-uboot-gaee49fc-20180129-REL.bin

If the PCIe device(s) are supported by U-Boot, the response will be something like

Marvell>> pci init
Scanning PCI devices on bus 0
BusDevFun VendorId DeviceId Device Class Sub-Class
--------------------------------------------------
00.00.00 0x1b4b 0x0100 Mass Storage Controller 0x04

Note that VendorId and DeviceId are OEM specific.

Both U-Boot 17.06 and 17.10 install successfully but the pci command returns No such bus. This is why Ubuntu does not recognize any PCIe devices. At present the cause is unknown.

More to be added.