Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
[safe/jmp/linux-2.6] / drivers / net / wireless / orinoco_pci.h
index b05a9a5..f4e5e06 100644 (file)
@@ -18,32 +18,7 @@ struct orinoco_pci_card {
        void __iomem *attr_io;
 };
 
-/* Set base address or memory range of the network device based on
- * the PCI device it's using.  Specify BAR of the "main" resource.
- * To be used after request_irq().  */
-static inline void orinoco_pci_setup_netdev(struct net_device *dev,
-                                           struct pci_dev *pdev, int bar)
-{
-       char *range_type;
-       unsigned long start = pci_resource_start(pdev, bar);
-       unsigned long len = pci_resource_len(pdev, bar);
-       unsigned long flags = pci_resource_flags(pdev, bar);
-       unsigned long end = start + len - 1;
-
-       dev->irq = pdev->irq;
-       if (flags & IORESOURCE_IO) {
-               dev->base_addr = start;
-               range_type = "ports";
-       } else {
-               dev->mem_start = start;
-               dev->mem_end = end;
-               range_type = "memory";
-       }
-
-       printk(KERN_DEBUG PFX "%s: irq %d, %s 0x%lx-0x%lx\n",
-              pci_name(pdev), pdev->irq, range_type, start, end);
-}
-
+#ifdef CONFIG_PM
 static int orinoco_pci_suspend(struct pci_dev *pdev, pm_message_t state)
 {
        struct net_device *dev = pci_get_drvdata(pdev);
@@ -85,10 +60,15 @@ static int orinoco_pci_resume(struct pci_dev *pdev)
        int err;
 
        pci_set_power_state(pdev, 0);
-       pci_enable_device(pdev);
+       err = pci_enable_device(pdev);
+       if (err) {
+               printk(KERN_ERR "%s: pci_enable_device failed on resume\n",
+                      dev->name);
+               return err;
+       }
        pci_restore_state(pdev);
 
-       err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+       err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
                          dev->name, dev);
        if (err) {
                printk(KERN_ERR "%s: cannot re-allocate IRQ on resume\n",
@@ -121,5 +101,9 @@ static int orinoco_pci_resume(struct pci_dev *pdev)
 
        return 0;
 }
+#else
+#define orinoco_pci_suspend NULL
+#define orinoco_pci_resume NULL
+#endif
 
 #endif /* _ORINOCO_PCI_H */