|
Sound Open Firmware
|
Payload array containing pipeline IDs for multi-pipeline state transitions. More...
#include <src/include/ipc4/pipeline.h>
Data Fields | |
| uint32_t | pipelines_count |
| Number of pipeline instance IDs in ppl_id[]. | |
| uint32_t | ppl_id [] |
| Array of pipeline instance identifiers. | |
Payload array containing pipeline IDs for multi-pipeline state transitions.
Host SW sends this message to set a pipeline to the specified state.
If there are multiple pipelines, from FW input to FW output, connected in a data processing stream, the driver should start them in reverse order, beginning with pipeline connected to the output gateway, in order to avoid overruns (FW protects the output gateway against underruns in this scenario).
If driver starts multiple pipelines using a single Set Pipeline State command, it should take care of the pipeline ID order in the command payload to follow the above rule.
sync_stop_start indicates whether all specified pipelines' gateways should be started with a minimal delay possible. If this flag is set to 0 while multiple pipelines are specified, the target pipelines' state is adjusted pipeline by pipeline meaning that internal propagation to all child modules may take more time between reaching state of attached gateways. Output and input gateways are grouped separately, and started/stopped separately.
NOTE: Task Creation/Registration is part of the first state transition. There is no other dedicated call for this.
| uint32_t ipc4_pipeline_set_state_data::pipelines_count |
Number of pipeline instance IDs in ppl_id[].
| uint32_t ipc4_pipeline_set_state_data::ppl_id[] |
Array of pipeline instance identifiers.