Skip to main content
Prerequisites and procedure for building RTSS firmware.

Prerequisites

Note
  • Compile the RTSS source code on an Ubuntu 22.04 host computer.
  • The build environment is initialized as described in the BSP image build with firmware.
  1. Download the RTSS firmware by running the git clone command:
    For example:
    The git clone command clones the content into the <FIRMWARE_ROOT>/qualcomm-linux-spf-2-0_ap_standard_oem_sail.git directory. For the latest <firmware release tag>, see Release tags.
  2. Download the FreeRTOS kernel.
    1. Clone the FreeRTOS kernel using the git clone command:
    2. Go to the FreeRTOS kernel directory:
    3. Copy the croutine.c, cspell.config.yaml, event_groups.c, include manifest.yml, queue.c, stream_buffer.c, tasks.c, timers.c, and list.c files to <top_directory>/sail_proc/FreeRTOS/kernel/:
  3. Download the Arm® GNU Toolchain compiler:
    NoteInstall the Arm GNU Toolchain compiler on x86 64-bit host computer only.
    1. Download the arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi toolchain variant from Arm GNU Toolchain Downloads:
    2. Extract the downloaded arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi.tar.xz file:
    3. Go to the sail_proc directory:
    4. Create the toolchain folder under the sail_proc directory:
    5. Copy the extracted arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi folder into the sail_proc/toolchain directory.
    6. Export the SECTOOLS variable from the top-level directory of <FIRMWARE_ROOT>/: For IQ-9075:
      For IQ-8275:

Procedure

  1. Enter bash:
  2. Go to the main directory of RTSS:
  3. Set up the build environment on the device:
    Note
    1. Before running the command, ensure that the toolchain and RTOS code/binaries are copied to the build to avoid compilation issues.
  4. Build the image:
    For IQ-9075:
    For IQ-8275:
    After successful execution of the RTSS build, sailhyp.elf and sailsw1.elf are generated at: For IQ-9075:
    qualcomm-linux-spf-2-0_ap_standard_oem_sail/SAIL.SI.1.2/sail_proc/build/ms/bin/SAIL_RTOS/DEBUG/lemans/signed For IQ-8275: qualcomm-linux-spf-2-0_ap_standard_oem_sail/SAIL.SI.1.2/sail_proc/build/ms/bin/SAIL_RTOS/DEBUG/monaco/signed
  5. Copy the generated RTSS files into the <workspace_path>/build-<DISTRO>/tmp-glibc/deploy/images/<MACHINE>/<IMAGE>/sail_nor folder to program on the NOR flash. Example: <workspace_path>/build-qcom-wayland/tmp-glibc/deploy/images/qcs9075-iq-9075-evk/qcom-multimedia-image/sail_nor Parameters:
    • <DISTRO>: qcom-wayland
    • <MACHINE>: qcs9075-iq-9075-evk
    • <IMAGE>: qcom-multimedia-image
    NoteFor information about <MACHINE>, see the Software Release Notes.
  6. (Optional) To refresh the build, clean the build:
    For IQ-9075:
    For IQ-8275:
    After running the make clean TARGET=<target name> command, perform the following steps to rebuild the image using the make TARGET=<target name> command:
    1. Go to the main directory of RTSS:
    2. Set up the build environment on the device:
    3. Rebuild the image:
      For IQ-9075:
      For IQ-8275:
  7. For instructions about flashing RTSS, see Flash SAIL.

Next steps