Skip to main content

Introduction

This document provides instructions to sync, build, and flash images using the qsc-cli tool. It is intended for registered users who have access to Qualcomm’s proprietary resources. The qsc-cli tool streamlines the workflow by providing a unified interface that runs tasks in containerized environments, ensuring simplicity, consistency, and reproducibility. At a high level, you will learn the following:

Supported SoCs

The following SoCs are supported in this guide. If you do not see your SoC listed, the QSC CLI build process described here does not apply to your device. The following SoCs are supported by this document. If your chipset is not listed, the firmware build process described here does not apply to your device.
SoCDescriptionSupported
QCS6490Qualcomm Dragonwing™ RB3 Gen 2 Vision Kit
Qualcomm Dragonwing™ RB3 Gen 2 Core Kit
Qualcomm Dragonwing™ RB3 Gen 2 Industrial Kit
QCS5430Qualcomm Dragonwing™ RB3 Gen 2 Lite Vision Kit
Qualcomm Dragonwing™ RB3 Gen 2 Lite Core Kit
IQ9Qualcomm Dragonwing™ IQ-9075 Evaluation Kit
IQ8Qualcomm Dragonwing™ IQ-8275 Evaluation Kit
IQ6Qualcomm Dragonwing™ IQ-615 Evaluation Kit
IQ-X7181Qualcomm Dragonwing™ IQ-X7181 Evaluation Kit
IQ-X5121Qualcomm Dragonwing™ IQ-X5121 Evaluation Kit

Install QSC-CLI

qsc-cli is a command-line tool provided by Qualcomm that offers an end-to-end workflow for accessing, managing, and building Qualcomm software. Follow these steps to install qsc-cli on your system:
  • Register your Qualcomm email ID by visiting the Qualcomm Support Page.
  • Download the Debian package for qsc-cli:
    wget https://softwarecenter.qualcomm.com/api/download/software/tools/Qualcomm_Software_Center/Linux/Debian/latest.deb -O qsc_installer.deb
    
  • Install the qsc-cli Debian package:
    sudo apt update
    sudo apt install ./qsc_installer.deb
    
  • Sign in to qsc-cli using your registered email ID:
    qsc-cli login -u <username>
    

Configuration parameters

The following table lists the --product, --release, and --image parameter values for the chip-software download command. Each product maps to one or more firmware images that must be downloaded for a complete build.
—product—release—image
QCM6490.LE.2.0r00131.2ADSP.HT.5.5.c8
CDSP.HT.2.5.c3
AOP.HO.3.6
BOOT.MXF.1.0.c1
TZ.XF.5.29
QCS9100.LE.2.0r00131.2DSP.AT.1.0.1
AOP.HO.3.6.1
BOOT.MXF.1.0.c1
TZ.XF.5.29.1
QCS8300.LE.2.0r00131.3DSP.AT.1.0.1
AOP.HO.3.6.1
BOOT.MXF.1.0.c1
TZ.XF.5.29.1
QCS615.LE.2.0r00131.2BOOT.MXF.1.0.c1
AOP.HO.3.6.2
TZ.XF.5.29.1
ADSP.VT.5.2.c6
CDSP.VT.2.2.c4
Hamoa_IOT.LE.2.0r00014.1BOOT.MXF.2.4.2
AOP.HO.5.2
TZ.XF.5.0
ADSP.HT.5.9
CDSP.HT.2.9.c1
BOOT.MXF_UEFI.2.5
Purwa_IOT.LE.2.0r00014.1BOOT.MXF.2.4.2
AOP.HO.5.2
TZ.XF.5.0
ADSP.HT.5.9
CDSP.HT.2.9.c1
BOOT.MXF_UEFI.2.5
DistributionDescriptionUsage
Qualcomm_Linux.SPF.2.0|TEST|DEVICE|PUBLICHigh level OS and prebuilt firmware (No modem)Developers building for no modem with prebuilt firmware
Qualcomm_Linux.SPF.2.0|AP|Standard|OEM|NoModemHigh level OS and firmware in source without modemDevelopers building no modem firmware with HLOS
Qualcomm_Linux.SPF.2.0|AP|Standard|OEMHigh-level OS and firmware (GPS only) sourceDevelopers building firmware with GPS chipsets
Qualcomm_Linux.SPF.2.0|AMSS|Standard|OEMHigh-level OS and firmware (GPS and modem) sourceDevelopers building firmware with full modem

Download the software

Download a software release using the chip-software download command. Use the previous table to look up the --product, --release, and --distribution values for your SoC:
qsc-cli chip-software download --workspace-path '<absolute-workspace-path>' --product '<product-id>' --release '<release-id>'  --distribution '<distribution-name>'

Build the default configuration

Compile

When the download is complete, start the compilation process. Depending on the size of the software and the host computer configuration, the compilation process can take a few hours.
qsc-cli chip-software compile --workspace-path '<absolute-workspace-path>'
This process builds the necessary Qualcomm firmware and completes the Qualcomm Linux build.

Recompile

To recompile individual software images after any modifications to the software release, use your existing workspace built using QSC CLI:
qsc-cli chip-software compile --image '<image-name>' --workspace-path '<absolute-workspace-path>'

Build your own configuration

To build your own configuration, you must compile the build with the default machine configuration and then compile the software product with your own machine and distribution configuration files. When compiling a software image, ensure that you also compile the software product. For example, if you compile BOOT.MXF.1.0.c1, ensure that you also compile the software product (such as QCS9100.LE.2.0).
  • Compile the build for the default machine configuration.
  • Compile the software product with your own machine and distribution configuration files.
    qsc-cli chip-software open-build-env --workspace-path <absolute-workspace-path> --image <software-image-name>
    
    This command opens a terminal.
  • Update the highlighted command according to your own machine configuration and run it on the terminal. For example, to build IQ-9075-EVK, change the value of <machine.yml> to iq-9075-evk.yml. build-own-config
  • The build creates a single tarball containing all the relevant files to perform a full clean flash, including partition metadata, boot firmware, ESP partition and the rootfs. After a successful build, check if the qcomflash tarball exists in the build artifacts. The following examples use qcom-multimedia-proprietary-image as the image name.
    ls build/tmp/deploy/images/iq-9075-evk/qcom-multimedia-proprietary-image-iq-9075-evk.rootfs.qcomflash.tar.gz
    
An environment is set up to run your own build commands for a specific software image. QSC won’t track the status of input workspaces in future releases, and you cannot flash these workspaces with qsc-cli.