// +FHDR------------------------------------------------------------ // Copyright (c) 2022 SmartLogic. // ALL RIGHTS RESERVED // ----------------------------------------------------------------- // Filename : memcpy_csu.h // Author : xianfeng.du // Created On : 2022-12-1 // Last Modified : // ----------------------------------------------------------------- // Description: // // // -FHDR------------------------------------------------------------ #ifndef _MEMCPY_CSU_H_ #define _MEMCPY_CSU_H_ #include "typedef.h" typedef enum eUcpMemCpyCsuType { STACK2MSG, MSG2STACK, STACK2STACK } UcpMemcpyCsuType_e; /****************************************************************** * description:协议栈内存之间数据搬移 * Input(s): * dst_phy_addr:目的地址(物理地址) * src_phy_addr:源地址(物理地址) * size:搬移长度,单位:字节 * check_flag:是否等待搬移结束 1:等待,0:不等待 * * Output(s): * 无 * * Returns: * 无 ********************************************************************/ void memcpy_csu_stack2stack(uint64_t dst_phy_addr, uint64_t src_phy_addr, uint32_t size,uint8_t check_flag); /****************************************************************** * description:协议栈内存与fapi消息内存之间数据搬移 * Input(s): * stack_phy_addr:协议栈内存地址(物理地址) * msg_virt_addr:fapi消息内存地址(虚拟地址) * size:搬移长度,单位:字节 * type:搬移类型:STACK2MSG/MSG2STACK * check_flag:是否等待搬移结束 1:等待,0:不等待 * Output(s): * 无 * Returns: * 无 ********************************************************************/ void memcpy_csu_stack_and_msg(uint64_t stack_phy_addr, uint64_t msg_virt_addr, uint32_t size,UcpMemcpyCsuType_e type, uint8_t check_flag); #endif