Embedded SW Support

Embedded SW Support

There are many system software components needed in order to design and deploy a fully functioning system based on a Xilinx Adaptive SoC, Adaptive SoC or FPGA. This software is a combination of components developed and delivered by Xilinx as well as software that is open source and freely available and the support for such software will vary depending on the software in question. In general, Xilinx will support the latest 2 major versions (currently 2023.x and 2022.x) of the system software and tools that it delivers as part of PetaLinux and Xilinx SDK. Note that "support" means that we will assist in resolving issues via the forums or service requests (if eligible) but does not guarantee any patches or backporting of patches which are handled on a case-by-case basis. For the publicly available open-source software, support should first be obtained via the forum or mailing list identified below in the self-support column. Assisted support via service request is provided on an exception basis as outlined in the table below. All other content on the Wiki is provided "as is" and support is available via the Embedded Forums.

Software
aaaaaaaaaaaaaaaaaaaaaa
Overview
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Source
aaaaaaaaaaaaaaaaaaaaaaaaa
Documentation
aaaaaaaaaaaaaaaaaaaaaaaa
Self-SupportTopics Supported via Service Request
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Not Supported via Service Request

SDK


  • SDK GUI
  • ToolChain
  • TCF/XSDB
  • XSCT/ HSI / TCF / XSDB
  • Performance Analysis
  • Bootgen and the flash writer tool
  • Xilinx provided libraries
  • Standalone drivers
  • Board Support Packages
The Xilinx SDK is a collection of tools used for doing Embedded SW Development, Debug, Performance Optimization, and Deployment. It includes facilities for generating project specific BSPs, libraries, and example code. Additionally, XSDB is the debug tool incorporated in the Xilinx Software Command LIne Tool (XSCT) and in the XSDK GUI.Embedded SW on GithubEmbedded Development Tools Forum
  • Most recent 2 major releases
  • Optimizations/customizations

FSBL

First Stage Boot Loader. Configure PS & PL resources, Load Boot loader images from non volatile memories such as NAND, SD, eMMC and QSPI to volatile memory such as DDR, TCM and OCM. Hand off to Second stage bootloader. Support Image Encryption and Decryption. Embedded SW on GithubEmbedded Linux Forum
  • Most recent 2 major releases
  • Optimizations/customizations

PMU FW

The Platform Management Unit (PMU) is critical to the proper operation of a Zynq US+ MPSoC-based solution. Xilinx provides source which builds binaries tested for such proper system operation.
Though customers are enabled with sources and tools to rebuild PMU firmware, customers should carefully consider modification of any software due to potential impact on proper system operations.
For those customers who choose to modify PMU Firmware, Xilinx provides support only to enable customers to build and debug such code. Due to the deeply embedded nature of this code, Xilinx is unable provide support which ensures customers of proper system operation subsequent to modification.
Only rarely, and with consideration does Xilinx expect customers to modify PMU-firmware. For those customers who do choose to modify the code, support by Xilinx will be limited to use of Xilinx tools to modify and rebuild the sources, and to those functions which are included in Xilinx releases.
Embedded SW on GithubEmbedded Linux Forum
  • Most recent 2 major releases
  • Optimizations/customizations

Power Management

This Power Management Framework handles several use cases scenarios. For example, Linux provides basic power management capabilities such as idle, hotplug, suspend, resume, and wakeup. The kernel relies on the underlining APIs to execute power management decisions, but most RTOS's do not have this capability. Therefore they rely on user implementation, which is made easier with use of the Power Management Framework and the XilPM library.Embedded SW on GithubEmbedded Linux Forum
  • Xilinx provided SW for supported use cases
  • Optimizations/customizations

ATF

Properly developed and tested ARM Trusted Firmware is fundamental to recommended/supported operation of the APU. The binaries, built with source code provided by Xilinx, are supported and tested for Xilinx-enabled use cases and features including CSU access, AMP and power management support.
Only rarely, and with consideration does Xilinx expect customers to modify ATF. For those customers who do choose to modify the code, support by Xilinx will be limited to use of Xilinx tools to modify and rebuild the sources, and to those functions which are included in Xilinx releases.
ATF on GithubEmbedded Linux Forum
  • Xilinx provided ATF
  • Optimizations/customizations

