Merge branch 'master' of git://git2.kernel.org/pub/scm/linux/kernel/git/torvalds...
[linux-2.6/linux-2.6-openrd.git] / drivers / isdn / hisax / icc.h
blobe7f593967e43ab9b9fb975992c36cbb2e066df1a
1 /* $Id: icc.h,v 1.4.2.2 2004/01/12 22:52:26 keil Exp $
3 * ICC specific routines
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.
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.
16 /* All Registers original Siemens Spec */
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
44 #define ICC_RBCH_XAC 0x80
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
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
68 extern void ICCVersion(struct IsdnCardState *cs, char *s);
69 extern void initicc(struct IsdnCardState *cs);
70 extern void icc_interrupt(struct IsdnCardState *cs, u_char val);
71 extern void clear_pending_icc_ints(struct IsdnCardState *cs);
72 extern void setup_icc(struct IsdnCardState *);