summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/isdn/README.icn
blob: 13f833d4e910c3b385f267359f3b451a38b1ad40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
$Id: README.icn,v 1.7 2000/08/06 09:22:51 armin Exp $

You can get the ICN-ISDN-card from:

Thinking Objects Software GmbH
Versbacher Röthe 159
97078 Würzburg
Tel: +49 931 2877950
Fax: +49 931 2877951

email info@think.de
WWW   http:/www.think.de


The card communicates with the PC by two interfaces:
  1. A range of 4 successive port-addresses, whose base address can be 
     configured with the switches.
  2. A memory window with 16KB-256KB size, which can be setup in 16k steps
     over the whole range of 16MB. Isdn4linux only uses a 16k window.
     The base address of the window can be configured when loading
     the lowlevel-module (see README). If using more than one card,
     all cards are mapped to the same window and activated as needed.

Setting up the IO-address dipswitches for the ICN-ISDN-card:

  Two types of cards exist, one with dip-switches and one with
  hook-switches.

  1. Setting for the card with hook-switches:

     (0 = switch closed, 1 = switch open)

     S3 S2 S1  Base-address
      0  0  0  0x300
      0  0  1  0x310
      0  1  0  0x320 (Default for isdn4linux)
      0  1  1  0x330
      1  0  0  0x340
      1  0  1  0x350
      1  1  0  0x360
      1  1  1  NOT ALLOWED!
    
  2. Setting for the card with dip-switches:

     (0 = switch closed, 1 = switch open)

     S1 S2 S3 S4  Base-Address
      0  0  0  0  0x300
      0  0  0  1  0x310
      0  0  1  0  0x320 (Default for isdn4linux)
      0  0  1  1  0x330
      0  1  0  0  0x340
      0  1  0  1  0x350
      0  1  1  0  0x360
      0  1  1  1  NOT ALLOWED!
      1  0  0  0  0x308
      1  0  0  1  0x318
      1  0  1  0  0x328
      1  0  1  1  0x338
      1  1  0  0  0x348
      1  1  0  1  0x358
      1  1  1  0  0x368
      1  1  1  1  NOT ALLOWED!

The ICN driver may be built into the kernel or as a module. Initialization
depends on how the driver is built:

Driver built into the kernel:

  The ICN driver can be configured using the commandline-feature while
  loading the kernel with LILO or LOADLIN. It accepts the following syntax:

  icn=p,m[,idstring1[,idstring2]]

  where

    p = portbase      (default: 0x320)
    m = shared memory (default: 0xd0000)

  When using the ICN double card (4B), you MUST define TWO idstrings.
  idstring must start with a character! There is no way for the driver
  to distinguish between a 2B and 4B type card. Therefore, by supplying
  TWO idstrings, you tell the driver that you have a 4B installed.
  
  If you like to use more than one card, you can use the program
  "icnctrl" from the utility-package to configure additional cards.
  You need to configure shared memory only once, since the icn-driver
  maps all cards into the same address-space.

  Using the "icnctrl"-utility, portbase and shared memory can also be
  changed during runtime.

  The D-channel protocol is configured by loading different firmware
  into the card's memory using the "icnctrl"-utility.


Driver built as module:

  The module icn.o can be configured during "insmod'ing" it by
  appending its parameters to the insmod-commandline. The following
  syntax is accepted:

    portbase=p membase=m icn_id=idstring [icn_id2=idstring2]

  where p, m, idstring1 and idstring2 have the same meanings as the
  parameters described for the kernel-version above.
      
  When using the ICN double card (4B), you MUST define TWO idstrings.
  idstring must start with a character! There is no way for the driver
  to distinguish between a 2B and 4B type card. Therefore, by supplying
  TWO idstrings, you tell the driver that you have a 4B installed.
  
  Using the "icnctrl"-utility, the same features apply to the modularized
  version like to the kernel-builtin one.

  The D-channel protocol is configured by loading different firmware
  into the card's memory using the "icnctrl"-utility.

Loading the firmware into the card:

  The firmware is supplied together with the isdn4k-utils package. It
  can be found in the subdirectory icnctrl/firmware/

  There are 3 files:

    loadpg.bin   - Image of the bootstrap loader.
    pc_1t_ca.bin - Image of firmware for german 1TR6 protocol.
    pc_eu_ca.bin - Image if firmware for EDSS1 (Euro-ISDN) protocol.

  Assuming you have installed the utility-package correctly, the firmware
  will be downloaded into the 2B-card using the following command:

    icnctrl -d Idstring load /etc/isdn/loadpg.bin /etc/isdn/pc_XX_ca.bin

  where XX is either "1t" or "eu", depending on the D-Channel protocol
  used on your S0-bus and Idstring is the Name of the card, given during
  insmod-time or (for kernel-builtin driver) on the kernel commandline.

  To load a 4B-card, the same command is used, except a second firmware
  file is appended to the commandline of icnctrl.

  -> After downloading firmware, the two LEDs at the back cover of the card
     (ICN-4B: 4 LEDs) must be blinking intermittently now. If a connection
     is up, the corresponding led is lit continuously.

  For further documentation (adding more ICN-cards), refer to the manpage
  icnctrl.8 which is included in the isdn4k-utils package.