Skip to content

Libraries

This page lists all the APIs available to the user and where you can find more information about them. These APIs are either implemented in the device image or in the Hexagon SDK itself.

Application-side APIs

Header files

Below are the header files with APIs that access functionality present on the device.

APIs Summary
AEEStd Definitions of common data types and error codes returned by functions running on the application processor and DSPs
ION memory allocator Allocate ION memory to be shared between CPU and DSP
Remote APIs Query and manage DSP capabilities

Libraries

Below are the libraries that need to be pushed on device to be accessible.

APIs Summary
itrace library Monitor DSP and CPU events using APIs available from the CPU

DSP-side APIs

The Hexagon SDK includes a number of APIs referred as Hexagon Access Program (HAP) APIs, which provide access to Hexagon capabilities. These APIs in the table below.

Header files

Below are the header files with APIs that access functionality present on the device.

APIs Summary
AEEStd Definitions of common data types and error codes returned by functions running on the application processor and DSPs
Compute resource manager Allocate compute resources
DCVS manager Dynamic Clock Voltage Scaling manager APIs
DSP Packet Queue Queue-based asynchronous inter-processor communication API for communicating between CPU and DSP
ETM Configuration ETM Trace enable/disable APIs
FARF Logging APIs Generate diagnostic messages that can be collected on DSP using logcat or mini-dm
Heap and mapping manager Manage the user PD heap memory and control buffer mapping into this memory
L2 cache manager Lock & unlock L2 cache
Performance and power manager Manage performance and power modes of the DSP
Performance timers Measure processing time
PMU manager Track hardware events
Process manager Query and manage DSP process list
Synx APIs Generic synchronization framework across the SoC
sysMon marker APIs for marking specific code regions during which PMU profiling should collect data
VTCM manager Allocate VTCM

Libraries

Below are the libraries that need to be pushed on device to be accessible.

APIs Summary
DSP worker pool General purpose, efficient thread worker pool to assist in multithreading compute workloads. Available under $HEXAGON_SDK_ROOT/libs/worker_pool
itrace library Monitor DSP events (PMU counters and others) using APIs available from the DSP
Qualcomm Hexagon Libraries Set of libraries optimized for scalar Hexagon DSP
Qualcomm Hexagon Libraries for HVX Set of libraries optimized for HVX
Qualcomm printf Library printf library extension for HVX and assembly