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

📄 mx2.h

📁 我自己写的2.4版本下的驱动程序
💻 H
📖 第 1 页 / 共 5 页
字号:
#define _reg_SLCDC_LCD_TXCONFIG	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SLCDC_BASE_ADDR+0x1C))))  //  32bit slcdc lcd transmit config reg
#define _reg_SLCDC_LCD_CTRL_STAT	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SLCDC_BASE_ADDR+0x20))))  //  32bit slcdc lcd control/status reg
#define _reg_SLCDC_LCD_CLKCONFIG	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SLCDC_BASE_ADDR+0x24))))  //  32bit slcdc lcd clock config reg
#define _reg_SLCDC_LCD_WR_DATA	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SLCDC_BASE_ADDR+0x28))))  //  32bit slcdc lcd write data reg
		
		
		
		
		
//#########################################		
//# SAHARA                                #		
//# $1002_3000 to $1002_3FFF              #		
//#########################################		
#define SAHARA_BASE_ADDR	0x10023000	
		
//# CHA BASE ADDRESSES		
#define SAHARA_TOP	(SAHARA_BASE_ADDR+0x0000)
#define SAHARA_AESA	(SAHARA_BASE_ADDR+0x0100)	
#define SAHARA_DESA	(SAHARA_BASE_ADDR+0x0100)	
#define SAHARA_MDHA	(SAHARA_BASE_ADDR+0x0200)	
#define SAHARA_RNGA	(SAHARA_BASE_ADDR+0x0300)	
#define SAHARA_FIDO	(SAHARA_BASE_ADDR+0x0400)	
#define SAHARA_I_FIDO	(SAHARA_BASE_ADDR+0x0400)	
#define SAHARA_O_FIDO	(SAHARA_BASE_ADDR+0x0500)	
#define SAHARA_PKHA	(SAHARA_BASE_ADDR+0x0800)	
		
//# SAHARA REGISTERS		
#define _reg_SAHARA_VER_ID	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x00))))	
#define _reg_SAHARA_DSC_ADR	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x04))))	
#define _reg_SAHARA_CONTROL	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x08))))	
#define _reg_SAHARA_COMMAND	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x0C))))	
#define _reg_SAHARA_STAT	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x10))))	
#define _reg_SAHARA_ERR_STAT	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x14))))	
#define _reg_SAHARA_FAULT_ADR	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x18))))	
#define _reg_SAHARA_C_DSC_ADR	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x1C))))	
#define _reg_SAHARA_I_DSC_ADR	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x20))))	
#define _reg_SAHARA_BUFF_LVL	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x24))))	
#define _reg_SAHARA_DSC_A	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x80))))	
#define _reg_SAHARA_DSC_B	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x84))))	
#define _reg_SAHARA_DSC_C	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x88))))	
#define _reg_SAHARA_DSC_D	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x8C))))	
#define _reg_SAHARA_DSC_E	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x90))))	
#define _reg_SAHARA_DSC_F	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0x94))))	
#define _reg_SAHARA_LNK_1_A	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xA0))))	
#define _reg_SAHARA_LNK_1_B	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xA4))))	
#define _reg_SAHARA_LNK_1_C	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xA8))))	
#define _reg_SAHARA_LNK_2_A	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xB0))))	
#define _reg_SAHARA_LNK_2_B	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xB4))))	
#define _reg_SAHARA_LNK_2_C	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xB8))))	
#define _reg_SAHARA_FLOW_CTRL	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_TOP+0xC0))))	

//# COMMON CHA REGISTERS		
#define SAHARA_MODE	0x00	
#define SAHARA_KEY_SIZE	0x04	
#define SAHARA_DATA_SIZE	0x08	
#define SAHARA_STATUS	0x0C	
#define SAHARA_ERROR_STATUS	0x10	
#define SAHARA_CHA_GO	0x14	
#define SAHARA_CONTEXT	0x40	
#define SAHARA_KEY	0x80	

//# SAHARA_AESA REGISTERS		
#define _reg_SAHARA_AESA_MODE		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_MODE+0x00))))	
#define _reg_SAHARA_AESA_KEY_SIZE	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_KEY_SIZE+0x00))))	
#define _reg_SAHARA_AESA_DATA_SIZE	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_DATA_SIZE+0x00))))	
#define _reg_SAHARA_AESA_STAT		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_STATUS+0x00))))	
#define _reg_SAHARA_AESA_ERR_STAT	(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_ERROR_STATUS+0x00))))	
#define _reg_SAHARA_AESA_CHA_GO		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CHA_GO+0x00))))	
#define _reg_SAHARA_AESA_CXT		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_AESA_KEY_1		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_KEY+0x00))))	
#define _reg_SAHARA_AESA_KEY_2		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_KEY+0x04))))	
#define _reg_SAHARA_AESA_KEY_3		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_KEY+0x08))))	
#define _reg_SAHARA_AESA_KEY_4		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_KEY+0x0C))))	
#define _reg_SAHARA_AESA_IV_1		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_AESA_IV_2		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x04))))	
#define _reg_SAHARA_AESA_IV_3		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x08))))	
#define _reg_SAHARA_AESA_IV_4		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x0C))))	
#define _reg_SAHARA_AESA_IV_5		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x10))))	
#define _reg_SAHARA_AESA_IV_6		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x14))))	
#define _reg_SAHARA_AESA_IV_7		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x18))))	
#define _reg_SAHARA_AESA_IV_8		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x1C))))	
#define _reg_SAHARA_AESA_IV_9		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x20))))	
#define _reg_SAHARA_AESA_IV_10		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x24))))	
#define _reg_SAHARA_AESA_IV_11		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x28))))	
#define _reg_SAHARA_AESA_IV_12		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x2C))))	
#define _reg_SAHARA_AESA_IV_13		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x30))))	
#define _reg_SAHARA_AESA_IV_14		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x34))))	
#define _reg_SAHARA_AESA_IV_15		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x38))))	
#define _reg_SAHARA_AESA_IV_16		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_AESA+SAHARA_CONTEXT+0x3C))))	
		
