Create a Custom Board Layer - ArrowElectronics/arrow-soc-workshops GitHub Wiki
This section will describe the constituent parts required in order to boot a Custom board based on an Intel Cyclone V SoC FPGA. The reader will learn how to create a custom Yocto layer for this purpose. Any one of the development kits listed below can be utilized when creating the custom layer.
- Terasic DE10-nano
- Arrow DataStorm DAQ
- Arrow SoCKit (no longer in stock, but loaners are available - contact your Arrow FAE)
The workshop will provide the source files for the custom BSP and explain their purpose and implementation. It is recommended that the reader supplement this by reviewing sections of the Yocto Project Board Support Package (BSP) Developer's Guide.
- Requirements for Booting a custom SoC FPGA board
- Examine the meta-my-custom-soc-board layer directory structure
- Review custom MACHINE configuration
- Review FPGA configuration recipe
- Create u-boot for the custom board
- Review the Linux Kernel recipe
- Create Linux Root File System image configuration
ARM-based SoC processor systems require the following in order to boot to the Linux prompt
- FPGA Configuration Image file
- u-boot Bootloader
- Linux Devicetree
- Linux Kernel with loadable drivers
- Linux Root File System (rootfs)
The custom Yocto Layer will provide recipes to customize all five of these requirements.

Sub-directory | Description |
---|---|
conf | custom Machine definition |
recipes-bsp | BSP recipes for u-boot and FPGA configuration |
recipes-images | rootfs build recipes |
recipes-kernel | Linux Kernel recipes & Device tree |
wic | SD Card image partition definition |
Next - Review the custom MACHINE configuration
Return to - Customizing your Build for Specific Hardware
Return to - Building a Custom Linux BSP for SoC FPGA Systems Using the Yocto Project