⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mae_fe.h

📁 AU1200嵌入式处理器媒体加速引擎(mae)的驱动
💻 H
字号:
#ifndef _MAE_FE_H_
#define _MAE_FE_H_

#include "mae_interface.h"
#include "mae_types.h"

#ifdef __cplusplus
extern "C" {
#endif

#define MAEFE_BASE				0xB4012000
//#define MAEFE_DMADSCR0		MAEFE_BASE + 0x1000
#define MAEFE_DMADSCR1			MAEFE_BASE + 0x1004
#define MAEFE_DMADBELL			MAEFE_BASE + 0x1008
#define MAEFE_DMADBELL_DB		1
#define MAEFE_MOCOMP0			MAEFE_BASE + 0x0030
#define MAEFE_MOCOMP0_DEFAULT	0x00BC0BE5
#define MAEFE_MOCOMP1			MAEFE_BASE + 0x0034
#define MAEFE_MOCOMP1_DEFAULT	0x7F93B725
#define MAEFE_INTSTAT			MAEFE_BASE + 0x0050
#define MAEFE_INTSTAT_DONE		1
#define MAEFE_INTENABLE			MAEFE_BASE + 0x0054
#define MAEFE_INTENABLE_EN 1
#define MAEFE_SCRATCHPAD		MAEFE_BASE + 0x0058

#define FE_INTR_CTRL_NUMBER		9

	/* picture structure */
#define TOP_FIELD				1
#define BOTTOM_FIELD			2
#define FRAME_PICTURE			3
//
// these structures below are for the FE registers we need to
// program in a hurry every interrupt
//

typedef struct reg_data_struct
{
    uint32 offset;
    char szRegName[24];
}reg_data;

typedef struct tag_yuv_table
{
    PYUVQ_T pyuvq;
    const char szBufName[3];
}YUV_TABLE;

//
void			program_fe_regs(PMAEQ_T pmaeq, UINT32 ulInterlaced);
//
unsigned char	run_fe_hw(void);
//
UINT32			init_yuvq_list(void);
//
unsigned char	discard_fe(void);
void			release_buffer_memory(PMAEQ_T el);
//
PUINT32			release_extra_info_memory(PMAEQ_T el);
//
void			ring_fe_doorbell(void);
//
unsigned long	get_yuvbufferaddr(unsigned long nYUVIndex);


#ifdef __cplusplus
}
#endif
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -