Flashing gateware and Linux image¶
This is the hard way! Special cables and FlashPros are not required when using the firmware we initially ship on the board. This tutorial should be rescripted as how to _unbrick_ your board. Also, we have other work-arounds using software and GPIOs rather than FlashPros. Let’s not put this in user’s face as the experience when it is far more painful than using the change-gateware.sh script and “hold BOOT button when applying power” solutions we’ve created!
In this tutorial we are going to learn to flash the gateware image
to FPGA and
sdcard.image to eMMC storage.
Additional hardware required:
Programming & Debug tools installation¶
To flash a gateware image to your BeagleV-Fire board you will require a FlashPro5/6 and FlashPro Express (FPExpress) tool which comes pre-installed as part of Libero SoC Design Suite. A standalone FlashPro Express tool is also available with MicroChip’s Programming and Debug Tools package, which we are going to use for this tutorial. Below are the steps to install the software:
Download the zip for your operating system from Programming and Debug Tools page.
Unzip the file and in the unzipped folder you will find
launch_installer.shscript to start the installation procedure.
[lorforlinux@fedora Program_Debug_v2023.1_lin] $ ./launch_installer.sh No additional packages to install for installer usage Requirement search complete. See /tmp/check_req_installer608695.log for information. Launch of installer Preparing to install Extracting the JRE from the installer archive... Unpacking the JRE...
It’s recommended to install under home/user/microchip for linux users.
Enabling non-root user to access FlashPro¶
Copy udev rule
sudo cp 60-openocd.rules /etc/udev/rules.d
Trigger udevadm using
sudo udevadm triggeror reboot the PC for the changes to take effect
Flashing gateware image¶
content below is valid for beta testers only.
FlashProExpress.zipfile and unzip, it contains the
*.jobfile which we need to create a new project in FPExpress.
Open up a terminal and go to
/home/user/microchip/Program_Debug_v202X.Y/Program_Debug_Tool/binwhich includes FPExpress tool.
./FPExpressin terminal to start FlashPro Express software.
Create new project¶
Make sure you have your FlashPro5/6 connected before you create a new project.
CTRL+N to create a file and you will see a pop-up window like shown below,
Follow the steps below as annotated in the image above:
Click on browse (1) button to select the job file.
Click on browse (2) button to select the project location.
Click ok button to finish.
If your FlashPro5/6 is connected properly you’ll see the window shown below:
Following the annotation in the image above:
From drop-down select
Shows the progress
If you see a lot of green color and progess bar says PASSED` then well done you have successfully flashed the gateware image on your BeagleV-Fire board.
Connect to BeagleV-Fire UART debug port using a 3.3v USB to UART bridge.
Now you can run
tio <port> in a terminal window to access
the UART debug port connection. Once you are connected properly you can
press the Reset button which will show you a progress bar like
Once you see that progress bar on your screem you can start pressing any
button (0-9/a-z) which whill stop the board from fully botting and you’ll be
able to access Hart Software Services (HSS) prompt. BeagleV-Fire’s eMMC content is
written by the Hart Software Services (HSS) using the
usbdmsc command. The
usbdmsc command exposes the eMMC as a USB mass storage device USB type C connector.
Once you see
>> you can execute the commands below:
After executing the commands above your BeagleV-Fire’s eMMC will be exposed as a mass storage device like shown in the image below:
Once your board is exposed as a mass storage device you can use
Balena Etcher to
sdcard.img on your BeagleV-Fire’s eMMC.
sdcard.imgfile from your local drive storage.
Click on select target.
MCC PolarFireSoC_msdas target.
Flash!to flash the
sdcard.imgon BeagleV-Fire eMMC storage.
Congratulations! with that done you have fully updated BeagleV-Fire board with up to date gateware image on it’s PolarFire SoC’s FPGA Fabric and linux image on it’s eMMC storage.