Create a Custom Board Layer - ArrowElectronics/arrow-soc-workshops GitHub Wiki

Overview

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.

Table of Contents

  1. Requirements for Booting a custom SoC FPGA board
  2. Examine the meta-my-custom-soc-board layer directory structure
  3. Review custom MACHINE configuration
  4. Review FPGA configuration recipe
  5. Create u-boot for the custom board
  6. Review the Linux Kernel recipe
  7. Create Linux Root File System image configuration

Requirements for Booting a custom SoC FPGA board

ARM-based SoC processor systems require the following in order to boot to the Linux prompt

  1. FPGA Configuration Image file
  2. u-boot Bootloader
  3. Linux Devicetree
  4. Linux Kernel with loadable drivers
  5. Linux Root File System (rootfs)

The custom Yocto Layer will provide recipes to customize all five of these requirements.

Examine the meta-my-custom-soc-board layer directory structure

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

⚠️ **GitHub.com Fallback** ⚠️