git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 1.9.5.x5
[linux-2.6.git]
/
arch
/
arm
/
mach-s3c2410
/
usb-simtec.c
diff --git
a/arch/arm/mach-s3c2410/usb-simtec.c
b/arch/arm/mach-s3c2410/usb-simtec.c
index
b8f8ded
..
7f2b613
100644
(file)
--- a/
arch/arm/mach-s3c2410/usb-simtec.c
+++ b/
arch/arm/mach-s3c2410/usb-simtec.c
@@
-13,6
+13,7
@@
*
* Modifications:
* 14-Sep-2004 BJD Created
*
* Modifications:
* 14-Sep-2004 BJD Created
+ * 18-Oct-2004 BJD Cleanups, and added code to report OC cleared
*/
#define DEBUG
*/
#define DEBUG
@@
-51,10
+52,8
@@
usb_simtec_powercontrol(int port, int to)
{
pr_debug("usb_simtec_powercontrol(%d,%d)\n", port, to);
{
pr_debug("usb_simtec_powercontrol(%d,%d)\n", port, to);
- if (port == 1)
{
+ if (port == 1)
s3c2410_gpio_setpin(S3C2410_GPB4, to ? 0:1);
s3c2410_gpio_setpin(S3C2410_GPB4, to ? 0:1);
- pr_debug("GPBDAT now %08x\n", __raw_readl(S3C2410_GPBDAT));
- }
}
static irqreturn_t
}
static irqreturn_t
@@
-67,6
+66,7
@@
usb_simtec_ocirq(int irq, void *pw, struct pt_regs *regs)
s3c2410_report_oc(info, 3);
} else {
pr_debug("usb_simtec: over-current irq (oc cleared)\n");
s3c2410_report_oc(info, 3);
} else {
pr_debug("usb_simtec: over-current irq (oc cleared)\n");
+ s3c2410_report_oc(info, 0);
}
return IRQ_HANDLED;
}
return IRQ_HANDLED;
@@
-77,16
+77,15
@@
static void usb_simtec_enableoc(struct s3c2410_hcd_info *info, int on)
int ret;
if (on) {
int ret;
if (on) {
- pr_debug("claiming usb overccurent\n");
ret = request_irq(IRQ_USBOC, usb_simtec_ocirq, SA_INTERRUPT,
ret = request_irq(IRQ_USBOC, usb_simtec_ocirq, SA_INTERRUPT,
- "
usb-oc
", info);
+ "
USB Over-current
", info);
if (ret != 0) {
printk(KERN_ERR "failed to request usb oc irq\n");
}
set_irq_type(IRQ_USBOC, IRQT_BOTHEDGE);
} else {
if (ret != 0) {
printk(KERN_ERR "failed to request usb oc irq\n");
}
set_irq_type(IRQ_USBOC, IRQT_BOTHEDGE);
} else {
- free_irq(IRQ_USBOC,
NULL
);
+ free_irq(IRQ_USBOC,
info
);
}
}
}
}
@@
-110,14
+109,5
@@
int usb_simtec_init(void)
s3c2410_gpio_cfgpin(S3C2410_GPB4, S3C2410_GPB4_OUTP);
s3c2410_gpio_setpin(S3C2410_GPB4, 1);
s3c2410_gpio_cfgpin(S3C2410_GPB4, S3C2410_GPB4_OUTP);
s3c2410_gpio_setpin(S3C2410_GPB4, 1);
-
- pr_debug("GPB: CON=%08x, DAT=%08x\n",
- __raw_readl(S3C2410_GPBCON), __raw_readl(S3C2410_GPBDAT));
-
- if (0) {
- s3c2410_modify_misccr(S3C2410_MISCCR_USBHOST,
- S3C2410_MISCCR_USBDEV);
- }
-
return 0;
}
return 0;
}