U-Boot, Drivers and Flash Parts

Xilinx U-Boot is an open source project based on http://git.denx.de, that is used as a second stage boot loader in order to boot Linux OS on Xilinx HW Platforms including Microblaze, Zynq-7000 and Zynq Ultrascale+ devices. Along with boot loader functionality it offers some essential device drivers like UART, GPIO, I2C etc. for Xilinx HW platforms. It also lists the latest Flash devices tested, and up streams Xilinx patches.U-Boot on GithubU-Boot Wiki


Flash Parts:
Embedded Linux Forum
  • Xilinx provided U-boot, features enabled in default configuration
  • Features not enabled in default configuration
  • Optimizations/customizations
  • U-Boot SPL

Linux Kernel and Drivers

Xilinx Linux is an open source project based on the kernel.org Linux kernel, which provides the latest kernel and all the essential device drivers and kernel frameworks needed by Xilinx hardware platforms. As part of the project Xilinx patches are also up-streamed as necessary.Linux on Github

Linux Drivers Documentation

Embedded Linux Forum
  • Xilinx drivers
  • Kernel optimizations and customizations
  • Open Source bugs in kernel including back-porting of patches
  • 3rd Party Drivers
  • Kernel version mismatch with release version
  • RT Linux, SE Linux
  • Non-Xilinx specific Linux features (contact appropriate Linux mailing list)

PetaLinux Tools & PetaLinux BSPs

PetaLinux is a Xilinx Linux development tool and contains everything necessary to create, configure, build, test, package and deploy Embedded Linux systems on a Xilinx Hardware and QEMU Emulation Platform. It provides board support packages for Xilinx and third-party boards with prebuilt images. It uses the Yocto build system under the hood.PetaLinux Product PageEmbedded Linux Forum
  • Most recent 2 major releases
  • Kernel optimizations/Customizations
  • Yocto features not tested/utilized by Xilinx
  • Creation of custom recipes
  • Custom build scripts for PetaLinux
  • Open Source User Space Applications
  • 32-bit Applications and Root File System (Multilib)
  • Yocto Build system (Example: Buildroot, OpenWRT etc.)

Yocto

Xilinx uses Yocto eSDK build system within our PetaLinux product which is the exclusive extent to which we test Yocto. Xilinx does provide Yocto recipes for all key components but we do not test these outside of the PetaLinux tools context. It is incumbent on our customers to address any issues between their own in-house Yocto build system and the Yocto recipes provided by Xilinx. meta-xilinx on Github
meta-petalinux on Github
meta-openembedded on Github
meta-linaro on Github
meta-virtualization on Github
meta-openamp on Github
meta-xilinx-tools on Github
meta-qt5 on Github
For reporting bugs/patchs, please use the appropriate mailing list:

For anything else, post to:

Embedded Linux Forum
  • Suspected bugs in Xilinx meta layers (meta-xilinx, meta-petalinux, meta-xilinx-tools, meta-openamp)
  • Changes in the Yocto flow
  • Modifications made to meta-xilinx, meta-petalinux, meta-xilinx-tools, meta-openamp
  • Meta-xilinx, meta-petalinux, meta-xilinx-tools, meta-openamp layer versions not in sync with appropriate Linux Kernel, U-Boot and ATF tags
  • Devtool Utility in Yocto

FreeRTOS

Xilinx XSDK includes a tested port of FreeRTOS for Xilinx silicon. This includes critical drivers needed to ensure basic multi-threaded support of FreeRTOS on Xilinx products. Xilinx bare-metal drivers can be used within a single-threaded context on FreeRTOS. It is beyond scope of Xilinx to provide support to customers who wish to use the bare-metal drivers in a multi-threaded application context.Embedded SW on GithubFreeRTOS Forum
  • XSDK Reference designs
  • Xilinx BSPs
  • Optimizations/Customizations
  • Driver modifications for multi-threaded application support

