提交 7eb701dc 编写于 作者: K Kyle McMartin 提交者: Linus Torvalds

hisax_fcpcipnp: move request_irq later in probe

After a quick glance at the code, we're getting the DEBUG_SHIRQ spurious
interrupt before we have the adapter template filled in.  Real interrupts
appear to be turned on by fcpci*_init(), so move request_irq until just before
that.
Signed-off-by: NKyle McMartin <kmcmartin@redhat.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 e4465fda
......@@ -723,23 +723,6 @@ static int __devinit fcpcipnp_setup(struct fritz_adapter *adapter)
if (!request_region(adapter->io, 32, "fcpcipnp"))
goto err;
switch (adapter->type) {
case AVM_FRITZ_PCIV2:
retval = request_irq(adapter->irq, fcpci2_irq, IRQF_SHARED,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PCI:
retval = request_irq(adapter->irq, fcpci_irq, IRQF_SHARED,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PNP:
retval = request_irq(adapter->irq, fcpci_irq, 0,
"fcpcipnp", adapter);
break;
}
if (retval)
goto err_region;
switch (adapter->type) {
case AVM_FRITZ_PCIV2:
case AVM_FRITZ_PCI:
......@@ -794,6 +777,23 @@ static int __devinit fcpcipnp_setup(struct fritz_adapter *adapter)
outb(0, adapter->io + AVM_STATUS0);
mdelay(10);
switch (adapter->type) {
case AVM_FRITZ_PCIV2:
retval = request_irq(adapter->irq, fcpci2_irq, IRQF_SHARED,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PCI:
retval = request_irq(adapter->irq, fcpci_irq, IRQF_SHARED,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PNP:
retval = request_irq(adapter->irq, fcpci_irq, 0,
"fcpcipnp", adapter);
break;
}
if (retval)
goto err_region;
switch (adapter->type) {
case AVM_FRITZ_PCIV2:
fcpci2_init(adapter);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册