GK SDK 源码库: XMIPCLinuxV100R005C00SPC030 (kernel/tools/open_source excluded)
This commit is contained in:
Executable
+143
@@ -0,0 +1,143 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef DRV_DEV_DEFINES_H
|
||||
#define DRV_DEV_DEFINES_H
|
||||
|
||||
#include "xmedia_type.h"
|
||||
#include "common.h"
|
||||
|
||||
#define UMAP_DEV_NUM 64
|
||||
#define UMAP_NAME_MAXLEN 32
|
||||
|
||||
#define UMAP_VI_MINOR_BASE 0
|
||||
#define UMAP_VO_MINOR_BASE 1
|
||||
#define UMAP_VENC_MINOR_BASE 2
|
||||
#define UMAP_VDEC_MINOR_BASE 3
|
||||
#define UMAP_JPEGD_MINOR_BASE 4
|
||||
#define UMAP_AI_MINOR_BASE 5
|
||||
#define UMAP_AO_MINOR_BASE 6
|
||||
#define UMAP_GRP_MINOR_BASE 7
|
||||
#define UMAP_SYS_MINOR_BASE 8
|
||||
#define UMAP_VB_MINOR_BASE 9
|
||||
#define UMAP_VPSS_MINOR_BASE 10
|
||||
#define UMAP_AIO_MINOR_BASE 11
|
||||
#define UMAP_LOG_MINOR_BASE 12
|
||||
#define UMAP_AENC_MINOR_BASE 13
|
||||
#define UMAP_ADEC_MINOR_BASE 14
|
||||
#define UMAP_MST_LOG_MINOR_BASE 15
|
||||
#define UMAP_RGN_MINOR_BASE 16
|
||||
#define UMAP_IVE_MINOR_BASE 17
|
||||
#define UMAP_HDMI_MINOR_BASE 18
|
||||
#define UMAP_VGS_MINOR_BASE 19
|
||||
#define UMAP_ISP_MINOR_BASE 20
|
||||
#define UMAP_RC_MINOR_BASE 21
|
||||
#define UMAP_H264E_MINOR_BASE 22
|
||||
#define UMAP_H265E_MINOR_BASE 23
|
||||
#define UMAP_JPEGE_MINOR_BASE 24
|
||||
#define UMAP_CHNL_MINOR_BASE 25
|
||||
#define UMAP_MPEG4E_MINOR_BASE 26
|
||||
#define UMAP_GDC_MINOR_BASE 27
|
||||
#define UMAP_PCIV_MINOR_BASE 28
|
||||
#define UMAP_PCIVFMW_MINOR_BASE 29
|
||||
#define UMAP_FD_MINOR_BASE 30
|
||||
#define UMAP_ACODEC_MINOR_BASE 31
|
||||
#define UMAP_VPU_MINOR_BASE 32
|
||||
#define UMAP_AVS_MINOR_BASE 33
|
||||
#define UMAP_DIS_MINOR_BASE 34
|
||||
#define UMAP_SVP_MINOR_BASE 35
|
||||
#define UMAP_PRORES_MINOR_BASE 36
|
||||
#define UMAP_SVP_NNIE_MINOR_BASE 37
|
||||
#define UMAP_SVP_DSP_MINOR_BASE 38
|
||||
#define UMAP_DPU_RECT_MINOR_BASE 39
|
||||
#define UMAP_DPU_MATCH_MINOR_BASE 40
|
||||
#define UMAP_PM_MINOR_BASE 41
|
||||
#define UMAP_GYRODIS_MINOR_BASE 42
|
||||
#define UMAP_PDM_MINOR_BASE 43
|
||||
#define UMAP_TDE_MINOR_BASE 44
|
||||
#define UMAP_FB_MINOR_BASE 45
|
||||
#define UMAP_MCF_MINOR_BASE 46
|
||||
#define UMAP_ACOMM_MINOR_BASE 47
|
||||
#define UMAP_NPU_MINOR_BASE 48
|
||||
#define UMAP_DDR_OST_QOS_MINOR_BASE 49
|
||||
#define UMAP_CIPHER_MINOR_BASE 50
|
||||
#define UMAP_OTP_MINOR_BASE 51
|
||||
#define UMAP_MISC_MINOR_BASE 52
|
||||
|
||||
#define UMAP_GET_CHN(f) (*((xmedia_u32*)(f)))
|
||||
#define UMAP_SET_CHN(f, chn) (*((xmedia_u32*)(f)) = (chn))
|
||||
|
||||
#define UMAP_NAME "umap"
|
||||
#define UMAP_NAME_VIDEO UMAP_NAME "/video/"
|
||||
#define UMAP_NAME_AUDIO UMAP_NAME "/audio/"
|
||||
|
||||
#define UMAP_DEVNAME_SYSCTL MPP_MOD_SYS
|
||||
#define UMAP_DEVNAME_LOG_BASE MPP_MOD_LOG
|
||||
#define UMAP_DEVNAME_MST_LOG_BASE MPP_MOD_MST_LOG
|
||||
|
||||
#define UMAP_DEVNAME_VI_BASE MPP_MOD_VI
|
||||
#define UMAP_DEVNAME_VO_BASE MPP_MOD_VO
|
||||
#define UMAP_DEVNAME_FB_BASE MPP_MOD_FB
|
||||
#define UMAP_DEVNAME_AVS_BASE MPP_MOD_AVS
|
||||
#define UMAP_DEVNAME_VENC_BASE MPP_MOD_VENC
|
||||
#define UMAP_DEVNAME_VDEC_BASE MPP_MOD_VDEC
|
||||
#define UMAP_DEVNAME_JPEGD_BASE MPP_MOD_JPEGD
|
||||
|
||||
#define UMAP_DEVNAME_DSU_BASE MPP_MOD_DSU
|
||||
#define UMAP_DEVNAME_VB_BASE MPP_MOD_VB
|
||||
#define UMAP_DEVNAME_VPSS_BASE MPP_MOD_VPSS
|
||||
#define UMAP_DEVNAME_GRP_BASE MPP_MOD_GRP
|
||||
#define UMAP_DEVNAME_RGN_BASE MPP_MOD_RGN
|
||||
#define UMAP_DEVNAME_IVE_BASE MPP_MOD_IVE
|
||||
#define UMAP_DEVNAME_FD_BASE MPP_MOD_FD
|
||||
#define UMAP_DEVNAME_SVP_BASE MPP_MOD_SVP
|
||||
#define UMAP_DEVNAME_SVP_NNIE_BASE MPP_MOD_SVP_NNIE
|
||||
#define UMAP_DEVNAME_SVP_DSP_BASE MPP_MOD_SVP_DSP
|
||||
#define UMAP_DEVNAME_DPU_RECT_BASE MPP_MOD_DPU_RECT
|
||||
#define UMAP_DEVNAME_DPU_MATCH_BASE MPP_MOD_DPU_MATCH
|
||||
|
||||
#define UMAP_DEVNAME_ACODEC_BASE MPP_MOD_ACODEC
|
||||
|
||||
#define UMAP_DEVNAME_AIO_BASE MPP_MOD_AIO
|
||||
#define UMAP_DEVNAME_AI_BASE MPP_MOD_AI
|
||||
#define UMAP_DEVNAME_AO_BASE MPP_MOD_AO
|
||||
#define UMAP_DEVNAME_AENC_BASE MPP_MOD_AENC
|
||||
#define UMAP_DEVNAME_ADEC_BASE MPP_MOD_ADEC
|
||||
#define UMAP_DEVNAME_ACOMM_BASE MPP_MOD_ACOMM
|
||||
|
||||
#define UMAP_DEVNAME_HDMI_BASE MPP_MOD_HDMI
|
||||
|
||||
#define UMAP_DEVNAME_VGS_BASE MPP_MOD_VGS
|
||||
#define UMAP_DEVNAME_TDE_BASE MPP_MOD_TDE
|
||||
|
||||
#define UMAP_DEVNAME_GDC_BASE MPP_MOD_GDC
|
||||
|
||||
#define UMAP_DEVNAME_H264E_BASE MPP_MOD_H264E
|
||||
#define UMAP_DEVNAME_H265E_BASE MPP_MOD_H265E
|
||||
#define UMAP_DEVNAME_JPEGE_BASE MPP_MOD_JPEGE
|
||||
#define UMAP_DEVNAME_MPEG4E_BASE MPP_MOD_MPEG4E
|
||||
#define UMAP_DEVNAME_CHNL_BASE MPP_MOD_CHNL
|
||||
#define UMAP_DEVNAME_RC_BASE MPP_MOD_RC
|
||||
#define UMAP_DEVNAME_MPEG4E_BASE MPP_MOD_MPEG4E
|
||||
#define UMAP_DEVNAME_PRORES_BASE MPP_MOD_PRORES
|
||||
|
||||
#define UMAP_DEVNAME_PCIV_BASE MPP_MOD_PCIV
|
||||
#define UMAP_DEVNAME_PCIVFMW_BASE MPP_MOD_PCIVFMW
|
||||
#define UMAP_DEVNAME_VPU_BASE MPP_MOD_VPU
|
||||
#define UMAP_DEVNAME_DIS_BASE MPP_MOD_DIS
|
||||
#define UMAP_DEVNAME_PM_BASE MPP_MOD_PM
|
||||
#define UMAP_DEVNAME_GYRODIS_BASE MPP_MOD_GYRODIS
|
||||
|
||||
#define UMAP_DEVNAME_MCF_BASE MPP_MOD_MCF
|
||||
|
||||
#define UMAP_DEVNAME_NPU_BASE MPP_MOD_NPU
|
||||
|
||||
#define UMAP_DEVNAME_DDR_OST_QOS_BASE MPP_MOD_DDR_OST_QOS
|
||||
|
||||
#define UMAP_DEVNAME_CIPHER_BASE MPP_MOD_CIPHER
|
||||
#define UMAP_DEVNAME_OTP_BASE MPP_MOD_OTP
|
||||
#define UMAP_DEVNAME_MISC_BASE MPP_MOD_MISC
|
||||
|
||||
|
||||
#endif /* DRV_DEV_DEFINES_H */
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef __DRV_EXPORT_H__
|
||||
#define __DRV_EXPORT_H__
|
||||
|
||||
#include "xmedia_region.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
//rgn
|
||||
xmedia_s32 export_rgn_init(xmedia_void);
|
||||
xmedia_void export_rgn_exit(xmedia_void);
|
||||
xmedia_s32 export_rgn_create(xmedia_u32 handle, const xmedia_rgn_attr *rgn_attr);
|
||||
xmedia_s32 export_rgn_destroy(xmedia_u32 handle);
|
||||
xmedia_s32 export_rgn_get_attr(xmedia_u32 handle, xmedia_rgn_attr *rgn_attr);
|
||||
xmedia_s32 export_rgn_set_attr(xmedia_u32 handle, const xmedia_rgn_attr *rgn_attr);
|
||||
xmedia_s32 export_rgn_attach_to_chn(xmedia_u32 handle, const xmedia_chn_info *chn, const xmedia_rgn_chn_attr *chn_attr);
|
||||
xmedia_s32 export_rgn_detach_from_chn(xmedia_u32 handle, const xmedia_chn_info *chn);
|
||||
xmedia_s32 export_rgn_get_display_attr(xmedia_u32 handle, const xmedia_chn_info *chn, xmedia_rgn_chn_attr *chn_attr);
|
||||
xmedia_s32 export_rgn_set_display_attr(xmedia_u32 handle, const xmedia_chn_info *chn, const xmedia_rgn_chn_attr *chn_attr);
|
||||
xmedia_s32 export_rgn_get_canvas_info(xmedia_u32 handle, xmedia_rgn_canvas_info *canvas_info);
|
||||
xmedia_s32 export_rgn_update_canvas (xmedia_u32 handle);
|
||||
xmedia_s32 export_rgn_batch_begin(xmedia_u32 *grp, xmedia_u32 handle_num, const xmedia_u32 handle[]);
|
||||
xmedia_s32 export_rgn_batch_end(xmedia_u32 grp);
|
||||
//isp
|
||||
xmedia_s32 export_isp_suspend_sensor(xmedia_u32 pipe);
|
||||
xmedia_s32 export_isp_resume_sensor(xmedia_u32 pipe);
|
||||
//vi
|
||||
xmedia_void export_vi_register_misc_aov_callback(xmedia_s32 (*misc_aov_callback)(xmedia_s32 pipe));
|
||||
xmedia_bool export_vi_check_busy(xmedia_void);
|
||||
//vpss
|
||||
xmedia_bool export_vpss_check_busy(xmedia_void);
|
||||
//venc
|
||||
xmedia_bool export_venc_check_busy(xmedia_void);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* __DRV_EXPORT_H__ */
|
||||
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
|
||||
#ifndef __DRV_ISP_EXPORT_H__
|
||||
#define __DRV_ISP_EXPORT_H__
|
||||
|
||||
#include "xmedia_type.h"
|
||||
#include "xmedia_isp.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
xmedia_s32 (*pfn_i2c_write)(xmedia_s8 i2c_dev, xmedia_u32 slave_addr, xmedia_u32 reg_addr,
|
||||
xmedia_u32 reg_addr_byte_num, xmedia_u32 data, xmedia_u32 data_byte_num);
|
||||
xmedia_s32 (*pfn_i2c_read)(xmedia_s8 i2c_dev, xmedia_u32 slave_addr, xmedia_u32 reg_addr,
|
||||
xmedia_u32 reg_addr_byte_num, xmedia_u32 *data, xmedia_u32 data_byte_num);
|
||||
} isp_i2c_callback;
|
||||
|
||||
xmedia_s32 drv_isp_set_mclk(xmedia_u32 clk_chn, xmedia_bool enable, xmedia_sensor_clock_freq clk);
|
||||
xmedia_s32 drv_isp_register_i2c(isp_i2c_callback *i2c_callback);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // __DRV_ISP_EXPORT_H__
|
||||
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef DRV_LOG_H
|
||||
#define DRV_LOG_H
|
||||
|
||||
#include "xmedia_type.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
xmedia_s32 drv_log_mod_init(xmedia_u32 buf_len);
|
||||
xmedia_void drv_log_mod_exit(xmedia_void);
|
||||
xmedia_s32 drv_log_write(xmedia_s32 level, xmedia_u32 mod_id, const xmedia_char *fmt, ...) __attribute__((format(printf,3,4)));
|
||||
xmedia_s32 drv_log_check_level(xmedia_s32 level, xmedia_u32 mod_id);
|
||||
xmedia_char *drv_get_module_name(xmedia_u32 mod_id);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef DRV_TYPE_IOCTL_H
|
||||
#define DRV_TYPE_IOCTL_H
|
||||
|
||||
#define IOC_TYPE_VI 'I'
|
||||
#define IOC_TYPE_VOU 'O'
|
||||
|
||||
#define IOC_TYPE_VENC 'E'
|
||||
#define IOC_TYPE_VDEC 'D'
|
||||
|
||||
#define IOC_TYPE_AENC 'A'
|
||||
#define IOC_TYPE_ADEC 'H'
|
||||
|
||||
#define IOC_TYPE_AI 'Z'
|
||||
#define IOC_TYPE_AO 'X'
|
||||
#define IOC_TYPE_AIO 'S'
|
||||
|
||||
#define IOC_TYPE_SYS 'Y'
|
||||
#define IOC_TYPE_VB 'B'
|
||||
#define IOC_TYPE_LOG 'L'
|
||||
#define IOC_TYPE_DDR_OST_QOS 'K'
|
||||
|
||||
#define IOC_TYPE_VPSS 'P'
|
||||
|
||||
#define IOC_TYPE_RGN 'R'
|
||||
|
||||
#define IOC_TYPE_IVE 'F'
|
||||
|
||||
#define IOC_TYPE_VGS 'J'
|
||||
|
||||
#define IOC_TYPE_GDC 'N'
|
||||
|
||||
#define IOC_TYPE_ISP 'M'
|
||||
|
||||
#define IOC_TYPE_TDE 'T'
|
||||
|
||||
#define IOC_TYPE_MCF 'C'
|
||||
|
||||
#define IOC_TYPE_ACOMM 'S'
|
||||
|
||||
#define IOC_TYPE_IR 'U'
|
||||
|
||||
#define IOC_TYPE_LSADC 'G'
|
||||
|
||||
#define IOC_TYPE_OTP 'Q'
|
||||
|
||||
#define IOC_TYPE_MISC 'V'
|
||||
|
||||
#endif /* DRV_TYPE_IOCTL_H */
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef __MMZ_H__
|
||||
#define __MMZ_H__
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
unsigned long long mmz_alloc(const char *mmz_name, const char *buf_name, unsigned long size);
|
||||
|
||||
void mmz_free(unsigned long long phy_addr);
|
||||
|
||||
void *mmz_map(unsigned long long phy_addr, unsigned long size, bool cached);
|
||||
|
||||
void mmz_unmap(void *vir_addr);
|
||||
|
||||
int mmz_check_phyaddr(unsigned long long phy_addr, unsigned long len);
|
||||
|
||||
int mmz_flush_cache(unsigned long phy_addr, void *kvirt, unsigned long length);
|
||||
|
||||
#endif
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef _VERSION_H_
|
||||
#define _VERSION_H_
|
||||
|
||||
#include <linux/types.h>
|
||||
#include "xmedia_type.h"
|
||||
#include "osal.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#if (defined SDK_VERSION_RELEASE)
|
||||
|
||||
#define VERSION_FORMAT(buff,module,module_version,ext_info) \
|
||||
osal_sprintf(buff,"Version:[%s %s], [%s %s %s], %s, Build Time[%s %s]",\
|
||||
VERSION_MAJOR, VERSION_MINOR, \
|
||||
module,module_version,ext_info,"Release",__DATE__,__TIME__)
|
||||
|
||||
#elif (defined SDK_VERSION_DEBUG)
|
||||
|
||||
#define VERSION_FORMAT(buff,module,module_version,ext_info) \
|
||||
osal_sprintf(buff,"Version:[%s %s], [%s %s %s], %s, Build Time[%s %s]",\
|
||||
VERSION_MAJOR, VERSION_MINOR, \
|
||||
module,module_version,ext_info,"Debug",__DATE__,__TIME__)
|
||||
|
||||
#else
|
||||
#warning "version type is invalid !!!"
|
||||
|
||||
#define VERSION_FORMAT(buff,module,module_version,ext_info) \
|
||||
osal_sprintf(buff,"Version:[%s %s], [%s %s %s], %s, Build Time[%s %s]",\
|
||||
VERSION_MAJOR, VERSION_MINOR, \
|
||||
module,module_version,ext_info,"Invalid",__DATE__,__TIME__)
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user