2.1.99 thinks ide0 is irq 12

Stanislav Meduna (stano@trillian.eunet.sk)
Sat, 2 May 1998 10:14:01 +0200 (CEST)


I would like to report a problem regarding IDE initialisation
probably interfering with not quite standard serial port

uniprocessor PPro, Natoma chipset
IDE interface: Intel 82371SB PIIX3 IDE (rev 0)
on-board standard serial and parallel ports
add-on card with two serial and one parallel port
ttyS2 on irq 11, ttyS3 on irq 12
no PS/2 mouse
IDE disks at hda and hdc
IDE CDROM at hdd

kernels 2.1.98 and 2.1.99
PnP support enabled
no additional serial port options
no PS/2 mouse configured

Problem: after the computer is switched on, the kernel starts,
finds all serial ports (but of course guesses IRQ 4 and 3
for ttyS2 and ttyS3). The kernel then fails to probe for ide0
and dies (well, it's hard to boot without the root
filesystem :-)):

PCI: PCI BIOS revision 2.10 entry at 0xfb290
PCI: Probing PCI hardware.
Starting kswapd v 1.5
Serial driver version 4.25 with enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
ttyS02 at 0x03e8 (irq = 4) is a 16550A
ttyS03 at 0x02e8 (irq = 3) is a 16550A
PIIX3: IDE controller on PCI bus 00 dev 39
PIIX3: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:pio, hdd:pio
hda: IBM-DHEA-34330, ATA DISK drive
hdc: WDC AC2850F, ATA DISK drive
ide2: ports already in use, skipping probe
ide1 at 0x170-0x177,0x376 on irq 15

After I boot with older kernel (or after the machine warms up -
I don't know) the machine starts up normally :-( I'm trying
to isolate the problem with disabling autodetection of ide2-ide5
and hardcoding irq 11 and 12 to the serial driver, but as
this is not 100% reproducible, it will take some time.

BTW, the reported irq _was_ negative - I have no idea what this
means, as the line in ide-probe.c just writes the irq out
and I have not found the negation anywhere ...

I am pretty sure that I have booted 2.1.98 two or three times
without these problems. I suspect some time-dependent IRQ clash
between the serial and IDE driver. I don't think there is problem
with ide0 - the kernel was loaded from the same drive.

The interesting thing is that I am unable to change irq for ttyS2
with setserial:

# setserial /dev/ttyS2 irq 11
/dev/ttyS2: Device or resource busy

The 2.1.88 worked flawlessly, but I had irq 11 and 12 hardcoded
for ttyS2-3 in serial.c because of the setserial thing (I need
the card because of parallel port and I don't use the serial
ones, but not having the hw initialised correctly irritates
me :-)). Now this has apparently moved to serial.h and I have
yet to change it there.



- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu