> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# System Software Architecture

Qualcomm® Linux® is a Qualcomm-provided, upstream-aligned Linux software stack optimized for Qualcomm system-on-chips (SoCs). It is not a standalone Linux distribution. Instead, it provides a unified, modular Linux platform that simplifies building, deploying, and maintaining secure, production-ready Linux solutions across multiple Qualcomm SoCs.

Qualcomm Linux provides the following capabilities:

* A single Linux platform that supports multiple Qualcomm SoCs.
* Integrated AI, multimedia, and connectivity enablement.
* Alignment with upstream Linux kernels, combined with commercial stability.
* Standards-based boot, security, and device management.
* A virtualization-ready architecture.
* Standards-based, open interfaces that support scalability and long-term maintainability.
* Platform-level power and performance optimization that uses upstream Linux mechanisms with Qualcomm enhancements.
* Overlay-based extensibility that adds Qualcomm software without rebuilding the operating system.

Together, these capabilities deliver an upstream-aligned Linux software stack with optional Qualcomm enhancements. This approach helps you scale solutions across products and generations while reducing software re-engineering effort.

**Software stack overview**

Qualcomm Linux currently supports the following SoC platforms:

* [QCS5430](https://www.qualcomm.com/internet-of-things/products/q5-series/qcs5430)
* [QCS6490](https://www.qualcomm.com/internet-of-things/products/q6-series/qcs6490)
* [IQ-8275](https://www.qualcomm.com/products/internet-of-things/industrial/industrial-automation/iq8-series/iq-8275)
* [IQ-9075](https://www.qualcomm.com/products/internet-of-things/industrial/industrial-automation/iq9-series/iq-9075)
* [IQ-615](https://www.qualcomm.com/products/internet-of-things/industrial-processors/iq6-series/iq-615)

The software stack uses upstream components across the stack and can also include installable downstream Qualcomm proprietary software packages.

The stack includes:

* A Unified Extensible Firmware Interface (UEFI) bootloader.
* A Linux long-term support (LTS) kernel with a small number of patches that are being upstreamed.
* Upstream-aligned user-space stacks.
* Installable software packages (overlays) for custom features.

<Frame caption="System software architecture">
  <img src="https://mintcdn.com/qualcomm-prod/Im5W2pUR5LdqxAI6/Key-Documents/System-Software-Architecture/media/linux-system-software-architecture.svg?fit=max&auto=format&n=Im5W2pUR5LdqxAI6&q=85&s=84eaf215ff64bf179e498766732ed7d0" width="1567" height="836" data-path="Key-Documents/System-Software-Architecture/media/linux-system-software-architecture.svg" />
</Frame>

**Qualcomm Linux overlays**

Qualcomm Linux overlays are value-added packages that you can apply cleanly on top of the upstream software. Overlays consist of source code or prebuilt binaries for technology components such as audio, camera, graphics, and video.

An [overlay](https://dragonwingdocs.qualcomm.com/Key-Documents/Migration-Guide/) is an add-on that layers Qualcomm technology — driver, user space, and in some cases a device tree overlay — on top of an upstream-aligned stack without modifying it. This approach lets you switch between upstream and downstream (Qualcomm) implementations on a per-technology basis.

Overlays let you choose between upstream and overlay stacks for experimentation and feature analysis, and to select the combination of overlays that best suits your product requirements.

Overlays may include:

* User-space components (user mode driver (UMD), libraries, and tools).
* Kernel components delivered as dynamically loadable kernel modules (DLKMs).
* For some technology areas (notably camera), an associated device-tree overlay (DTBO).

For more information about overlay configurations and overlay packages, see the overlay documentation.

<Note>
  The descriptions in the following sections are for informational purposes only. For a complete list of enabled software features and any known issues, see the Release Notes.
</Note>

## Display

The Qualcomm® Adreno™ Display Processing Unit (DPU) is a hardware-accelerated image processing engine that retrieves pixel data from memory and transmits it to display peripherals through standard display interfaces.

The display subsystem in Qualcomm Linux is built on the DRM/KMS framework. Wayland serves as the display server protocol, and compositors such as Weston manage composition and rendering.

For detailed architecture, hardware components, and software stack, see the [display guide](https://dragonwingdocs.qualcomm.com/Technologies/Display/display-overview).

## Audio

The Qualcomm Linux Infrastructure (QLI) audio stack is built to provide a flexible and scalable foundation for audio functionality across different platforms. ASOC forms the core framework for managing audio hardware integration and enables the system to connect standard audio services with platform-specific components in a structured way. Audio Overlay is used to apply board- or platform-specific customizations on top of the base audio configuration, allowing the same software foundation to support multiple device variants with minimal changes. In the QLI ecosystem, this approach helps keep the audio design modular, maintainable, and easier to adapt across products. AudioReach complements this model by providing a framework for advanced audio processing and routing, helping deliver a more configurable and reusable audio solution. Together, ASOC, Audio Overlay, and AudioReach provide a unified and adaptable audio architecture for Qualcomm Linux-based platforms.

For more information, see the [audio guide](https://dragonwingdocs.qualcomm.com/Technologies/Audio/audio-guide/audio-overview).

## Video

The video subsystem uses upstream Video4Linux2 (V4L2) interfaces. Applications can use V4L2 APIs to play back or record video.

For more information, see the [video guide](https://dragonwingdocs.qualcomm.com/Technologies/Video/video-documentation).

## Camera

The camera subsystem supports raw frame capture through a Video4Linux2 image signal processor (V4L2 ISP) driver. It supports camera sensors using the V4L2 sub-device interface. Applications can use V4L2-based camera applications such as `yavta` and `libcamera`.

For more information, see the [camera guide](https://dragonwingdocs.qualcomm.com/Technologies/Camera/camera-documentation).

## Graphics

The graphics subsystem uses an upstream-first architecture with the flexibility to layer proprietary capabilities as needed. It supports both the upstream DRM/Mesa graphics framework and Qualcomm's optimized Adreno and Kernel Graphics Support Layer (KGSL) stack through a modular overlay model.

Standard developer APIs include:

* OpenGL ES
* Vulkan
* OpenCL

For more information, see the [graphics guide](https://dragonwingdocs.qualcomm.com/Technologies/Graphics/graphics-documentation).

## AI/ML

Qualcomm AI/ML software enables efficient deployment of pre-trained deep learning models on Qualcomm hardware accelerators, including the NPU, GPU, and CPU. It provides a comprehensive development environment with SDKs, APIs, sample applications, development tools, and support for third-party frameworks such as GStreamer and TensorFlow Lite (TFLite) to streamline AI application development.

For multimedia AI use cases, applications use Qualcomm Intelligent Multimedia (IM) SDK GStreamer plugin APIs, which integrate with Qualcomm AI Runtime SDK APIs to enable low-level hardware acceleration for AI workloads.

For more information, see:

* [LiteRT framework](https://ai.google.dev/edge/litert)
* [Qualcomm AI Runtime (QAIRT)](https://dragonwingdocs.qualcomm.com/Key-Documents/AI-Developer-Workflow/topic/qairt)

## Qualcomm Sensing Hub (QSH)

The [Qualcomm Sensing Hub (QSH)](https://dragonwingdocs.qualcomm.com/Technologies/Sensors/sensors-guide/topic/qcs6490/landing_page) supports hardware and software sensors such as the accelerometer, gyroscope, and pedometer. It provides a unified, event-driven framework for drivers and algorithms, and supports the same APIs for both hardware-based and software-based sensors.

## Wi-Fi

Qualcomm Linux provides Wi-Fi functionality, features, and configurable parameters for application development. Wi-Fi is enabled through the `ath11k` driver and the chipset-specific firmware.

Supported features include:

* 2.4 GHz, 5 GHz, and 6 GHz Wi-Fi bands.
* Peak physical layer (PHY) data rate of 2.9 Gbps with 1K quadrature amplitude modulation (QAM).
* Station (STA) mode and Access Point (AP) mode.

## Bluetooth

The Bluetooth® wireless technology subsystem includes the BlueZ stack and sample test applications for different use cases.

Supported software and chipsets provide two modes of operation:

* Basic Rate/Enhanced Data Rate (BR/EDR)
* Bluetooth Low Energy (BLE)

For more information, see the [bluetooth guide](https://dragonwingdocs.qualcomm.com/Technologies/Bluetooth/bluetooth-overview).

## Security

The security subsystem includes the Qualcomm Trusted Execution Environment (TEE), which provides security services such as image loading, authentication, cache management, cryptography, logging, and Qualcomm fuse-programmable read-only memory (QFPROM) support for TrustZone (TZ) secure applications.

TZ forms the core of product security on Qualcomm platforms. It facilitates a secure execution environment for most product security features and is built on Arm core TZ technology, which uses the Arm core secure execution mode.

Security components include:

* Qualcomm TEE and trusted applications.
* Secure boot and QFPROM.
* Secure storage.
* Secure device debugging.
* Debug security.

For more information, see the [security guide](https://dragonwingdocs.qualcomm.com/System/Security/overview).

## Boot

The boot subsystem supports the `systemd-boot` UEFI boot manager. When the system resets, the bootloader in the application processor executes in secure ROM. It initializes the clocks, CPU caches, and memory management unit (MMU), and then detects the boot device based on the boot option configuration. Boot options vary by SoC and may include UFS, eMMC, and SPI, among others.

The remaining system and subsystem images are then loaded and authenticated in ROM, IMEM, and DDR based on the cold boot flow.

For more information, see the [boot guide](https://dragonwingdocs.qualcomm.com/System/Boot/platform-information).

## Hypervisor

Kernel-based Virtual Machine (KVM) is the primary hypervisor for Linux-based virtualization on Qualcomm Linux platforms. KVM uses Arm hardware virtualization extensions to provide CPU and memory isolation while operating within the Linux kernel. This approach enables near-native performance for virtual machines (VMs).

On supported Qualcomm Linux platforms, KVM serves as the main virtualization layer and integrates with the Linux ecosystem. It supports standard virtualization through Quick Emulator (QEMU) and libvirt.

KVM supports a range of virtualization capabilities across compute, input/output (I/O), and subsystem management, including:

* Multiple concurrent VMs, including mixed real-time (RT) and non-real-time workloads.
* Hardware-assisted CPU and memory virtualization.
* Peripheral Component Interconnect Express (PCIe) virtualization with Single Root I/O Virtualization (SR-IOV).
* Real-time optimizations through RT-enabled kernel configurations to meet latency-sensitive workload requirements.
* Peripheral Image Loader (PIL)-based subsystem management on most platforms. For platform-level support availability, see the Release Notes.
* Standard VirtIO devices using the QEMU/KVM architecture, based on SoC capabilities and platform integration (for example, VirtIO console, block, GPU, and network devices).

To enable KVM and virtualization features, see:

* Distribution Configuration
* [Enabling Virtualization](https://dragonwingdocs.qualcomm.com/System/Kernel/enable-virtualization)

## Kernel

Qualcomm Linux provides a long-term support (LTS) Linux kernel and platform drivers for Qualcomm platforms, including support for multimedia, connectivity, security, and peripherals.

The kernel closely tracks the upstream Linux kernel to maintain compatibility and to provide access to the latest features and security updates. Qualcomm builds, tests, and maintains the kernel with a focus on functionality, stability, and hardware-specific optimizations. This approach delivers robust support for IoT and compute use cases, and provides a reliable, efficient kernel optimized for Qualcomm hardware.

## Real-Time Subsystem (RTSS)

The Real-Time Subsystem (RTSS) uses a *system-on-chip-within-a-system-on-chip* architecture to deliver real-time performance through an independent, integrated design that supports computing, networking, and safety use cases. RTSS supports boot, reset, dump collection, low-power operation, and real-time application development for IoT products.

RTSS operates as a separate subsystem and supports the Free Real-Time Operating System (FreeRTOS). FreeRTOS is enabled on the IQ-8275 and IQ-9075 platforms for customers with access privileges.

For more information, see the [Real-Time Subsystem documentation](https://docs.qualcomm.com/doc/80-80022-42/topic/rtss-guide.html).

## OTA updates

Qualcomm Linux 1.0 uses OSTree as the default mechanism for Linux upgrades. OSTree provides a version-controlled, immutable file system that supports atomic upgrades and rollbacks.

Firmware updates are delivered through UEFI capsule updates, which provide a secure, standardized method for updating low-level binaries.

Qualcomm Linux 2.0 supports the same update mechanisms as Qualcomm Linux 1.0: OSTree for Linux updates and UEFI capsule updates for firmware. This continuity enables a smooth migration path and supports scalable over-the-air (OTA) update management for future Qualcomm Linux releases.

<Tip>
  When you upgrade from Qualcomm Linux 1.0 to 2.0, include both the OSTree repository and the firmware capsule in the OTA upgrade.
</Tip>

For more information, see the OTA updates guide.

## Qualcomm Intelligent Multimedia SDK (IM SDK)

The Qualcomm® Intelligent Multimedia SDK (QIM SDK) is a comprehensive, hardware-accelerated multimedia and AI framework built on GStreamer. It is designed for developers, solution integrators, and OEMs who build intelligent vision, audio, and AI applications across IoT segments, including smart cameras, robotics, home appliances, drones, and AI inference appliances.

With QIM SDK, you can rapidly compose and deploy single- or multi-stream AI and multimedia pipelines on Qualcomm platforms. Pipelines have access to the full processing capacity of the SoC — including neural processing accelerators, video encode/decode, camera ISP, GPU, display, and audio DSP — without requiring deep knowledge of the underlying hardware or platform-specific libraries.

The plugin-based architecture of the SDK abstracts hardware complexity entirely. Applications run seamlessly across Qualcomm chipset tiers and generations, which accelerates time-to-market across industries such as smart retail, industrial automation, security surveillance, and connected devices.

For more information, see the [IMSDK guide](https://dragonwingdocs.qualcomm.com/SDKs/IMSDK/index).

## Sample applications

Qualcomm Linux provides sample applications for multimedia and AI use cases, including retail, Qualcomm® Edge AI Box Solutions, and IP cameras.

Two main groups of sample applications are available:

* **Multimedia sample applications** demonstrate camera, video, and audio features.
* **AI sample applications** showcase AI and machine learning (ML) capabilities.

For more information, see the [Sample application guide](https://dragonwingdocs.qualcomm.com/SDKs/IMSDK/sample-application/ai-sample-applications).
