Sound Open Firmware
Loading...
Searching...
No Matches
lib_manager.h File Reference
Include dependency graph for lib_manager.h:

Go to the source code of this file.

Macros

#define LIB_MANAGER_MAX_LIBS   16
 
#define LIB_MANAGER_LIB_ID_SHIFT   12
 
#define LIB_MANAGER_LIB_NOTIX_MAX_COUNT   4
 
#define LIB_MANAGER_GET_LIB_ID(module_id)   (((module_id) & 0xF000) >> LIB_MANAGER_LIB_ID_SHIFT)
 
#define LIB_MANAGER_GET_MODULE_INDEX(module_id)   ((module_id) & 0xFFF)
 
#define LIB_MANAGER_PACK_MODULE_ID(lib_index, module_index)
 
#define LIB_MANAGER_PACK_LIB_ID(lib_index)   LIB_MANAGER_PACK_MODULE_ID(lib_index, 0x0)
 

Functions

void lib_manager_init (void)
 
int lib_manager_register_module (const uint32_t component_id)
 
const struct sof_man_fw_desc * lib_manager_get_library_manifest (int module_id)
 
void lib_manager_get_instance_bss_address (uint32_t instance_id, const struct sof_man_module *mod, void **va_addr, size_t *size)
 
int lib_manager_load_library (uint32_t dma_id, uint32_t lib_id, uint32_t type)
 
int lib_manager_mod_create_priv (const struct comp_driver *drv, const struct comp_ipc_config *config, const void *spec, void **adapter_priv, struct userspace_context **userspace, const struct module_interface **ops)
 
int lib_manager_free_module (const uint32_t component_id)
 
struct ipc_msg * lib_notif_msg_init (uint32_t header, uint32_t size)
 
void lib_notif_msg_send (struct ipc_msg *msg)
 
void lib_notif_msg_clean (bool leave_one_handle)
 

Macro Definition Documentation

◆ LIB_MANAGER_GET_LIB_ID

#define LIB_MANAGER_GET_LIB_ID (   module_id)    (((module_id) & 0xF000) >> LIB_MANAGER_LIB_ID_SHIFT)

◆ LIB_MANAGER_GET_MODULE_INDEX

#define LIB_MANAGER_GET_MODULE_INDEX (   module_id)    ((module_id) & 0xFFF)

◆ LIB_MANAGER_LIB_ID_SHIFT

#define LIB_MANAGER_LIB_ID_SHIFT   12

◆ LIB_MANAGER_LIB_NOTIX_MAX_COUNT

#define LIB_MANAGER_LIB_NOTIX_MAX_COUNT   4

◆ LIB_MANAGER_MAX_LIBS

#define LIB_MANAGER_MAX_LIBS   16

◆ LIB_MANAGER_PACK_LIB_ID

#define LIB_MANAGER_PACK_LIB_ID (   lib_index)    LIB_MANAGER_PACK_MODULE_ID(lib_index, 0x0)

◆ LIB_MANAGER_PACK_MODULE_ID

#define LIB_MANAGER_PACK_MODULE_ID (   lib_index,
  module_index 
)
Value:
(((module_index) & 0xFFF) | \
(((lib_index) << LIB_MANAGER_LIB_ID_SHIFT) & 0xF000))
#define LIB_MANAGER_LIB_ID_SHIFT
Definition lib_manager.h:75

Function Documentation

◆ lib_manager_free_module()

int lib_manager_free_module ( const uint32_t  component_id)

◆ lib_manager_get_instance_bss_address()

void lib_manager_get_instance_bss_address ( uint32_t  instance_id,
const struct sof_man_module *  mod,
void **  va_addr,
size_t *  size 
)

◆ lib_manager_get_library_manifest()

const struct sof_man_fw_desc * lib_manager_get_library_manifest ( int  module_id)

◆ lib_manager_init()

void lib_manager_init ( void  )

◆ lib_manager_load_library()

int lib_manager_load_library ( uint32_t  dma_id,
uint32_t  lib_id,
uint32_t  type 
)

◆ lib_manager_mod_create_priv()

int lib_manager_mod_create_priv ( const struct comp_driver *  drv,
const struct comp_ipc_config *  config,
const void *  spec,
void **  adapter_priv,
struct userspace_context **  userspace,
const struct module_interface **  ops 
)

◆ lib_manager_register_module()

int lib_manager_register_module ( const uint32_t  component_id)

◆ lib_notif_msg_clean()

void lib_notif_msg_clean ( bool  leave_one_handle)

◆ lib_notif_msg_init()

struct ipc_msg * lib_notif_msg_init ( uint32_t  header,
uint32_t  size 
)

◆ lib_notif_msg_send()

void lib_notif_msg_send ( struct ipc_msg *  msg)