You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.4 KiB
71 lines
2.4 KiB
/*
|
|
* Copyright (c) Hisilicon Technologies Co., Ltd. 2020-2020. All rights reserved.
|
|
* Description: mpi layer private data structure
|
|
* Author: sdk
|
|
* Create: 2020-04-03
|
|
*/
|
|
|
|
#ifndef __MPI_VENC_H__
|
|
#define __MPI_VENC_H__
|
|
#include "drv_ioctl_venc.h"
|
|
#include "soc_log.h"
|
|
|
|
#undef LOG_MODULE_ID
|
|
#define LOG_MODULE_ID SOC_ID_VENC
|
|
|
|
#define ext_alert_venc(fmt...) soc_log_alert(fmt)
|
|
#define ext_fatal_venc(fmt...) soc_log_fatal(fmt)
|
|
#define ext_err_venc(fmt...) soc_log_err(fmt)
|
|
#define ext_warn_venc(fmt...) soc_log_warn(fmt)
|
|
#define ext_notice_venc(fmt...) soc_log_notice(fmt)
|
|
#define ext_info_venc(fmt...) soc_log_info(fmt)
|
|
#define ext_dbg_venc(fmt...) soc_log_dbg(fmt)
|
|
#define soc_trace_venc(fmt...) soc_log_trace(fmt)
|
|
|
|
#define venc_unused(x) ((x) = (x))
|
|
|
|
typedef enum {
|
|
VEDU_H264 = 0,
|
|
VEDU_JPGE = 1,
|
|
VEDU_H265 = 2,
|
|
} venc_protocol;
|
|
|
|
#define check_venc_ptr_ret(prt) \
|
|
do { \
|
|
if ((prt) == TD_NULL) { \
|
|
ext_err_venc("para ptr is null!\n"); \
|
|
return SOC_ERR_VENC_NULL_PTR; \
|
|
} \
|
|
} while (0)
|
|
|
|
#define check_venc_ptr_ret_void(prt) \
|
|
do { \
|
|
if ((prt) == TD_NULL) { \
|
|
ext_err_venc("para ptr is null!\n"); \
|
|
return; \
|
|
} \
|
|
} while (0)
|
|
|
|
#define venc_check_neq_void_ret(func, ref) \
|
|
do { \
|
|
td_s32 rst = func; \
|
|
if (rst != (ref)) { \
|
|
ext_err_venc("check err; ret = 0x%x\n", rst); \
|
|
return; \
|
|
} \
|
|
} while (0)
|
|
|
|
#define venc_check_neq_ret(func, ref, ret) \
|
|
do { \
|
|
td_s32 rst = func; \
|
|
if (rst != (ref)) { \
|
|
ext_err_venc("check err; ret = 0x%x\n", rst); \
|
|
return ret; \
|
|
} \
|
|
} while (0)
|
|
|
|
#define u64_ptr(ptr) ((td_void *)(td_uintptr_t)(ptr))
|
|
#define ptr_u64(ptr) ((td_u64)(td_uintptr_t)(ptr))
|
|
|
|
#endif
|