ZHDA251 July 2026 AFE7900 , AFE7901 , AFE7903 , AFE7906 , AFE7950 , AFE7950-SP , AFE7951 , AFE7953 , AFE7954 , AFE7955 , AFE7958
第 1 步:下载板卡专用层
每个硬件平台都需要对应的 BSP 层,为该板卡提供机器配置、内核和引导加载程序配方。BSP 层通常由板卡或 SoC 供应商提供,并需单独克隆。请查阅板卡供应商的文档,确定与所选 Yocto 版本兼容的正确 BSP 层和分支。
对于基于 Xilinx 的平台,相关层包括 meta-xilinx、meta-xilinx-bsp、meta-xilinx-standalone 和 meta-xilinx-tools,均可从 Xilinx GitHub 存储库获取。对于其他平台,如 Raspberry Pi、NXP 或 Intel,应使用供应商提供的等效 BSP 层。我们可以使用 git clone 获取这些层,示例如下:
Xilinx
git clone -b langdale https://github.com/Xilinx/meta-xilinx.gitgit clone -b langdale https://github.com/Xilinx/meta-xilinx-tools.gitIntel - Altera
git clone https://git.yoctoproject.org/meta-intel-fpga此外,许多 BSP 层依赖 OpenEmbedded 层集合 (meta-openembedded) 中的软件包。同样克隆该集合的对应分支:
git clone -b langdale https://github.com/openembedded/meta-openembedded.git第 2 步:添加层
使用 bitbake-layers 命令将所有必需的层添加到构建中。所需的确切层集取决于目标板卡。至少必须包含核心 Poky 层、板卡 BSP 层和 AFE79 层。仅上一步克隆的层才可使用以下命令添加:
bitbake-layers add-layer <Path_to_layer>例如,在 ZCU102 上需要以下层:
bitbake-layers add-layer ~/yocto-zcu102/meta-xilinx/meta-xilinx-core bitbake-layers add-layer ~/yocto-zcu102/meta-xilinx/meta-xilinx-bsp bitbake-layers add-layer ~/yocto-zcu102/meta-xilinx/meta-xilinx-standalone bitbake-layers add-layer ~/yocto-zcu102/meta-xilinx-tools bitbake-layers add-layer ~/yocto-zcu102/meta-openembedded/meta-oe bitbake-layers add-layer ~/yocto-zcu102/meta-openembedded/meta-python bitbake-layers add-layer ~/yocto-zcu102/meta-openembedded/meta-networking bitbake-layers add-layer ~/yocto-zcu102/meta-openembedded/meta-multimedia使用以下命令确认所有必需的层处于活动状态。
bitbake-layers show-layers第 3 步:添加硬件描述文件和目标机器
许多 Yocto BSP 工作流需要一个硬件描述文件,用于捕获目标平台的完整硬件设计。Yocto 通过 local.conf 格式使用硬件描述文件,自动为特定硬件设计生成正确的 FSBL、PMU 固件和器件树。
conf/local.conf 接受硬件描述文件路径和机器变量,以正确提供构建配置。
打开构建目录中的文件 <project_directory/build_directory>/conf/local.conf,将 MACHINE 变量设置为与目标板卡对应的标识符。该标识符在板卡 BSP 层中定义。例如,ZCU102 板使用标识符 zcu102-zynqmp。
.
请参考板卡 BSP 文档获取正确的机器名称。
Xilinx 使用 .XSA 文件,Intel 使用 SOPC 信息文件。
对于 Xilinx:
将 XSA 文件放在主机系统上的已知位置。建议位置是在自定义层内:
meta-afe79/recipes-bsp/hdf/files/
然后在构建目录的 <project_directory/build_directory>/conf/local.conf 文件中添加以下行,将路径和文件名替换为您的 XSA 文件路径及机器变量:
MACHINE ??= "zcu102-zynqmp"
HDF_BASE = "file://"
FILESEXTRAPATHS:prepend:pn-external-hdf := "/absolute/path/to/meta-afe79/recipes-bsp/hdf/files:"
XILINX_RELEASE_VERSION = "v2023.2"
PREFERRED_VERSION_external-hdf = "2023.2"
LICENSE_FLAGS_ACCEPTED += "xilinx"XILINX_RELEASE_VERSION 必须与生成 XSA 文件的 Vivado 版本匹配。Vivado 2023.2 生成的 XSA 需要 XILINX_RELEASE_VERSION =“v2023.2”。使用不匹配的版本会导致 XSCT 工具处理硬件描述时失败。
根据特定 BSP 层的要求配置硬件交接路径。请参考 BSP 层 README 文件获取正确的变量名和路径格式,因为这些信息在不同供应商平台代际之间会有所不同。