1 |
1625 |
jcastillo |
$Id: README.icn,v 1.1 2005-12-20 10:06:00 jcastillo 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 |
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
|
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 |
|
|
|
49 |
|
|
|
50 |
|
|
|
51 |
|
|
|
52 |
|
|
|
53 |
|
|
|
54 |
|
|
|
55 |
|
|
|
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 either may be build into kernel or as a module. Initialization
|
66 |
|
|
depends on how the drive 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 like
|
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 |
|
|
Assumed 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 of 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 dowloading 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 |
|
|
|