> ## 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.

# FAQ

Qualcomm<sup>®</sup> Linux kernel documentation covers a broad set of workflows. The following questions address the most common points of uncertainty for developers getting started or working through integration tasks.

## Build and workflow

### Which build workflow should I use, Yocto or standalone?

Use the Yocto workflow when you need a production-ready device image, want Yocto to manage the toolchain and sysroot, or are modifying kernel configuration fragments. Use the standalone workflow for rapid kernel iteration when you only need to rebuild and redeploy the kernel without rebuilding the full root file system.

For a side-by-side comparison, see [Get Started - Choose your workflow](./choose-your-workflow).

### How do I build only the kernel without rebuilding the full image?

Use the standalone workflow. It compiles the kernel independently of Yocto using a Docker-based cross-toolchain (`kmake-image`). The result is a UKI image that can be placed directly on the ESP partition. For setup and build steps, see [Build the kernel standalone](./build-kernel-standalone).

### What kernel version does Qualcomm Linux use?

Qualcomm Linux tracks a Long-Term Support (LTS) kernel. The current version is v6.18.x. For the full version and compatibility table, see [Supported versions and compatibility](./supported-versions-and-compatibility).

## Device tree and hardware

### How do I find the correct DTB for my board?

DTB names follow the `<SoC>-<board>-<variant>.dtb` pattern. The `KERNEL_DEVICETREE` variable in the machine configuration file (`meta-qcom/conf/machine/`) shows which DTBs are built by default. For per-SoC DTB lists and device tree layout details, see [Device tree architecture](./device-tree-architecture).

## Logging and debugging

### How do I increase or capture kernel log output?

Use `dmesg` for in-memory ring buffer access, or capture logs over the serial console. Log verbosity is controlled by the console log level. For serial console setup and log level configuration, see [Kernel logging](./kernel-logging).

### How do I connect a kernel debugger (KGDB)?

KGDB requires a serial connection between the target and the host running GDB. The kernel must be built with `CONFIG_KGDB` and `CONFIG_KGDB_SERIAL_CONSOLE` enabled. For the full setup procedure, see [Kernel debugger (KGDB)](./configure-kernel-debugger).

## Kernel modules and subsystems

### How do I add an out-of-tree kernel module?

Out-of-tree modules are built with the Yocto `module` class. A recipe inherits `module`, points to the driver source, and sets `KERNEL_MODULE_AUTOLOAD` to load the module on boot. For a complete recipe example, see [Out-of-tree kernel modules](./out-of-tree-kernel-modules).

### How do I switch to the Real-Time kernel?

The RT kernel is a separate build configuration that enables `PREEMPT_RT`. For build instructions, the switch procedure, and known limitations, see [RT kernel fundamentals](./rt-kernel-fundamentals).
