2023-07-13 11:27:03 +08:00
|
|
|
|
#ifndef __OSP_RFM_INTERFACE_H__
|
|
|
|
|
#define __OSP_RFM_INTERFACE_H__
|
|
|
|
|
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* shell相关接口定义 */
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* shell命令回调函数类型 */
|
2023-12-06 17:43:42 +08:00
|
|
|
|
typedef unsigned long (*OSP_FUNCPTR)();
|
2023-07-13 11:27:03 +08:00
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
函数名称:spu_insert_cmd_ext
|
|
|
|
|
函数入参:name : shell命令,命令字格式:命令_ape,比如显示任务信息:i_ape,命令字不要超过7个字节
|
|
|
|
|
函数入参:pfunc : 对应shell命令的回调函数
|
|
|
|
|
函数入参:desc : 对应shell命令的描述
|
|
|
|
|
函数入参:argnum : 对应shell命令的参考个数
|
|
|
|
|
函数功能:动态注册shell命令
|
|
|
|
|
*/
|
2023-12-06 17:43:42 +08:00
|
|
|
|
void spu_insert_cmd_ext(char *name, OSP_FUNCPTR pfunc, char *desc, uint32_t argnum);
|
2023-07-13 11:27:03 +08:00
|
|
|
|
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* 调试信息输出相关 */
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_sendLog
|
|
|
|
|
函数入参:level,固定传1
|
|
|
|
|
函数入参:pbuf,申请的buf地址,osp_msg_head预留
|
|
|
|
|
函数入参:size,消息大小
|
|
|
|
|
函数入参:cell_id,小区标识
|
|
|
|
|
函数功能:调试信息输出(字符串型接口)
|
|
|
|
|
*/
|
|
|
|
|
void osp_sendLog(int level, char* pbuf, int size, int cell_id);
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_sendLog_print
|
|
|
|
|
函数入参:level,固定传1
|
|
|
|
|
函数入参:pbuf,申请的buf地址,osp_msg_head预留
|
|
|
|
|
函数入参:size,消息大小
|
|
|
|
|
函数入参:cell_id,小区标识
|
|
|
|
|
函数功能:调试信息输出(二进制型接口)
|
|
|
|
|
*/
|
|
|
|
|
void osp_sendLog_print(int level,char* pbuf, int size, int cell_id);
|
|
|
|
|
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* 消息通信相关接口 */
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* calback function type */
|
|
|
|
|
typedef void(*ECS_HWQUE_IRQ_FUNC)();
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_alloc_msg
|
|
|
|
|
函数入参:size,消息大小
|
|
|
|
|
函数功能:申请核间消息内存空间(DDR)
|
|
|
|
|
*/
|
|
|
|
|
char *osp_alloc_msg(int size);
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_send_msg
|
|
|
|
|
函数入参:msg_addr,消息地址
|
|
|
|
|
函数入参:msg_len,消息长度
|
|
|
|
|
函数入参:msg_type,消息类型
|
|
|
|
|
函数入参:src_core_id,源核ID
|
|
|
|
|
函数入参:dst_core_id,目的核ID
|
|
|
|
|
函数入参:src_task_id,源任务ID
|
|
|
|
|
函数入参:dst_task_id,目的任务ID
|
|
|
|
|
函数功能:将消息通过硬件队列发给到指定硬件队列中
|
|
|
|
|
*/
|
|
|
|
|
int32_t osp_send_msg(uint32_t msg_addr,
|
|
|
|
|
uint32_t msg_len,
|
|
|
|
|
uint8_t msg_type,
|
|
|
|
|
uint8_t src_core_id,
|
|
|
|
|
uint8_t dst_core_id,
|
|
|
|
|
uint8_t src_task_id,
|
|
|
|
|
uint8_t dst_task_id);
|
|
|
|
|
|
|
|
|
|
/* hw queue callback function */
|
|
|
|
|
/*
|
|
|
|
|
函数名称:ecs_hw_que_irq_callback
|
|
|
|
|
函数入参:func,回调函数
|
|
|
|
|
函数功能:当指定硬件队列收到消息时,调用回调函数进行后续处理
|
|
|
|
|
*/
|
|
|
|
|
void ecs_hw_que_irq_callback(ECS_HWQUE_IRQ_FUNC func);
|
|
|
|
|
|
2023-12-06 17:43:42 +08:00
|
|
|
|
/*
|
|
|
|
|
函数名称:spu_get_oam_handle_id
|
|
|
|
|
函数入参:inst_id,小区编号(0/1)
|
|
|
|
|
函数功能:根据小区编号,返回对应的OAM队列的handle_id
|
|
|
|
|
*/
|
|
|
|
|
int32_t spu_get_oam_handle_id(uint8_t inst_id);
|
|
|
|
|
|
2023-07-29 16:03:01 +08:00
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/* 其他相关接口 */
|
|
|
|
|
/************************************************************************************/
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_heap_malloc
|
|
|
|
|
函数功能:从DDR里分配内存
|
|
|
|
|
函数参数:size :需要分配的内存空间
|
|
|
|
|
函数返回值:分配到的DDR内存地址
|
|
|
|
|
*/
|
|
|
|
|
extern char *osp_heap_malloc(uint32_t size);
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
函数名称:osp_heap_free
|
|
|
|
|
函数功能:释放DDR里分配内存
|
|
|
|
|
函数参数:需要释放的内存空间
|
|
|
|
|
函数返回值:无
|
|
|
|
|
*/
|
|
|
|
|
extern void osp_heap_free(char *p);
|
|
|
|
|
|
2023-07-13 11:27:03 +08:00
|
|
|
|
#endif
|
|
|
|
|
|