Everything_Computers_Logo.JPG (16666 bytes)

IWE Logo.gif (3354 bytes)

Nav Bar.GIF (5852 bytes)

Plugged In

April 27, 1998

Solving the PCI IRQ dilemma

By Bob O'Donnell

One of the more frustrating aspects of configuring computers is resolving resource conflicts. In fact, I think it's the most confounding computer troubleshooting experience there is. (Of course, the fact that we still have to worry about configuring computers at all is frustrating itself -- but that's a topic for another column.)

The most common resource conflicts involve interrupt requests, or IRQs, with ISA and ISA/X-bus-based peripherals found inside PCs. IRQ conflicts have been the bane of end-users and help-desk personnel for many years but they're becoming increasingly common because more and more computers are being shipped with few, if any, available IRQs. (See one of my previous columns, "The case of the missing IRQs," for more.)

There are solutions for adding more IRQs via additional interrupt controllers, but they're typically only found in high-end workstations and servers because of the costs and complexities involved in implementing them. To address this ongoing problem, computer vendors have instead focused on other technologies, including the PCI bus, that attempt to sidestep the issue by not using IRQs.

At least, that's what the theory is. In reality, however, PCI devices often do use IRQs, much to the frustration of those trying to resolve IRQ conflicts. In fact, in many situations they use multiple IRQs, which makes even fewer available for other devices (such as Plug-and-Play-compatible ISA cards). Trying to figure out why this is the case and finding solutions to fix these types of situations has proven to be surprisingly difficult.

Here's what I've found so far: In a mixed environment of ISA and PCI devices (which means every PC with PCI slots now available), PCI devices generally have to use at least one IRQ to maintain compatibility with today's operating systems. Perhaps in the future when the ISA bus has been banished from existence via the PC 98 and PC 99 specs, PCI IRQs won't be an issue, but they still are now.

The ability for several PCI devices to share that single IRQ is dependent primarily on a computer's BIOS. Some BIOSes have settings that let you enable PCI IRQ sharing, but many do not. In those situations, the BIOS either supports PCI IRQ sharing or it doesn't. If it doesn't, PCI devices (including the PCI-to-Universal Serial Bus (USB) controller found in most newer machines) each uses an IRQ. In fact, if you have enough PCI devices, you can eventually use as many as four individual IRQs, one for each of the four independent PCI interrupts. If you were somehow able to add a fifth PCI device, it would automatically share with one of the first four devices. (Actually, the number of IRQs required jumps to six if you include the dual PCI Integrated Drive Electronics (IDE) controllers found on most machines. To maintain backwards compatibility with IDE, these devices must be set to IRQs 14 and 15 and cannot be shared with any other PCI devices.)

You can sometimes work around this in Windows 95 (OEM Service Release 2 or later only), by turning on an option called IRQ Steering (you'll find it in the PCI Bus setting of the Device Manager). IRQ Steering and the associated "Get IRQ Table from PCIBIOS 2.1 Call" checkbox allow the OS to help manage the assigning of PCI devices to IRQs, taking over some of this capability from the BIOS. In my particular situation it didn't help, however, because my PCI video card and USB controller simply refuse to share an IRQ. As a result, the only way I can get my extra ISA serial port card to work is by disabling the USB port -- not exactly what I call an elegant solution.

If you are having PCI IRQ problems, another possible solution I stumbled across is moving a PCI card to a different slot. On many machines the internal PCI Interrupts (commonly labeled A-D) are actually assigned to individual slots, instead of individual cards. Because the PCI Interrupts are each commonly mapped to different IRQs, making this move can change the IRQ that a PCI card uses.

The fact that PCI IRQ issues don't have more definitive, widely known answers is astonishing to me, given how many people are running into these types of problems. Then again, I guess it just proves once again how far we still are from truly user-friendly PCs. Now where is my Macintosh ... .


© Copyright 1998, by InfoWorld Publishing Corp., a subsidiary of IDG Communications, Inc. Reprinted from InfoWorld, 155 Bovet Road, San Mateo, CA 94402. Further reproduction is prohibited.

 

 


Home | Radio | Television | Books | Magazines | Consulting | What's New

Search | Feedback | Troubleshooting Guide | Audio | Site Map

Send mail to bob@everythingtechnology.com with questions or comments about this web site.
Copyright © 1997- 2005 O'Donnell Enterprises. All rights reserved.
Last modified: January 01, 2005
Web site hosting provided by Global Network Services