Bug 35111 - rc.sysinit & isapnp problem
Summary: rc.sysinit & isapnp problem
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: initscripts   
(Show other bugs)
Version: 7.3
Hardware: i386 Linux
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact: David Lawrence
Depends On:
TreeView+ depends on / blocked
Reported: 2001-04-07 08:29 UTC by Gerald Teschl
Modified: 2014-03-17 02:20 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2005-09-29 19:03:38 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
/proc/isapnp after boot (2.23 KB, text/plain)
2001-05-04 08:06 UTC, Gerald Teschl
no flags Details
/proc/isapnp after calling userland isapnp (2.31 KB, text/plain)
2001-05-04 08:06 UTC, Gerald Teschl
no flags Details

Description Gerald Teschl 2001-04-07 08:29:46 UTC
The test

if [ -x /sbin/isapnp -a -f /etc/isapnp.conf -a ! -f /proc/isapnp ]

in rc.sysinit is problematic. I have a opl3sa2 sound card and the file
/proc/isapnp exisits on my system. However, the opl3sa2 will only
work if isapnp is called an the irq/io stuff is passed to the driver.

Hence, rc.sysinit will fails to set up sound for me even tough it is
configured correctly. Plese remove the "-a ! -f /proc/isapnp" part.

Comment 1 Bill Nottingham 2001-04-08 01:47:06 UTC

Userland and kernel isapnp are incompatible.

Comment 2 Gerald Teschl 2001-04-17 14:04:21 UTC
I'm no kernel expert, but this is my point of view:
If I let the kernel/module do the isapnp stuff I get "No pnp cards found" (even
it shows up in/proc/isapnp). If I use userland isapnp it works!!! And this is
all that matters to me!

So please either fix the kernel/module or fix rc.sysinit. Thanks.

Comment 3 Bill Nottingham 2001-04-17 14:55:20 UTC
what is in /proc/isapnp for you?

Comment 4 Nils Barth 2001-05-04 07:26:14 UTC
I have the same problem.
I have a Soundblaster AWE32 PnP soundcard.
As far as I can tell, the problem is that the kernel detects the PnP card,
but doesn't activate it.
Thus, the module (in my case sb.o) cannot detect it, and thus fails.

What I think gt means when he says that it's detected in /proc/isapnp is that
the card is detected in there, but is listed as not active (i.e., no IO/IRQ/DMA

I'll upload attachments showing /proc/isapnp in both cases.

Comment 5 Gerald Teschl 2001-05-04 08:04:43 UTC
Aha, now I understand, the kernel is supposed to activate the card. Well, here
is the information:
(1) Right after booting /proc/isapnp reads:
Card 1 'YMH0800:YAMAHA OPL3-SAx Audio System' PnP version 1.0
  Logical device 0 'YMH0021:Unknown'
    Device is not active
    Active DMA 0,0
    Resources 0
Trying to insert the module with both options isapnp=0|1 will fail.
(2) Calling userland isapnp it reads
Card 1 'YMH0800:YAMAHA OPL3-SAx Audio System' PnP version 1.0
  Logical device 0 'YMH0021:Unknown'
    Device is active
    Active port 0x220,0x530,0x388,0x330,0x370
    Active IRQ 5 [0x2]
    Active DMA 0,1
    Resources 0
and now I can insert the module with "isapnp=1" or "isapnp=0 irq=....."

I'll attach both as isapnp1.txt and isapnp2.txt to this bug.

Comment 6 Gerald Teschl 2001-05-04 08:06:04 UTC
Created attachment 17306 [details]
/proc/isapnp after boot

Comment 7 Gerald Teschl 2001-05-04 08:06:49 UTC
Created attachment 17307 [details]
/proc/isapnp after calling userland isapnp

Comment 8 Aleksey Nogin 2001-05-16 02:02:42 UTC
See bug #40551 for another example of a situation where isapnp is needed. In my
case, the sounc card is initialized fine with RH scripts, but I still need
userland isapnp to activate my ISA-to-PCMCIA bridge.

Comment 9 Gerald Teschl 2002-02-17 16:22:35 UTC
This problem is still present in 7.2. The opl3sa2 modul will not
activate my sound card and I have to use

echo "card 0 YMH0800
dev 0 YMH0021
port 0 0x220
port 1 0x530
port 2 0x388
port 3 0x330
port 4 0x370
irq 0 5
dma 0 0
dma 1 1
dev 0 YMH0022
port 0 0x201
activate" > /proc/isapnp
in order to activate the card before the opl3sa2 module gets loaded.
Currently there seems no way to do this without editing rc.sysinit.

Comment 10 Gerald Teschl 2002-05-25 13:37:47 UTC
Could you please provide a hook in rc.sysinit such that one can activate
cards via

echo "..." > /proc/isapnp

Comment 11 Bill Nottingham 2005-09-29 19:03:38 UTC
This is all handled in a much more sane manner in current releases via udev and
ID matching. Hence, closing.

Note You need to log in before you can comment on or make changes to this bug.