Workflow
Yocto Project
icon
Search documents
Hardware Handoff ​ Using Software Hardware Exchange Loop (SHEL) Flow
AMD· 2025-11-11 20:17
Overview of AMD Embedded Development Framework - AMD Embedded Development Framework (EDF) explores the Software Hardware Exchange Loop (SHEL) flow [1] - The tutorial demonstrates generating an XSA from AMD Vivado design suite, building a system device tree, and creating a custom Linux image using the Yocto Project [1] SHEL and Hardware-Software Integration - SHEL streamlines hardware–software integration across AMD Vivado, Vitis tools, and open-source tools [1] - SHEL enables efficient handoff and deployment on AMD Versal™ VEK385 platforms [1] Resources and Contact - More information is available at https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/embedded-software/embedded-development-framework.html [1] - Subscribe to AMD at https://bit.ly/Subscribe_to_AMD [1] - Join the AMD Red Team Discord Server: https://discord.gg/amd-gaming [1]
Hardware Handoff ​ Using Software Hardware Exchange Loop (SHEL) Flow
AMD· 2025-11-03 17:01
SHEL Flow Overview - AMD's Software Hardware Exchange Loop (SHEL) flow facilitates hardware and software configuration data exchange among open-source and proprietary tools [2][3] - SHEL decouples hardware and software, ensuring synchronization across components like hardware, firmware, software, and operating systems [4] - SHEL translates AMD proprietary XSA into open-source hardware descriptions, allowing integration into existing processes [5] - SHEL enables industry standards like Yocto Project, Xen, OpenAMP, and Zephyr [6] Technical Implementation - The process starts with an XSA file from an AMD Vivado project, extracting the system device tree using SDTGen [6] - SDTGen translates proprietary output from AMD Vivado Design Suite into a stable, open-source format [7] - Gen-machine-conf processes device tree data into Linux build and configuration information within a Yocto Project environment [8] - A custom Linux OS is created based on the system device tree, using a prebuilt template BSP YAML file for VEK385 [21] - Bitbake recipes are run inside the Yocto Project to generate final products, including a boot bin and EDF Linux SD card image [28] Customization and Integration - Users can integrate AMD tools into their existing processes by using open-source hardware descriptions [5] - Customizations can be made to the OS by modifying the local conf file [25] - The gen-machine-conf command with a template parameter of the edited YAML file generates custom Linux build and configuration information [24]
Yocto Project™ Basics
AMD· 2025-11-03 17:01
Overview of Yocto Project - Yocto Project is an open-source initiative providing templates, tools, and methods for building custom Linux-based systems for embedded products [1] - It supports major hardware architectures like x86, Arm, and RISC-V, offering flexibility for various embedded platforms [7] - The project is not an embedded Linux distribution but helps create one tailored to specific requirements [2] Key Components and Features - The core is the OpenEmbedded build system, including OpenEmbedded-Core and BitBake, the build engine [3] - Poky serves as a reference embedded Linux configuration for testing [3] - It features an extensive testing infrastructure and integrated tools for security analysis, license compliance, and SBoM support [4] - Yocto Project enables developers to create tailored Linux distributions customized to meet specific system requirements [6] Industry Adoption and Support - Yocto Project is widely adopted in medical, automotive, and industrial sectors, providing reliable solutions for embedded systems [7] - Major tech companies actively contribute to its development, ensuring continuous innovation and long-term improvements [7] - AMD is a Platinum Partner, contributing to the development and maintenance of tools for creating custom Linux distributions for embedded and IoT devices [9] Customization and Flexibility - The build system includes recipes and layers that can be modified to create a custom embedded Linux system [5] - Yocto Project offers full control over the build, providing flexibility, scalability, and long-term maintainability [14] - It allows developers to build highly optimized Linux distributions tailored to specific hardware and requirements [14] Build Process and Workflow - BitBake automates the process of creating a working Linux OS by configuring local user information, software, layers, and distribution [17][18][19] - The workflow involves configuring key areas, applying patches, and performing sanity checks to generate a bootable Linux system [18][19][20] - The build process also creates an application developer SDK, including a cross-architecture compiler and analytical tools [21]