Skip to main content
This guide helps you bring up the CQ2390/IQ2390/CQ2390/IQ2390S MCU subsystem, run representative sample applications, validate core interfaces, and trace issues during integration. The structure is intentionally task-first so readers can hit a working path early and then move into reference detail.

1.1 Overview

The Low-Power Microcontroller Unit (LMCU) is a dedicated RISC-V subsystem designed to execute low-power, latency-sensitive, and always-on workloads independently of the main application processor. On the Shikra platform, the LMCU runs the Qualcomm Zephyr RTOS software stack and uses the WASP SDK as its primary firmware development environment. The LMCU software architecture combines:
  • Zephyr RTOS for scheduling, synchronization, memory management, device management, and standard kernel services.
  • WASP platform services for Qualcomm-specific hardware abstraction, system services, drivers, diagnostics, and subsystem integration.
  • Platform configuration through Kconfig and Device Tree definitions.
  • Application workloads implementing product-specific low-power processing.
  • Host integration for image loading, authentication, boot control, communication, and subsystem recovery.
The framework is intended to host multiple workloads while supporting memory isolation, workload prioritization, low-power execution, and extensibility.

1.2 Purpose of This Document

This document introduces the information required to develop, integrate, build, deploy, validate, and debug applications running on the Shikra LMCU. It helps developers to:
  • Understand the LMCU hardware and software architecture.
  • Set up and use the WASP SDK development environment.
  • Locate the relevant source repositories and configuration files.
  • Create and integrate LMCU applications and platform services.
  • Configure Zephyr options using Kconfig and customize hardware descriptions through Device Tree.
  • Understand image generation, boot sequencing, deployment, and subsystem startup.
  • Use timers, watchdogs, interrupts, IPC, logging, and memory services.
  • Debug boot-time and runtime failures using TRACE32 and diagnostic tools.
  • Collect and analyze crash information and RAM dumps.
  • Optimize firmware placement across TCM and DDR memory.