/***************************************************/
/*                                                 */
/* File        : rockbits_private.h                */
/* Description : ROCK bits interpreter - internal  */
/*                                                 */
/* Author: Sfiligoi Igor                           */
/*                                                 */
/* Created      : 02.04.1997                       */
/* Last modified: 02.04.1997                       */
/*                                                 */
/***************************************************/

#ifndef ROCKBITS_PRIVATE_H
#define ROCKBITS_PRIVATE_H

/********************************************************************/
/*                      Register bits                               */
/*                      if no mask specified, use 1                 */
/*                DO NOT USE DIRECTLY IF NOT REALLY NECESSARY       */
/********************************************************************/

/*  internal  */

#define ROCKB_RESET_CINTF          0
#define ROCKB_RESET_XINTF          2
#define ROCKB_RESET_TFIFO          1
#define ROCKB_RESET_EFIFO          3
#define ROCKB_RESET_DFIFO          4
#define ROCKB_RESET_AUXRST         5
#define ROCKB_RESET_INTRST         6
#define ROCKB_RESET_FLTRST         7

#define ROCKB_FIFO_DFF             7
#define ROCKB_FIFO_DHF             6
#define ROCKB_FIFO_DEF             5
#define ROCKB_FIFO_EFF             4
#define ROCKB_FIFO_EHF             3
#define ROCKB_FIFO_EEF             2
#define ROCKB_FIFO_TEF             1
#define ROCKB_FIFO_TFF             0

#define ROCKB_CSR0_EFMODE          4
#define ROCKB_CSR0_EFMODE_mask     0x3
#define ROCKB_CSR0_BOE             3
#define ROCKB_CSR0_TKNDIS          2
#define ROCKB_CSR0_INTTRG          1
#define ROCKB_CSR0_DIAG            0

#define ROCKB_CSR1_TKNIN           7
#define ROCKB_CSR1_TKNOUT          6
#define ROCKB_CSR1_CEOB            5
#define ROCKB_CSR1_CERR            4
#define ROCKB_CSR1_CRST            3
#define ROCKB_CSR1_CRNGT           2
#define ROCKB_CSR1_CBUSY           1
#define ROCKB_CSR1_CTRGV           0

#define ROCKB_CSR2_EFWREN          6
#define ROCKB_CSR2_AUXON           5
#define ROCKB_CSR2_TIMEOUT         4
#define ROCKB_CSR2_ELAPSED         3
#define ROCKB_CSR2_WSCALE          0
#define ROCKB_CSR2_WSCALE_mask     0x7

#define ROCKB_TRIGGER_HALT         7
#define ROCKB_TRIGGER_BUSY         6
#define ROCKB_TRIGGER_SYNCHF       5
#define ROCKB_TRIGGER_XBUSY        4
#define ROCKB_TRIGGER_XBERR        3
#define ROCKB_TRIGGER_TEST         0
#define ROCKB_TRIGGER_TEST_mask    0x3

/*  info  */

#define ROCKB_TQUE_TFF             13
#define ROCKB_TQUE_LINK            12
#define ROCKB_TQUE_QTRG            0
#define ROCKB_TQUE_QTRG_mask       0xFFF

#define ROCKB_TNOW_CSTATE          12
#define ROCKB_TNOW_CSTATE_mask     0xF
#define ROCKB_TNOW_PTRG            0
#define ROCKB_TNOW_PTRG_mask       0xFFF

#define ROCKB_ROCKINFO_SOF             13
#define ROCKB_ROCKINFO_EOF             12
#define ROCKB_ROCKINFO_SYNCRESPF       10
#define ROCKB_ROCKINFO_ROCKSFAIL       9
#define ROCKB_ROCKINFO_SLVSFAIL        8
#define ROCKB_ROCKINFO_LWADD           4
#define ROCKB_ROCKINFO_LWADD_mask      0xF
#define ROCKB_ROCKINFO_XADD            0
#define ROCKB_ROCKINFO_XADD_mask       0xF

#define ROCKB_GOLDEN_LAST              15
#define ROCKB_GOLDEN_CRADD             12
#define ROCKB_GOLDEN_CRADD_mask        0x7
#define ROCKB_GOLDEN_GOLDENREF         0
#define ROCKB_GOLDEN_GOLDENREF_mask    0xFFF

#define ROCKB_EDFIFO_NVD               31
#define ROCKB_EDFIFO_FF                30
#define ROCKB_EDFIFO_HF                29
#define ROCKB_EDFIFO_EF                28
#define ROCKB_EDFIFO_FIFODATA          0
#define ROCKB_EDFIFO_FIFODATA_mask     0x7FFFFFF

#endif /* ROCKBITS_PRIVATE_H */