12#ifndef __SOF_IPC4_HANDLER_H__
13#define __SOF_IPC4_HANDLER_H__
45 bool set, uint32_t *reply_ext);
98#if defined(__ZEPHYR__) && defined(CONFIG_SOF_FULL_ZEPHYR_APPLICATION)
122#include <zephyr/syscalls/handler.h>
128void z_impl_ipc_compound_pre_start(
int msg_id);
129#define ipc_compound_pre_start z_impl_ipc_compound_pre_start
137void z_impl_ipc_compound_post_start(uint32_t msg_id,
int ret,
bool delayed);
138#define ipc_compound_post_start z_impl_ipc_compound_post_start
144int z_impl_ipc_wait_for_compound_msg(
void);
145#define ipc_wait_for_compound_msg z_impl_ipc_wait_for_compound_msg
void ipc_compound_msg_done(uint32_t msg_id, int error)
Complete an IPC compound message transaction and signal waiting threads.
int ipc4_comp_connect(struct ipc *ipc, const struct ipc4_module_bind_unbind *bu)
Connect components together on a pipeline graph.
int ipc4_process_large_config_set(struct ipc4_message_request *ipc4)
Process MOD_LARGE_CONFIG_SET in any execution context.
int ipc4_user_process_glb_message(struct ipc4_message_request *ipc4, struct ipc_msg *reply)
Processes an IPC4 userspace global firmware message.
int ipc_wait_for_compound_msg(void)
Wait for active IPC compound message operations to complete.
void ipc_compound_pre_start(int msg_id)
Increment the IPC compound message pre-start barrier counter.
int ipc4_comp_disconnect(struct ipc *ipc, const struct ipc4_module_bind_unbind *bu)
Disconnect components in a pipeline graph.
int ipc4_user_process_module_message(struct ipc4_message_request *ipc4, struct ipc_msg *reply)
Processes an IPC4 userspace module message.
int ipc4_process_module_config(struct ipc4_message_request *ipc4, bool set, uint32_t *reply_ext)
Process MOD_CONFIG_GET or MOD_CONFIG_SET in any execution context.
int ipc4_user_module_load(const struct comp_driver *drv, const struct ipc4_module_init_instance *mi)
Load a dynamically loadable module instance into userspace memory.
void ipc_compound_post_start(uint32_t msg_id, int ret, bool delayed)
Decrement the IPC compound message pre-start barrier counter on return.
int ipc4_set_pipeline_state(struct ipc4_message_request *ipc4)
Process SET_PIPELINE_STATE IPC4 message (prepare + trigger phases).
Audio component base driver "class".
Definition component.h:528
Standard 64-bit IPC4 message request envelope.
Definition header.h:127
Module pin binding and unbinding command structure (SOF_IPC4_MOD_BIND / UNBIND).
Definition module.h:206
Module instance creation command structure (SOF_IPC4_MOD_INIT_INSTANCE).
Definition module.h:162