//# SAHARA_DESA REGISTERS		
#define _reg_SAHARA_DESA_MODE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_MODE+0x00))))	
#define _reg_SAHARA_DESA_KEY_SIZE		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY_SIZE+0x00))))	
#define _reg_SAHARA_DESA_DATA_SIZE		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_DATA_SIZE+0x00))))	
#define _reg_SAHARA_DESA_STAT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_STATUS+0x00))))	
#define _reg_SAHARA_DESA_ERR_STAT		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_ERROR_STATUS+0x00))))	
#define _reg_SAHARA_DESA_CHA_GO			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_CHA_GO+0x00))))	
#define _reg_SAHARA_DESA_KEY			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x00))))	
#define _reg_SAHARA_DESA_CXT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_DESA_KEY_1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x00))))	
#define _reg_SAHARA_DESA_KEY_2			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x04))))	
#define _reg_SAHARA_DESA_KEY_3			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x08))))	
#define _reg_SAHARA_DESA_KEY_4			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x0C))))	
#define _reg_SAHARA_DESA_KEY_5			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x10))))	
#define _reg_SAHARA_DESA_KEY_6			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_KEY+0x14))))	
#define _reg_SAHARA_DESA_IV_1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_DESA_IV_2			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_DESA+SAHARA_CONTEXT+0x04))))	
		
//# SAHARA_MDHA REGISTERS		
#define _reg_SAHARA_MDHA_MODE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_MODE+0x00))))	
#define _reg_SAHARA_MDHA_KEY_SIZE		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY_SIZE+0x00))))	
#define _reg_SAHARA_MDHA_DATA_SIZE		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_DATA_SIZE+0x00))))	
#define _reg_SAHARA_MDHA_STAT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_STATUS+0x00))))	
#define _reg_SAHARA_MDHA_ERR_STAT		(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_ERROR_STATUS+0x00))))	
#define _reg_SAHARA_MDHA_GO			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CHA_GO+0x00))))	
#define _reg_SAHARA_MDHA_KEY			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x00))))	
#define _reg_SAHARA_MDHA_CXT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_MDHA_MD_A1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x00))))	
#define _reg_SAHARA_MDHA_MD_B1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x04))))	
#define _reg_SAHARA_MDHA_MD_C1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x08))))	
#define _reg_SAHARA_MDHA_MD_D1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x0C))))	
#define _reg_SAHARA_MDHA_MD_E1			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_KEY+0x10))))	
#define _reg_SAHARA_MDHA_MD_A			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x00))))	
#define _reg_SAHARA_MDHA_MD_B			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x04))))	
#define _reg_SAHARA_MDHA_MD_C			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x08))))	
#define _reg_SAHARA_MDHA_MD_D			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x0C))))	
#define _reg_SAHARA_MDHA_MD_E			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x10))))	
#define _reg_SAHARA_MDHA_MD_CNT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_MDHA+SAHARA_CONTEXT+0x14))))	
		
//# SAHARA_PKHA REGISTERS		
#define _reg_SAHARA_PKHA_PGM_COUNT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_MODE+0x000))))	
#define _reg_SAHARA_PKHA_KEY_SIZE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_KEY_SIZE+0x000))))	
#define _reg_SAHARA_PKHA_MOD_SIZE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_DATA_SIZE+0x000))))	
#define _reg_SAHARA_PKHA_STAT				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_STATUS+0x000))))	
#define _reg_SAHARA_PKHA_ERR_STAT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_ERROR_STATUS+0x000))))	
#define _reg_SAHARA_PKHA_CHA_GO				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+SAHARA_CHA_GO+0x000))))	
#define _reg_SAHARA_PKHA_A0_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x400))))	
#define _reg_SAHARA_PKHA_A1_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x440))))	
#define _reg_SAHARA_PKHA_A2_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x480))))	
#define _reg_SAHARA_PKHA_A3_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x4C0))))	
#define _reg_SAHARA_PKHA_B0_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x500))))	
#define _reg_SAHARA_PKHA_B1_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x540))))	
#define _reg_SAHARA_PKHA_B2_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x580))))	
#define _reg_SAHARA_PKHA_B3_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x5C0))))	
#define _reg_SAHARA_PKHA_N_BASE				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x600))))	
#define _reg_SAHARA_PKHA_EXP_BASE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_PKHA+0x700))))	
		
//# SAHARA_RNGA REGISTERS		
#define _reg_SAHARA_RNGA_MODE				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_RNGA+SAHARA_MODE+0x00))))	
#define _reg_SAHARA_RNGA_DATA_SIZE			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_RNGA+SAHARA_DATA_SIZE+0x00))))	
#define _reg_SAHARA_RNGA_STAT				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_RNGA+SAHARA_STATUS+0x00))))	
#define _reg_SAHARA_RNGA_ERR_STAT			(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_RNGA+SAHARA_ERROR_STATUS+0x00))))	
#define _reg_SAHARA_RNGA_CHA_GO				(*((volatile unsigned long *)(MX2_IO_ADDRESS(SAHARA_RNGA+SAHARA_CHA_GO+0x00))))	
		
		
		
		
		
//#########################################		
//# USBOTG                                #		

⌨️ 快捷键说明

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