2.2. 设计概述¶
ipcm cust初始化只需要调用CVI_IPCM_CustInit和调用CVI_IPCM_RegisterCustHandle注册handle即可
如果msg长度不超过4byte,例如只传一下command,则可以直接填充msg结构体的param域,然后通过mailbox发送到另一个RISC-V
如果msg长度超过4byte,则需要从share memory中申请一块pool,然后填充pool内容和调用CVI_IPCM_DataPacked进行msg打包,最后再通过mailbox发送到另一个RISC-V
注意
msg size有长度限制
最大不能超过4095
最大不能超过CVI_IPCM_Init时配置的最大pool size
当RISC-V收到cust msg时,cust_thread会被唤醒,并调用cust初始化时注册的handle,在handle中可以通过port_id和msg_id区分不同的cust msg