vserver 1.9.3
[linux-2.6.git] / drivers / usb / host / ohci-hcd.c
index d13e98e..0609e12 100644 (file)
@@ -97,6 +97,7 @@
 #include <linux/list.h>
 #include <linux/interrupt.h>  /* for in_interrupt () */
 #include <linux/usb.h>
+#include <linux/usb_otg.h>
 #include "../core/hcd.h"
 #include <linux/dma-mapping.h> 
 #include <linux/dmapool.h>    /* needed by ohci-mem.c when no PCI */
@@ -593,7 +594,7 @@ static int hc_start (struct ohci_hcd *ohci)
 static irqreturn_t ohci_irq (struct usb_hcd *hcd, struct pt_regs *ptregs)
 {
        struct ohci_hcd         *ohci = hcd_to_ohci (hcd);
-       struct ohci_regs        *regs = ohci->regs;
+       struct ohci_regs __iomem *regs = ohci->regs;
        int                     ints; 
 
        /* we can eliminate a (slow) ohci_readl()
@@ -693,7 +694,7 @@ static void ohci_stop (struct usb_hcd *hcd)
 
 /* must not be called from interrupt context */
 
-#ifdef CONFIG_PM
+#if    defined(CONFIG_USB_SUSPEND) || defined(CONFIG_PM)
 
 static void mark_children_gone (struct usb_device *dev)
 {