/************************************************/ /* */ /* File : rockhard_private.h */ /* Description : ROCK hardware base access */ /* internal */ /* */ /* Author: Sfiligoi Igor */ /* */ /* Created : 02.04.1997 */ /* Last modified: 02.04.1997 */ /* */ /************************************************/ #ifndef ROCKHARD_PRIVATE_H #define ROCKHARD_PRIVATE_H /********************************************************************/ /* Register offsets */ /* DO NOT USE DIRECTLY IF NOT REALLY NECESSARY */ /********************************************************************/ /* internal registers (8 bit)*/ #define ROCKH_RESET_ofs 0x21 #define ROCKH_FIFO_ofs 0x23 #define ROCKH_WATCHDOG_ofs 0x25 #define ROCKH_CSR0_ofs 0x27 #define ROCKH_CSR1_ofs 0x29 #define ROCKH_CSR2_ofs 0x2b #define ROCKH_ELAPSED_ofs 0x2d #define ROCKH_TRIGGER_ofs 0x2f /* info registers (16 bit)*/ #define ROCKH_TQUE_ofs 0x30 #define ROCKH_TNOW_ofs 0x32 #define ROCKH_ROCKINFO_ofs 0x34 #define ROCKH_GOLDEN_ofs 0x36 /* FIFO registers I/O (32 bit)*/ #define ROCKH_EFRD_ofs 0x0 /* could be 00/04/08/0c */ #define ROCKH_DFRD_ofs 0x10 /* could be 10/14/18/1c */ #define ROCKH_FWRT_ofs 0x0 /* could be 00/04/08/0c/10/14/18/1c */ /********************************************************************/ /* Page offsets */ /* DO NOT USE DIRECTLY IF NOT REALLY NECESSARY */ /********************************************************************/ #define ROCKH_PAGE_INTERNAL_ofs 0x20 #define ROCKH_PAGE_INFO_ofs 0x30 /*********************************************************************/ /* read routines */ /* return the read value */ /*********************************************************************/ /***********************/ /* generic */ /* Do not use directly */ /***********************/ unsigned char rockh_read_reg08(ROCKH_id rock_id, /* IN */ unsigned int offset); /* IN */ unsigned short rockh_read_reg16(ROCKH_id rock_id, /* IN */ unsigned int offset); /* IN */ unsigned int rockh_read_reg32(ROCKH_id rock_id, /* IN */ unsigned int offset); /* IN */ /*********************************************************************/ /* write routines */ /*********************************************************************/ /***********************/ /* generic */ /* Do not use directly */ /***********************/ int rockh_write_reg08(ROCKH_id rock_id, /* IN */ unsigned int offset, /* IN */ unsigned char reg, /* IN */ unsigned char testmask); /* IN, test if >0*/ int rockh_write_reg16(ROCKH_id rock_id, /* IN */ unsigned int offset, /* IN */ unsigned short reg, /* IN */ unsigned short testmask); /* IN, test if >0 */ int rockh_write_reg32(ROCKH_id rock_id, /* IN */ unsigned int offset, /* IN */ unsigned int reg, /* IN */ unsigned int testmask); /* IN, test if >0 */ /*********************************************************************/ /* readpage routines */ /*********************************************************************/ /***********************/ /* internal */ /* Do not use directly */ /***********************/ int rockh_readpage_i_internal(ROCKH_id rock_id, /* IN */ ROCKH_INTERNAL_regs *internal); /* OUT */ int rockh_readpage_i_info(ROCKH_id rock_id, /* IN */ ROCKH_INFO_regs *info); /* OUT */ /*********************************************************************/ /* readfifo routines */ /* raw fifo values are returned */ /*********************************************************************/ /***********************/ /* generic */ /* Do not use directly */ /***********************/ int rockh_readfifo_fifo(ROCKH_id rock_id, /* IN */ unsigned int offset, /* IN */ unsigned int nrels, /* IN */ unsigned char raw, /* IN, if >0, raw fifo values are returned */ unsigned int *buffer, /* IN/OUT */ unsigned int *count); /* OUT, nr of els really read */ #endif /* ROCKHARD_PRIVATE_H */