This page is meant for application developers and expert users who wish to develop applications over Mellanox BlueField™ SW.
The sample directory contains sample Linux and initramfs content which can be used to validate that the user’s hardware can boot up to the shell prompt. Typically the user would use their distribution’s kernel and userspace filesystem contents instead (e.g. Yocto, RedHat, or Ubuntu).
The build-images script takes the sample kernel file (“Image”) and the sample “initramfs” file and unpacks them into partition images and disk images which are typical of what might be burned into the eMMC device used to boot up. We create a disk image that is partitioned to have an initial boot filesystem and an additional root filesystem. The boot filesystem holds the image file and the initramfs; the root filesystem holds an unpacked version of the
initramfs.
The build-bfb script then allows the user to utilize these images to create several different BlueField boot stream files which can boot the BlueField system via USB or PCI from a host system, or can be copied to BlueField's eMMC boot partition.
You can use the script to create boot stream files with the following properties:
build-bfb -i rshim
Provide the entire boot environment (ATF, UEFI, kernel, initramfs) in a single boot stream file.
build-bfb mmc0
build-bfb nvme0
Load the kernel from the boot partition, then boot using the root partition. The initramfs file on the boot partition is not used. The two variants are examples of how to configure the partition names for different devices.
build-bfb -i mmc0
build-bfb -i nvme0
Load the kernel and the initramfs from both the boot partition, and boot the kernel using the initramfs. The root partition is not used.
build-bfb --no-gpt --root /dev/nvme0n1p1 mmc0
Load the kernel from the the eMMC (configured as just a large boot partition without GPT), then boot using an NVMe root partition. The “initramfs” file is not used.
Last updated: