Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-2.6] / Documentation / isdn / README.icn
1 $Id: README.icn,v 1.7 2000/08/06 09:22:51 armin Exp $
2
3 You can get the ICN-ISDN-card from:
4
5 Thinking Objects Software GmbH
6 Versbacher Röthe 159
7 97078 Würzburg
8 Tel: +49 931 2877950
9 Fax: +49 931 2877951
10
11 email info@think.de
12 WWW   http:/www.think.de
13
14
15 The card communicates with the PC by two interfaces:
16   1. A range of 4 successive port-addresses, whose base address can be 
17      configured with the switches.
18   2. A memory window with 16KB-256KB size, which can be setup in 16k steps
19      over the whole range of 16MB. Isdn4linux only uses a 16k window.
20      The base address of the window can be configured when loading
21      the lowlevel-module (see README). If using more than one card,
22      all cards are mapped to the same window and activated as needed.
23
24 Setting up the IO-address dipswitches for the ICN-ISDN-card:
25
26   Two types of cards exist, one with dip-switches and one with
27   hook-switches.
28
29   1. Setting for the card with hook-switches:
30
31      (0 = switch closed, 1 = switch open)
32
33      S3 S2 S1  Base-address
34       0  0  0  0x300
35       0  0  1  0x310
36       0  1  0  0x320 (Default for isdn4linux)
37       0  1  1  0x330
38       1  0  0  0x340
39       1  0  1  0x350
40       1  1  0  0x360
41       1  1  1  NOT ALLOWED!
42     
43   2. Setting for the card with dip-switches:
44
45      (0 = switch closed, 1 = switch open)
46
47      S1 S2 S3 S4  Base-Address
48       0  0  0  0  0x300
49       0  0  0  1  0x310
50       0  0  1  0  0x320 (Default for isdn4linux)
51       0  0  1  1  0x330
52       0  1  0  0  0x340
53       0  1  0  1  0x350
54       0  1  1  0  0x360
55       0  1  1  1  NOT ALLOWED!
56       1  0  0  0  0x308
57       1  0  0  1  0x318
58       1  0  1  0  0x328
59       1  0  1  1  0x338
60       1  1  0  0  0x348
61       1  1  0  1  0x358
62       1  1  1  0  0x368
63       1  1  1  1  NOT ALLOWED!
64
65 The ICN driver may be built into the kernel or as a module. Initialization
66 depends on how the driver is built:
67
68 Driver built into the kernel:
69
70   The ICN driver can be configured using the commandline-feature while
71   loading the kernel with LILO or LOADLIN. It accepts the following syntax:
72
73   icn=p,m[,idstring1[,idstring2]]
74
75   where
76
77     p = portbase      (default: 0x320)
78     m = shared memory (default: 0xd0000)
79
80   When using the ICN double card (4B), you MUST define TWO idstrings.
81   idstring must start with a character! There is no way for the driver
82   to distinguish between a 2B and 4B type card. Therefore, by supplying
83   TWO idstrings, you tell the driver that you have a 4B installed.
84   
85   If you like to use more than one card, you can use the program
86   "icnctrl" from the utility-package to configure additional cards.
87   You need to configure shared memory only once, since the icn-driver
88   maps all cards into the same address-space.
89
90   Using the "icnctrl"-utility, portbase and shared memory can also be
91   changed during runtime.
92
93   The D-channel protocol is configured by loading different firmware
94   into the card's memory using the "icnctrl"-utility.
95
96
97 Driver built as module:
98
99   The module icn.o can be configured during "insmod'ing" it by
100   appending its parameters to the insmod-commandline. The following
101   syntax is accepted:
102
103     portbase=p membase=m icn_id=idstring [icn_id2=idstring2]
104
105   where p, m, idstring1 and idstring2 have the same meanings as the
106   parameters described for the kernel-version above.
107       
108   When using the ICN double card (4B), you MUST define TWO idstrings.
109   idstring must start with a character! There is no way for the driver
110   to distinguish between a 2B and 4B type card. Therefore, by supplying
111   TWO idstrings, you tell the driver that you have a 4B installed.
112   
113   Using the "icnctrl"-utility, the same features apply to the modularized
114   version like to the kernel-builtin one.
115
116   The D-channel protocol is configured by loading different firmware
117   into the card's memory using the "icnctrl"-utility.
118
119 Loading the firmware into the card:
120
121   The firmware is supplied together with the isdn4k-utils package. It
122   can be found in the subdirectory icnctrl/firmware/
123
124   There are 3 files:
125
126     loadpg.bin   - Image of the bootstrap loader.
127     pc_1t_ca.bin - Image of firmware for german 1TR6 protocol.
128     pc_eu_ca.bin - Image if firmware for EDSS1 (Euro-ISDN) protocol.
129
130   Assuming you have installed the utility-package correctly, the firmware
131   will be downloaded into the 2B-card using the following command:
132
133     icnctrl -d Idstring load /etc/isdn/loadpg.bin /etc/isdn/pc_XX_ca.bin
134
135   where XX is either "1t" or "eu", depending on the D-Channel protocol
136   used on your S0-bus and Idstring is the Name of the card, given during
137   insmod-time or (for kernel-builtin driver) on the kernel commandline.
138
139   To load a 4B-card, the same command is used, except a second firmware
140   file is appended to the commandline of icnctrl.
141
142   -> After downloading firmware, the two LEDs at the back cover of the card
143      (ICN-4B: 4 LEDs) must be blinking intermittently now. If a connection
144      is up, the corresponding led is lit continuously.
145
146   For further documentation (adding more ICN-cards), refer to the manpage
147   icnctrl.8 which is included in the isdn4k-utils package.
148