|
|
|
|
|
|
|
# Table of Contents
|
|
|
|
|
|
|
|
1. [About the Board](#orgd72d6fe)
|
|
|
|
2. [Creating a Bootable Yocto Linux Image](#org320b6b1)
|
|
|
|
1. [Create a workspace (OPTIONAL)](#org3ac88ae)
|
|
|
|
2. [Update the repo workspace](#orgf613432)
|
|
|
|
3. [Set up the Bitbake environment](#org5551fb8)
|
|
|
|
4. [Building Board Disk Image](#orge48b62d)
|
|
|
|
1. [Building a Linux Image with a root file system (RootFS)](#org260c449)
|
|
|
|
2. [Building a RAM-based Root Filestystem](#org920972e)
|
|
|
|
3. [Building a Linux Image for an external QSPI flash memory](#org31f047f)
|
|
|
|
4. [Flashing an SD Card](#org0ce15e7)
|
|
|
|
3. [References](#org47ba498)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<a id="orgd72d6fe"></a>
|
|
|
|
|
|
|
|
# About the Board
|
|
|
|
|
|
|
|
![img](./doc/img/PolarFire-Board.png)
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org320b6b1"></a>
|
|
|
|
|
|
|
|
# Creating a Bootable Yocto Linux Image
|
|
|
|
|
|
|
|
We have two options: Create a new workspace, or we can use this repo as a workspace because this repo is my working workspace.
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org3ac88ae"></a>
|
|
|
|
|
|
|
|
## Create a workspace (OPTIONAL)
|
|
|
|
|
|
|
|
mkdir yocto-dev && cd yocto-dev
|
|
|
|
repo init -u https://github.com/polarfire-soc/polarfire-soc-yocto-manifests.git -b main -m default.xml
|
|
|
|
|
|
|
|
|
|
|
|
<a id="orgf613432"></a>
|
|
|
|
|
|
|
|
## Update the repo workspace
|
|
|
|
|
|
|
|
repo sync
|
|
|
|
repo rebase
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org5551fb8"></a>
|
|
|
|
|
|
|
|
## Set up the Bitbake environment
|
|
|
|
|
|
|
|
. ./meta-polarfire-soc-yocto-bsp/polarfire-soc_yocto_setup.sh
|
|
|
|
|
|
|
|
|
|
|
|
<a id="orge48b62d"></a>
|
|
|
|
|
|
|
|
## Building Board Disk Image
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org260c449"></a>
|
|
|
|
|
|
|
|
### Building a Linux Image with a root file system (RootFS)
|
|
|
|
|
|
|
|
MACHINE=icicle-kit-es bitbake mpfs-dev-cli
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org920972e"></a>
|
|
|
|
|
|
|
|
### Building a RAM-based Root Filestystem
|
|
|
|
|
|
|
|
MACHINE=icicle-kit-es bitbake -R conf/initramfs.conf mpfs-initramfs-image
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org31f047f"></a>
|
|
|
|
|
|
|
|
### Building a Linux Image for an external QSPI flash memory
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org0ce15e7"></a>
|
|
|
|
|
|
|
|
### Flashing an SD Card
|
|
|
|
|
|
|
|
zcat build/tmp-glibc/deploy/images/icicle-kit-es/mpfs-dev-cli-icicle-kit-es.wic.gz | sudo dd of=/dev/sdX bs=4096 iflag=fullblock oflag=direct conv=fsync status=progress
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org47ba498"></a>
|
|
|
|
|
|
|
|
# References
|
|
|
|
|
|
|
|
1. [PolarFire SoC Yocto](https://github.com/polarfire-soc/meta-polarfire-soc-yocto-bsp)
|
|
|
|
|
|
|
|
**\*\***
|
|
|
|
|