This hardware supports Message Signaled interrupts so use them. Signed-off-by: Stephen Hemminger <shemminger @osdl.org>
--- git-2.6.orig/drivers/net/sky2.c 2006-01-25 10:42:16.000000000 -0800 +++ git-2.6/drivers/net/sky2.c 2006-01-25 12:59:30.000000000 -0800 @@ -3165,6 +3165,9 @@ } } + if (pci_enable_msi(pdev) == 0) + hw->msi = 1; + err = request_irq(pdev->irq, sky2_intr, SA_SHIRQ | SA_SAMPLE_RANDOM, DRV_NAME, hw); if (err) { @@ -3181,6 +3184,8 @@ return 0; err_out_unregister: + if (hw->msi) + pci_disable_msi(pdev); if (dev1) { unregister_netdev(dev1); free_netdev(dev1); @@ -3223,6 +3228,8 @@ sky2_read8(hw, B0_CTST); free_irq(pdev->irq, hw); + if (hw->msi) + pci_disable_msi(pdev); pci_free_consistent(pdev, STATUS_LE_BYTES, hw->st_le, hw->st_dma); pci_release_regions(pdev); pci_disable_device(pdev); --- git-2.6.orig/drivers/net/sky2.h 2006-01-25 10:42:16.000000000 -0800 +++ git-2.6/drivers/net/sky2.h 2006-01-25 12:59:05.000000000 -0800 @@ -1847,6 +1847,7 @@ struct net_device *dev[2]; int pm_cap; + int msi; u8 chip_id; u8 chip_rev; u8 copper; -- - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html