linux/drivers/isdn/hisax/icc.h
<<
>>
Prefs
   1/* $Id: icc.h,v 1.4.2.2 2004/01/12 22:52:26 keil Exp $
   2 *
   3 * ICC specific routines
   4 *
   5 * Author       Matt Henderson & Guy Ellis
   6 * Copyright    by Traverse Technologies Pty Ltd, www.travers.com.au
   7 *
   8 * This software may be used and distributed according to the terms
   9 * of the GNU General Public License, incorporated herein by reference.
  10 *
  11 * 1999.7.14 Initial implementation of routines for Siemens ISDN
  12 * Communication Controller PEB 2070 based on the ISAC routines
  13 * written by Karsten Keil.
  14 */
  15
  16/* All Registers original Siemens Spec  */
  17
  18#define ICC_MASK 0x20
  19#define ICC_ISTA 0x20
  20#define ICC_STAR 0x21
  21#define ICC_CMDR 0x21
  22#define ICC_EXIR 0x24
  23#define ICC_ADF2 0x39
  24#define ICC_SPCR 0x30
  25#define ICC_ADF1 0x38
  26#define ICC_CIR0 0x31
  27#define ICC_CIX0 0x31
  28#define ICC_CIR1 0x33
  29#define ICC_CIX1 0x33
  30#define ICC_STCR 0x37
  31#define ICC_MODE 0x22
  32#define ICC_RSTA 0x27
  33#define ICC_RBCL 0x25
  34#define ICC_RBCH 0x2A
  35#define ICC_TIMR 0x23
  36#define ICC_SQXR 0x3b
  37#define ICC_MOSR 0x3a
  38#define ICC_MOCR 0x3a
  39#define ICC_MOR0 0x32
  40#define ICC_MOX0 0x32
  41#define ICC_MOR1 0x34
  42#define ICC_MOX1 0x34
  43
  44#define ICC_RBCH_XAC 0x80
  45
  46#define ICC_CMD_TIM    0x0
  47#define ICC_CMD_RES    0x1
  48#define ICC_CMD_DU     0x3
  49#define ICC_CMD_EI1    0x4
  50#define ICC_CMD_SSP    0x5
  51#define ICC_CMD_DT     0x6
  52#define ICC_CMD_AR     0x8
  53#define ICC_CMD_ARL    0xA
  54#define ICC_CMD_AI     0xC
  55#define ICC_CMD_DI     0xF
  56
  57#define ICC_IND_DR     0x0
  58#define ICC_IND_FJ     0x2
  59#define ICC_IND_EI1    0x4
  60#define ICC_IND_INT    0x6
  61#define ICC_IND_PU     0x7
  62#define ICC_IND_AR     0x8
  63#define ICC_IND_ARL    0xA
  64#define ICC_IND_AI     0xC
  65#define ICC_IND_AIL    0xE
  66#define ICC_IND_DC     0xF
  67
  68extern void ICCVersion(struct IsdnCardState *cs, char *s);
  69extern void initicc(struct IsdnCardState *cs);
  70extern void icc_interrupt(struct IsdnCardState *cs, u_char val);
  71extern void clear_pending_icc_ints(struct IsdnCardState *cs);
  72extern void setup_icc(struct IsdnCardState *);
  73