Originally Published: Tuesday, 24 October 2000 Author: Mike Baker
Published to: interact_articles_irc_recap/IRC Recap Page: 1/1 - [Printable]

Best of IRC for Tuesday, October 24th

It's time once again for another edition of Best of IRC. As always, we'll be taking an in-depth look at some of the questions asked on #Linuxhelp.If you haven't already been to #Linuxhelp, you'll find instructions on how to get there at the bottom of the Live! page; feel free to stop by and ask questions or possibly even answer a few. We appreciate any help we can get.

   Page 1 of 1  

isapnp

Well, there's a how-to about anything ;-)
<pseudo> Ok, I can't seem to get my soundcard working uder Debian. Could I in theory, install another distro and copy the config files and go back and install Debian with those files?
<Dazman> pseudo: Yes, but that's pointless.
<Dazman> pseudo: What card is it?
<pseudo> sb awe 32
<Dazman> ISA
<Dazman> isapnp tools :)
<pseudo> ok...
<Dazman> pseudo: pnpdump > /etc/isapnp.conf
...
<shootrell> yanki: I remember installing an isa-ethernet adapter centuries ago. I think there are 2 commands you'l have to use when installing isa-boards: pnpdump and isapnp
<YaNKi> shootrell- that turns off pnp or what?
<shootrell> I don?t know if I remember right, but I think you'll have to use pnpdump to gather information about installed boards. pnpdump > somefile.conf
<shootrell> then edit somefile and use it with isapnp
<YaNKi> whoa, thanks :)
<YaNKi> think there's a how-to page on modifying somefile & using with isapnp?
<shootrell> well, there's a how-to about anything ;-)
...
<quidquam> hello. I'm trying to get sound working under Linux. I have a SBawe64 PnP...
<quidquam> I just got to the point where isapnp /etc/isapnp.conf sees the card and it doesn't have any conflicts..

Expansion cards come in many forms, long and short, but did you know that there are different types of cards? I'm not talking about the difference between a video card and a sound card; I'm talking about the difference between ISA and PCI.

ISA (Industry Standard Adapter) is the precursor to PCI (Peripheral Connect Interface), and the source to many configuration headaches. ISA was one of the old original protocols designed in the days when you probably had a list of open ports taped to the inside of your PC. The original ISA cards had jumpers, and lots of them; designed to configure everything from IO to IRQ and in some cases even DMA. Configuration of these cards was downright confusing at times;thankfully, the idea of plug-and-play soon followed. ISA cards were now at least somewhat intelligent in that you could change the settings via software. Later PCI came along and suddenly everything automatically configured itself and even identified itself to the opperating system.

Unfortunately, we still need to deal with ISA at times, and to do that under Linux requires the use of a set of utilities called isapnp-tools. The isapnp-tools set consists of two items: pnpdump and isapnp. The basic idea to getting an ISApnp device working is to create an isapnp.conffile, run isapnp to load the settings then load the appropriate module. Let's take the example of setting up a Soundblaster Awe 32 card:

First, we need to create a configuration file for isapnp; this is basically a one-time thing that we only need to do when we're adding more ISA hardware.

pnpdump --config > /etc/isapnp.conf
The file generated by pnpdup can be extremely confusing with the massive amounts of comments, but when you ignore the comments, you end up withsomething looking like:
(READPORT 0x020b)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)

(CONFIGURE CTL00e4/318874353 (LD 0
(INT 0 (IRQ 5 (MODE +E)))
(DMA 0 (CHANNEL 1))
(DMA 1 (CHANNEL 5))
(IO 0 (SIZE 16) (BASE 0x0220))
(IO 1 (SIZE 2) (BASE 0x0330))
(NAME "CTL00e4/318874353[0]{Audio }")
(ACT Y)
))

The file format is simple; the only part you should need to concern yourself with is the individual card configuration. The card configuration starts at the CONFIGURE line; this includes a card identifier followed by a set of resources.Each resource is in the format (<type> <resource number> (<resource setting>)), and there will be comment lines before theresource setting to show you what the possible values are. You only need to change the settings if you find the settings generated by pnpdump's --config option didn't work.

The next thing you'll want to do is to try these settings by running isapnp. On most systems, the startup sequence will check for a /etc/isapnp.conf and automatically run isapnp, so there's no point changing the startup scripts. To avoid rebooting we'll just run isapnp ourselves, though.

isapnp /etc/isapnp.conf

At this point you'll see some nicely formatted output telling you your cards have been initalized; this is our queue to load the module. Since the example we're doing is the Soundblaster Awe 32, we need to load the sb.o module and tell it where to find the card. The settings are the same as from the isapnp.conf file which are printed out again when running isapnp.

modprobe sb irq=5 dma=1 dma16=5 io=0x220

At this point, the our example card should be working. To avoid having to modprobe the sb module on startup each time, we can add the following lines to /etc/modules.conf (occasionally called /etc/conf.modules by different versions)

alias sound-slot-0 sb
options sb irq=5 dma=1 dma16=5 io=0x220

And there, in a nutshell, we've covered the basics of isapnp. Go amaze your friends with your newfound knowledge of Linux. For more information on plug-and-play and its uses under Linux, please check out the Plug-and-Play HOWTO.





   Page 1 of 1