Configuration of ISA Plug&Play Cards
The following chapters will describe
how you can set up your ISA plug&play adapter. Please note that
we do not consider this mini HOWTO complete, nor do we guarantie that
you will be able to get your card up and running under Linux by following
the following steps.
To be able to use Plug&Play
(PnP) hardware with the current stable kernels (2.0.x Serie) the installation
of the isapnptools package is highly recommended; there are alternative
packages available, but we think that the isapnptools package is the most
widely spread one. Thus this Handbook assumes you are using this package
(current release 1.12) which is available at http://www.roestock.demon.co.uk/isapnptools/index.html.
The installation of this package does not include any magic, nevertheless
you should completely read the included INSTALL file, especially
if you are using a libc later than libc-5.2.18 (which is most
likely the case).
After the installation was completed successfully (which has to be done
as root) two new user commands are available ('binaries')namely
pnpdump and isapnp.
The binary pnpdump is responsible for reading info about the
cards connected to the ISA bus, the mose intuitive thing to do is to have
it write its output to a file: pnpdump > /etc/isapnp.conf
Note that this requires root permissions, as you are directly
accessing hardware and writing to a system folder.
The generated configuration file now contains all possible configurations
of IRQs and I/O base addresses that will be accepted by every connected
ISA card. With the help of /proc/interrupts
and /proc/pci we can now determine,
which IRQs are still free and can then distribute them among the ISA cards.
There is an easier method of determining free IRQs and I/O addresses,
given you have installed Microsoft Windows on another partition. E.g.
under Windows '95 you will find the data of interest in "System Properties/
Device Manager/". Just click on an interesting device (isdncard),
choose 'Properties/Ressources' and write down the data you need (interrupts
and IO addresses of the ISDN adapter and oftentimes those of your soundcard).
Now go back to Linux.
Get root permissions and edit the file /etc/isapnp.conf.
Have a look at the available IRQ and I/O address combinations and choose
one (just like answering a multiple choice test). You may delete the unused
entries or comment them out (prepend '#'); the latter has the advantage
that in case of a card detection failure you can go back and try another
one. As soon as the installation was successful, however, it is recommended
that you delete all unused entries. Be warned: if you run pnpdump
when cards are already set up by isapnp you will probably freeze
your machine...
This is the configuration file for my Elsa Quickstep 1000:
# Logical device id ELS0133
#
(CONFIGURE ELS0133/0 (LD 0
(IO 0 (BASE 0x0160))
(INT 0 (IRQ 10 (MODE +E)))
(ACT Y)
))
This script configures the
card using IRQ 10 and I/O base address 0x0160. A real output would contain
additional information depending on how many ISA-PnP-Karten are built
into your computer, I recommend leaving these entries untouched for
now - not all cards can be as easily configured as passive ISDN adapters
(a Soundblaster AWE32/64 needs some additional magic before it works).
Before writing a bootscript for the isapnp call it is highly
recommended that you call isapnp manually once (a critical
error at boot time is usually devastating - on a booted system it is
a lot less problematic): isapnp /etc/isapnp.conf
Errors added during editing (common: too many/not enough parentheses
or a forgotten(ACT Y) ) will show now and can be easily corrected.
As soon as that is done, you may include the isapnp call in
your bootscripts, using Slackware /etc/rc.d/rc.M (Multiuser-Level)
is a good place ( Debian can create a sript based on /etc/init.d/skeleton
and add it using the update-rc.d command.
kISDN can currently
only load the HiSax module; for all cards not listed below, the modules
will have to be loaded manually before kISDN is loaded (with all
necessary parameters); documentation for the Linux ISDN driver can be
found at /usr/src/linux/Documentation/isdn.
Since Linux 2.0.31 the HiSax driver is integrated into the kernel sourcetree,
earlier kernel versions require a patch. It is the best idea then, to
patch all the way up to the latest stable kernel (now: 2.0.36) to get
rid of the Teardrop bugs (for details on the kernel configuration, see
the appropriate Section in this Handbook).
Back to the overview
T. Westheider, Ch. Demmer, Ch. Zander
/ January 8 1999 - kISDN Release 0.8.0
|