|
Sound Open Firmware
|
IPC4 Base Firmware parameters, memory configuration, and status definitions. More...

Go to the source code of this file.
Data Structures | |
| struct | ipc4_phys_mem_pages |
| Free physical memory page descriptor. More... | |
| struct | ipc4_notification_mask_info |
| Notification mask configuration structure (IPC4_NOTIFICATION_MASK). More... | |
| struct | ipc4_astate |
| A-State frequency and load threshold entry. More... | |
| struct | ipc4_astate_table |
| Power Manager A-State configuration table (IPC4_ASTATE_TABLE). More... | |
| struct | ipc4_dma_control |
| Direct DMA Gateway Control structure (IPC4_DMA_CONTROL). More... | |
| struct | ipc4_perf_data_item |
| Single component performance measurement data item. More... | |
| struct | ipc4_perf_data_item_mi |
| Module instance performance data with internal iteration metrics. More... | |
| struct | ipc4_global_perf_data |
| Global DSP performance report payload (IPC4_GLOBAL_PERF_DATA). More... | |
| struct | ipc4_scheduler_config |
| Scheduler tick and timer configuration (IPC4_SCHEDULER_CONFIGURATION). More... | |
| struct | ipc4_system_time |
| 64-bit system timestamp split into lower and upper 32-bit words. More... | |
| struct | ipc4_system_time_info |
| Host and DSP system time pairing for clock synchronization. More... | |
| struct | ipc4_ext_system_time |
| Extended host/DSP system time with RTC and ART timestamps. More... | |
| struct | ipc4_resource_kcps |
| KCPS resource allocation descriptor. More... | |
| struct | ipc4_resource_memory |
| Memory resource allocation descriptor. More... | |
| struct | ipc4_resource_request |
| Resource allocation request structure (IPC4_RESOURCE_ALLOCATION_REQUEST). More... | |
| struct | ipc4_sram_state_page_alloc |
| SRAM page allocation bitmask array. More... | |
| struct | ipc4_sram_state_info |
| Detailed SRAM state and power bank information (IPC4_MEMORY_STATE_INFO_GET). More... | |
| struct | ipc4_library_props |
| Properties of a dynamic or preloaded external library. More... | |
| struct | ipc4_libraries_info |
| Library information report payload (IPC4_LIBRARIES_INFO_GET). More... | |
| struct | ipc4_log_state_info |
| Logging configuration and state control (IPC4_ENABLE_LOGS). More... | |
| struct | task_props |
| Single task properties within scheduler information. More... | |
| struct | scheduler_props |
| Core scheduler properties and scheduled tasks. More... | |
| struct | schedulers_info |
| Complete scheduler topology report (IPC4_SCHEDULERS_INFO_GET). More... | |
| struct | perf_data_item |
| FW component performance measurement item. More... | |
| struct | ext_perf_data_item |
| Extended component performance metrics with DSP cycle counts. More... | |
| struct | extended_global_perf_data |
| Extended global performance data report (IPC4_EXTENDED_GLOBAL_PERF_DATA). More... | |
| struct | perf_data_item_comp |
| Component performance data with wall clock cycle metrics. More... | |
| struct | global_perf_data |
| Global DSP performance summary. More... | |
Macros | |
| #define | IPC4_MAX_CLK_STATES 0 |
| Clock states count. | |
| #define | IPC4_MAX_SRC_QUEUE 8 |
| Maximum source queue count supported by IPC4. | |
| #define | IPC4_MAX_DST_QUEUE 8 |
| Maximum destination queue count supported by IPC4. | |
| #define | IPC4_MAX_MODULE_INSTANCES 256 |
| Maximum module instance count for a single module supported by IPC4. | |
| #define | IPC4_MAX_LL_TASKS_PER_PRI_COUNT 16 |
| Maximum low-latency tasks for a schedule priority count supported by IPC4. | |
| #define | IPC4_MAX_DP_TASKS_COUNT 16 |
| Maximum data-processing tasks count supported by IPC4. | |
| #define | IPC4_MAX_LIBS_COUNT 16 |
| Maximum external libraries count supported by IPC4. | |
| #define | IPC4_MAX_PPL_COUNT 32 |
| Maximum pipeline count supported by IPC4. | |
| #define | IPC4_UNDERRUN_AT_GATEWAY_NOTIFICATION_MASK_IDX 0 |
| Notification bit index: gateway underrun notification. | |
| #define | IPC4_UNDERRUN_AT_MIXER_NOTIFICATION_MASK_IDX 1 |
| Notification bit index: mixer underrun notification. | |
| #define | IPC4_BUDGET_VIOLATION_NOTIFICATION_MASK_IDX 2 |
| Notification bit index: budget violation notification. | |
| #define | IPC4_OVERRUN_AT_GATEWAY_NOTIFICATION_MASK_IDX 3 |
| Notification bit index: gateway overrun notification. | |
| #define | IPC4_LPSRAM_STATE 0 |
| LP-SRAM state indicator index. | |
| #define | IPC4_HPSRAM_STATE 1 |
| HP-SRAM state indicator index. | |
Functions | |
| struct ipc4_system_time_info * | basefw_get_system_time_info (void) |
| Get current DSP system time information for host-DSP clock synchronization. | |
Variables | |
| static const uint32_t | I2S_VER_30_PTL = 0x40000 |
| I2S IPC4 interface version for Panther Lake (PTL) platforms. | |
IPC4 Base Firmware parameters, memory configuration, and status definitions.
NOTE: This ABI uses bit fields and is non portable.
| #define IPC4_BUDGET_VIOLATION_NOTIFICATION_MASK_IDX 2 |
Notification bit index: budget violation notification.
| #define IPC4_HPSRAM_STATE 1 |
HP-SRAM state indicator index.
| #define IPC4_LPSRAM_STATE 0 |
LP-SRAM state indicator index.
| #define IPC4_MAX_CLK_STATES 0 |
Clock states count.
SOF FW performs autonomous management of clock sources. Set MAX_CLK_STATES to 0 in order to propagate this information through IPC and thus prevent reception of unsupported clock configuration.
| #define IPC4_MAX_DP_TASKS_COUNT 16 |
Maximum data-processing tasks count supported by IPC4.
| #define IPC4_MAX_DST_QUEUE 8 |
Maximum destination queue count supported by IPC4.
| #define IPC4_MAX_LIBS_COUNT 16 |
Maximum external libraries count supported by IPC4.
| #define IPC4_MAX_LL_TASKS_PER_PRI_COUNT 16 |
Maximum low-latency tasks for a schedule priority count supported by IPC4.
| #define IPC4_MAX_MODULE_INSTANCES 256 |
Maximum module instance count for a single module supported by IPC4.
| #define IPC4_MAX_PPL_COUNT 32 |
Maximum pipeline count supported by IPC4.
| #define IPC4_MAX_SRC_QUEUE 8 |
Maximum source queue count supported by IPC4.
| #define IPC4_OVERRUN_AT_GATEWAY_NOTIFICATION_MASK_IDX 3 |
Notification bit index: gateway overrun notification.
| #define IPC4_UNDERRUN_AT_GATEWAY_NOTIFICATION_MASK_IDX 0 |
Notification bit index: gateway underrun notification.
| #define IPC4_UNDERRUN_AT_MIXER_NOTIFICATION_MASK_IDX 1 |
Notification bit index: mixer underrun notification.
|
static |
I2S IPC4 interface version for Panther Lake (PTL) platforms.