#ifndef __AD7879_H__
#define __AD7879_H__

#define u8 unsigned char
#define u16 unsigned short
#define u32 unsigned int

void Init_AD7879_Interrupt(void);
void Assign_AD7879_IntVector(ex_handler_fn func);
void Read_AD7879(u8 RegAddress, u16 *pu16Data);
void Write_AD7879(u8 RegAddress, u16 u16Data);
void Enable_PENIRQ(void);
void Disable_PENIRQ(void);
void Clear_PENIRQ(void);

#define CONTROL_REG_1			0x01
#define CONTROL_REG_2			0x02
#define CONTROL_REG_3			0x03
#define AUX_VBAT_HIGH_REG		0x04
#define AUX_VBAT_LOW_REG		0x05
#define TEMP_HIGH_REG			0x06
#define TEMP_LOW_REG			0x07
#define Y_POSITION_REG			0x08
#define X_POSITION_REG			0x09
#define Z1_TOUCH_PRESSURE_REG	0x0A
#define Z2_TOUCH_PRESSURE_REG	0x0B
#define AUX_VBAT				0x0C
#define TEMP					0x0D
#define REV_DEV_ID_REG			0x0E



#endif /* __AD7879_H__ */
