lkml.org 
[lkml]   [2000]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 3c59x: Using bad IRQ 0
Tobias Ringstrom wrote:
> When saying yes to "Plug-and-play OS" in the BIOS, my 3Com 905C adapter
> stops working, since the driver tries to use IRQ 0, since the BIOS does
> not assign an IRQ to it. The driver seems to read the IRQ from the card
> before it calls pci_enable_device (and pci_set_master).

> eth0: 3Com PCI 3c905C Tornado at 0xa400, PCI: Enabling device 00:0a.0 (0014 -> 0017)
> PCI: Assigned IRQ 9 for device 00:0a.0
> 00:01:02:b4:18:e4, IRQ 0

Tobias, can you confirm that calling pci_enable_device before reading
dev->irq fixes the 3c59x.c problem for you?

It sounds like the 2.4 kernel can now support "plug-n-play OS" BIOS
setting, AFAICS.

If moving pci_enable_device above any dev->irq checks solves Tobias'
problem, we need to go through the PCI drivers and make sure we check
things in the correct order in all PCI drivers. I wonder if we
shouldn't move pci_resource_xxx calls until after pci_enable_device too.

A caveat to this whole scheme is that usb-uhci -already- calls
pci_enable_device before checking dev->irq, and yet cannot get around
the "assign IRQ to USB: no" setting in BIOS. I hope that is an
exception rather than the rule.

Regards,

Jeff


--
Jeff Garzik |
Building 1024 | The chief enemy of creativity is "good" sense
MandrakeSoft | -- Picasso
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:47    [W:0.416 / U:0.236 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site