hw_acces.h

来自「使用ISP1362芯片的USB_OTG参考设计源代码比较新的版本」· C头文件 代码 · 共 96 行

H
96
字号
/*
**  WASABI-Hot! version 1.2c   
**
**
**      -- copyright (c) 2001-2004 by Philips Japan, Ltd. -- All rights reserved --
**
**
**      ** This code has been made to check/learn                          ** 
**      **                             the ISP1362/ISP1363 functionalities **
**      ** Release 06-Aug-2004                                             **
**
**      OKANO, Akifumi
**      
**		Application Laboratory, Mobile and Connectivity
**      Semiconductors Div, Philips Japan Ltd.
**      akifumi.okano@philips.com
**      +81-3-3740-4668 
**
*/


/****************************************************************************/
/*	includes																*/
/****************************************************************************/

#include		"_hc_core/isr.h"
#include		"_dc/dc_hal.h"

/****************************************************************************/
/*	constants																*/
/****************************************************************************/

#define		ISA_BASE_ADDR 			0x290

#define		DEFAULT_HC_IRQ_NUM		10
#define		DEFAULT_DC_IRQ_NUM		3


/****************************************************************************/
/*	global vars																*/
/****************************************************************************/

extern unsigned int		gp_ISA_base_address;
extern unsigned int		gp_1362_Hc_data_address;
extern unsigned int		gp_1362_Hc_command_address;

extern unsigned char	gp_is_PCI;
extern unsigned char	gp_is_PCMCIA;
extern unsigned char	gp_shared_IRQ;
extern funcPtr			gp_shared_IRQ_Dc_vector;

extern unsigned char	gp_old_PCI;

extern unsigned char	gp_Hc_IRQ_num;
extern unsigned char	gp_force_to_use_ISA;
extern unsigned char	gp_charge_pump_external;


/****************************************************************************/
/*	function prototypes														*/
/****************************************************************************/

/*********	IO port access functions	*********/

unsigned short	hwacces_get_ISA_base_address( void );

void			read_direct_access( unsigned short address, unsigned char *data, unsigned short length  );
void			write_direct_access( unsigned short address, unsigned char *data, unsigned short length  );

void 			read_register_burst_char( unsigned short register_address, unsigned char *data, unsigned short length  );
void 			write_register_burst_char( unsigned short register_address, unsigned char *data, unsigned short length  );

unsigned long	read_register32( unsigned short register_address );
unsigned short	read_register16( unsigned short register_address );

void			write_register32( unsigned short register_address, unsigned long value );
void			write_register16( unsigned short register_address, unsigned short value );

void			hwacces_erase_all( void );
void			hwacces_memory_test( void );


/*********	IO port access initialization	*********/

void			hwacces_io_port_access_initialize( void );

void			hwacces_isr_hw_disable( void );
void			hwacces_isr_hw_enable( void );

/*********	ISR install/restore functions	*********/

isrPtr			hwacces_install_isr( int irq_num, isrPtr new_vector );
void			hwacces_restore_isr(  int irq_num, isrPtr old_vector );
void			hwacces_clear_interrupt_controller( void );

⌨️ 快捷键说明

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