Page 2
SiFive does not assume any liability arising out of the application or use of any product or cir- cuit, and specifically disclaims any and all liability, including without limitation indirect, incidental, special, exemplary, or consequential damages.
Contents List of Tables ........................3 List of Figures ........................ 4 Introduction ......................5 HiFive Premier P550 Software Images and Partitions .......6 ....................... 6 Software Images ......................6 Partition Table ......................... 8 Boot Flow .................... 8 Shutdown of the System Freedom U SDK Overview ................
HiFive Premier P550 Software Images and Partitions This chapter describes the required HiFive Premier P550 software images, the partition table, and the boot flow. 2.1 Software Images The HiFive Premier P550 images comprise the following: • Bootchain image: bootloader_ddr5_secboot.bin. ◦ This image comprises the DDR firmware, the second stage loader, OpenSBI, and U- Boot proper.
Page 9
HiFive Premier P550 Software Reference Manual HiFive Premier P550 Software Images and Partitions Table 1: SPI Flash Layout (16MB) Partition Name Size/Type Description bootchain 13.5 MiB/ (start The image file written into the bootchain is named bootloader_ddr5_secboot.bin from 0) nsign...
2.3 Boot Flow HiFive Premier P550 supports booting from SPI flash. For this mode, the Boot Select DIP switch has to be set to "0010" as shown in the figure below. Figure 1: Boot DIP Switch Settings for Boot...
Page 11
HiFive Premier P550 Software Reference Manual HiFive Premier P550 Software Images and Partitions The commands below should be used to start the Linux shutdown process. After the user has been notified that this process has finished, the board main power will be turned off.
OpenEmbedded and BitBake is beyond the scope of this document; many resources are available on the Internet. It is important to note that building Freedom U SDK for the HiFive Premier P550 is resource intensive. Consider the following requirements to build Freedom U SDK:...
Page 13
This build target will construct images suitable for writing to eMMC, which can be used to boot the HiFive Premier P550 board. A utility called esburntool can be used to write the images to eMMC. The graphical build image (also known as the xfce4 image) is about 8.1GBytes uncom- pressed.
The Freedom-U-SDK build includes both GCC and Clang (LLVM) toolchains. 3.2 Identification of FUSDK version From the prompt of a HiFive Premier P550 system, you can determine which build you have by executing the following command to view the release info for that build:...
Page 16
The meta-sifive layer contains recipes for bootloaders, patch files, unique configurations for the HiFive Premier P550 board, kernel, and setup script for the build environment. The meta-open- embedded contains many extra components for GUI, networking, file system, and additional meta layers.
For example, if the OpenSBI SHA used in the compilation is not compatible with the out-of-tree patches being maintained for OpenSBI in meta-sifive, the user will face compile-time or runtime problems. The compatibility is defined in the periodic Yocto releases on https://github.com/sifive/ freedom-u-sdk/tree/rel/fusdk/hifive-premier-p550 that will bring together validated and compatible versions of the software components.
Release, Source, and Build Details 4.3 Linux Kernel Source and the Kernel Boot Image The Linux Kernel source is available at: https://github.com/sifive/riscv-linux The HiFive Premier P550 board is supported on the branch: rel/kernel/hifive-premier-p550 4.3.1 Building the Linux Kernel and boot.vfat with Yocto Users using the Yocto build system can use the following steps to compile the kernel and create the boot.vfat image after cloning FUSDK.
• Get the nsign source and compile nsign. • Execute nsign to generate the bootchain. DDR Firmware DDR firmware is released as a binary image ddr_fw.bin on https://github.com/sifive/hifive- premier-p550-tools/ Second Boot Loader The second boot loader is released as a binary image second_boot_fw.bin on https://github.com/sifive/hifive-premier-p550-tools/...
Page 22
The HiFive Premier P550 board is supported on the branch: rel/meta-sifive/hifive-premier- p550 Within the meta-sifive, the out-of-tree patches for U-Boot and OpenSBI are available at: • U-Boot: recipes-bsp/u-boot/files • OpenSBI: opensbi/opensbi-sifive-hf-prem These patches will be needed in the next steps.
HiFive Premier P550 Connectivity Figure 2 below shows typical and optional connectivity of a HiFive Premier P550 system. The supported connectivity options allow the user to monitor and control the system. Often, there are multiple connectivity options used simultaneously with the HiFive Premier P550, with each option having advantages and disadvantages.
HiFive Premier P550 Software Reference Manual HiFive Premier P550 Connectivity Figure 2: HiFive Premier P550 Connectivity 5.1 Serial Console and Debugger Pod The HiFive Premier P550 Type-C USB connector exposes four serial ports. Table 4: Serial Port Port Description ttyUSB0...
A Linux host machine is convenient because it can be used to build the FUSDK, use OpenOCD with the EIC7700, function as a serial console for the HiFive Premier P550, transfer files to/from the HiFive Premier P550, and also develop applications for the HiFive Premier P550 platform.
This networking device may have provided the HiFive Premier P550 with an IP address. The IP address can be determined from the board using a query of the Linux running on the HiFive Premier P550 using the ip addr command.
This is especially critical if you enable network access to the board. The ssh daemon is enabled by default. SSH can be enabled through the serial console or the GUI interface. Enabling or disabling SSH connections to the HiFive Premier P550 board is controlled by line 34 /etc/ssh/sshd_config PermitRootLogin .
Need help?
Do you have a question about the HiFive Premier P550 and is the answer not in the manual?
Questions and answers