Xen

Xilinx provides essential components for a Xen hypervisor based solution consisting of Linux and bare-metal guests. Xen Project
Xen on Github
Embedded Linux Forum
  • Petalinux reference designs
  • Optimizations/Customizations
  • Topics unrelated to Linux or Xilinx bare-metal guests

OpenAMP

Xilinx provides documentation and code for usage of OpenAMP and libMetal within example designs. Customers should consult the source code and documentation for extension to alternate solutions.OpenAMP on Github
meta-openamp on Github
libmetal on Github
Xilinx specific issues:

General Issues:
  • Xilinx documented use cases and reference designs
  • General OpenAMP Issues

QEMU

Xilinx’s QEMU is an open source functionally accurate, virtual emulation platform. It enables customers to develop their embedded software exactly as they would on the actual hardware. Instead of having to carry around cables and boards you can develop your software entirely on your laptop. Xilinx’s QEMU is free of charge. It is delivered as part of Xilinx’s Petalinux, SDK and Yocto’s meta-xilinx layer. Xilinx provides QEMU virtual emulation platforms for Zynq 7000, Zynq Ultrascale+ MPSoC and Microblaze™QEMU on GithubEmbedded Linux Forum
  • Xilinx QEMU
  • Optimizations/customizations

Third party OS

Whilst Xilinx works with its 3rd party software ecosystem partners to provide software and solutions for Xilinx products, those partners are responsible to provide all direct support, technical and business engagement.Various Vendors
  • No Support via SRs
  • Debian, Android, etc

Embedded Ubuntu

Xilinx has partnered with Canonical to provide certified Ubuntu images for Xilinx Silicon. As it is a partner provided image, support is limited from Xilinx and the partner/community is responsible to provide all direct support, technical and business engagement.Install Ubuntu on Xilinx | Ubuntu 
  • Kria SOM Application provided by Xilinx on Certified Ubuntu Images
  • Kernel Customization
  • Optimizations
  • Kernel build
  • Custom image certification
  • Custom applications developed on Canonical Ubuntu

Lightweight TCP/IP (lwIP)

Xilinx provides an open source TCP/IP networking stack for embedded systems called Lightweight IP (lwIP). lwIP is a small, community-developed light-weight TCP/IP stack that can be used in bare-metal applications where networking is required. Xilinx support is limited to use of the community sources on Xilinx devices. Correction of lwIP bugs or other issues within the lwIP code base are presumed by Xilinx to take place within the developer community.Embedded SW on GithublwIP Mailing Lists
  • XSDK Reference designs
  • Xilinx BSPs
  • Optimizations/customizations

Mali-400 Libraries

Mali support is enabled/supported by Xilinx only for Linux. This support is provided via a GPL-licensed Linux kernel module as well as a Xilinx-built and provided user-space application binary. Xilinx is unable to routinely provide sources corresponding to the user-space application. Support is limited to use of the Xilinx-provided software in form of PetaLinux tools, or separately available Yocto recipes for Mali support.Mali-400 SW download
  • Xilinx provided binaries
  • Optimizations/customizations

Application Notes and Example Designs

Xilinx Application Notes are provided as-is and only the specific conditions and scenarios described in the application note are supported.


  • Exact conditions specified in application note
  • Porting application notes to different versions
  • Modifications to the design in any way

Third Party Application Software

Whilst Xilinx works with its 3rd party software ecosystem partners to provide software and solutions for Xilinx products, those partners are responsible to provide all direct support, technical and business engagement.

Examples: 

  • MCAL (Microcontroller Abstraction Layer) drivers & applications based on AUTOSAR or equivalent stacks

  • Vendor specific forums or dedicated vendor support contact.
  • No Support via SRs
  • No Support via SRs

© Copyright 2019 - 2022 Xilinx Inc. Privacy Policy