1

I was never able to use two serial ports for I/O on Linux that shared the same IRQ, although the serial driver has "IRQ sharing" enabled.

Some BIOS simply don't have enough IRQs to give to each port, and devices don't work (for more than simple output only communication) if the IRQ is shared. As an example, I now have a board with 8 serial ports (4 internal) and the BIOS only allows to assign 4 IRQs (and I need all ports).

It mostly works if one of the ports sharing the IRQ is not in use, but as soon as that port is put to use, both start behaving badly.

What could I be doing wrong? Is it even possible?

nlucas
  • 199
  • 1
  • 9
  • It should work perfectly. What is the actual symptom? And what board are you using? – David Schwartz Oct 26 '11 at 13:51
  • What board is that? Doesn't it have a driver for linux included? I had an 8-port board over 10 years ago (I think even ISA, I still have it in the cellar somewhere), and it used only 1 irq. – ott-- Oct 26 '11 at 13:55
  • This specific board is Atom based, but I never made it work on any PC board I tried. – nlucas Oct 26 '11 at 14:11
  • The symptoms vary widely from board to board, but usually they just stop receiving input or «freeze» output. – nlucas Oct 26 '11 at 14:12
  • ott: they are standard serial ports, no special driver is required other than the generic one. This happens even with 2 ports with shared IRQ connected directly to the board chipset. – nlucas Oct 26 '11 at 14:34
  • This has been officially supported since Linux 2.2, and if all ports are on the same physical device, it should *definitely* work. (On different physical devices or very old pre-PCI devices, you may encounter trouble if the hardware doesn't support IRQ sharing.) – David Schwartz Oct 26 '11 at 15:15
  • So my question would be: does modern PC commodity hardware support IRQ sharing? I know it should be supported, but I also know I never made it to work with any cheap PC motherboard I tried. – nlucas Oct 26 '11 at 15:44

0 Answers0