rk2928: usb_detect: mark bvalid_init as __init, clear bvalid irq when init
author黄涛 <huangtao@rock-chips.com>
Tue, 21 Aug 2012 01:08:32 +0000 (09:08 +0800)
committer黄涛 <huangtao@rock-chips.com>
Tue, 21 Aug 2012 01:08:41 +0000 (09:08 +0800)
arch/arm/plat-rk/usb_detect.c

index 411b0dd5aa6d59c87beea5f9d2c39fb196dc3822..40a46884d03613d145d769e8da00fba48fb47491 100644 (file)
@@ -91,7 +91,7 @@ static irqreturn_t bvalid_irq_handler(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 
-static int bvalid_init(void)
+static int __init bvalid_init(void)
 {
        int ret;
        int irq = IRQ_OTG_BVALID;
@@ -112,9 +112,9 @@ static int bvalid_init(void)
                return ret;
        }
 
-       /* enable bvalid irq */
+       /* clear & enable bvalid irq */
 #ifdef CONFIG_ARCH_RK2928
-       writel_relaxed((1 << 30) | (1 << 14), RK2928_GRF_BASE + GRF_UOC0_CON5);
+       writel_relaxed((3 << 30) | (3 << 14), RK2928_GRF_BASE + GRF_UOC0_CON5);
 #endif
 
        enable_irq_wake(irq);