r670 - trunk/src/target/u-boot/patches
laforge at sita.openmoko.org
laforge at sita.openmoko.org
Mon Feb 5 16:07:12 CET 2007
Author: laforge
Date: 2007-02-05 16:07:11 +0100 (Mon, 05 Feb 2007)
New Revision: 670
Modified:
trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch
Log:
- increase pullup off/on delay (in case we get resetted, we need to cause bus reset) to 1ms
- call real interrupt handler only in case of interrupt, not dual irq/polling mess
Modified: trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch 2007-02-05 13:55:19 UTC (rev 669)
+++ trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch 2007-02-05 15:07:11 UTC (rev 670)
@@ -2,8 +2,8 @@
Index: u-boot.git/drivers/Makefile
===================================================================
---- u-boot.git.orig/drivers/Makefile 2007-02-04 20:00:53.000000000 +0100
-+++ u-boot.git/drivers/Makefile 2007-02-04 20:01:43.000000000 +0100
+--- u-boot.git.orig/drivers/Makefile 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/drivers/Makefile 2007-02-05 15:16:31.000000000 +0100
@@ -46,7 +46,7 @@
sl811_usb.o sm501.o smc91111.o smiLynxEM.o \
status_led.o sym53c8xx.o ahci.o \
@@ -16,8 +16,8 @@
Index: u-boot.git/drivers/usbdcore_s3c2410.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ u-boot.git/drivers/usbdcore_s3c2410.c 2007-02-05 14:51:57.000000000 +0100
-@@ -0,0 +1,700 @@
++++ u-boot.git/drivers/usbdcore_s3c2410.c 2007-02-05 16:06:09.000000000 +0100
+@@ -0,0 +1,703 @@
+/* S3C2410 USB Device Controller Driver for u-boot
+ *
+ * (C) Copyright 2007 by OpenMoko, Inc.
@@ -418,10 +418,15 @@
+-------------------------------------------------------------------------------
+*/
+
++/* this is just an empty wrapper for usbtty who assumes polling operation */
++void udc_irq(void)
++{
++}
++
+/* Handle general USB interrupts and dispatch according to type.
+ * This function implements TRM Figure 14-13.
+ */
-+int udc_irq(void)
++void s3c2410_udc_irq(void)
+{
+ struct usb_endpoint_instance *ep0 = udc_device->bus->endpoint_array;
+ u_int32_t save_idx = inl(S3C2410_UDC_INDEX_REG);
@@ -474,8 +479,6 @@
+ }
+ }
+ S3C2410_UDC_SETIX(save_idx);
-+
-+ return usb_status | usbd_status;
+}
+
+/*
@@ -617,7 +620,7 @@
+
+ /* create a short disconnect, since we might come out of reset */
+ udc_disconnect();
-+ udelay(10);
++ udelay(1000);
+
+ // s3c2410_gpio_setpin(GTA01_GPIO_USB_PULLUP, 1);
+ gpio->GPBDAT |= (1 << 9);
@@ -721,7 +724,7 @@
Index: u-boot.git/drivers/usbdcore_s3c2410.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ u-boot.git/drivers/usbdcore_s3c2410.h 2007-02-04 20:01:43.000000000 +0100
++++ u-boot.git/drivers/usbdcore_s3c2410.h 2007-02-05 15:16:31.000000000 +0100
@@ -0,0 +1,273 @@
+/* linux/include/asm/arch-s3c2410/regs-udc.h
+ *
@@ -998,8 +1001,8 @@
+#endif
Index: u-boot.git/include/s3c2410.h
===================================================================
---- u-boot.git.orig/include/s3c2410.h 2007-02-04 20:00:53.000000000 +0100
-+++ u-boot.git/include/s3c2410.h 2007-02-04 20:01:43.000000000 +0100
+--- u-boot.git.orig/include/s3c2410.h 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/include/s3c2410.h 2007-02-05 15:16:31.000000000 +0100
@@ -233,4 +233,40 @@
rINTPND;\
}
@@ -1043,8 +1046,8 @@
#endif /*__S3C2410_H__*/
Index: u-boot.git/drivers/usbdcore_ep0.c
===================================================================
---- u-boot.git.orig/drivers/usbdcore_ep0.c 2007-02-04 20:01:39.000000000 +0100
-+++ u-boot.git/drivers/usbdcore_ep0.c 2007-02-05 14:52:38.000000000 +0100
+--- u-boot.git.orig/drivers/usbdcore_ep0.c 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/drivers/usbdcore_ep0.c 2007-02-05 16:05:14.000000000 +0100
@@ -43,7 +43,7 @@
#include <common.h>
@@ -1109,8 +1112,8 @@
case USB_REQ_SET_DESCRIPTOR: /* XXX should we support this? */
Index: u-boot.git/include/configs/gta01.h
===================================================================
---- u-boot.git.orig/include/configs/gta01.h 2007-02-04 20:00:53.000000000 +0100
-+++ u-boot.git/include/configs/gta01.h 2007-02-04 20:01:43.000000000 +0100
+--- u-boot.git.orig/include/configs/gta01.h 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/include/configs/gta01.h 2007-02-05 15:16:31.000000000 +0100
@@ -173,6 +173,16 @@
#define CONFIG_USB_OHCI 1
#endif
@@ -1130,15 +1133,15 @@
*/
Index: u-boot.git/cpu/arm920t/s3c24x0/interrupts.c
===================================================================
---- u-boot.git.orig/cpu/arm920t/s3c24x0/interrupts.c 2007-02-04 20:00:53.000000000 +0100
-+++ u-boot.git/cpu/arm920t/s3c24x0/interrupts.c 2007-02-04 20:01:43.000000000 +0100
+--- u-boot.git.orig/cpu/arm920t/s3c24x0/interrupts.c 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/cpu/arm920t/s3c24x0/interrupts.c 2007-02-05 15:36:40.000000000 +0100
@@ -222,6 +222,13 @@
S3C24X0_INTERRUPT * irq = S3C24X0_GetBase_INTERRUPT();
u_int32_t intpnd = irq->INTPND;
+#ifdef CONFIG_USB_DEVICE
+ if (intpnd & BIT_USBD) {
-+ udc_irq();
++ s3c2410_udc_irq();
+ irq->SRCPND = BIT_USBD;
+ irq->INTPND = BIT_USBD;
+ }
@@ -1148,8 +1151,8 @@
Index: u-boot.git/drivers/usbtty.h
===================================================================
---- u-boot.git.orig/drivers/usbtty.h 2007-02-04 20:00:53.000000000 +0100
-+++ u-boot.git/drivers/usbtty.h 2007-02-04 20:01:43.000000000 +0100
+--- u-boot.git.orig/drivers/usbtty.h 2007-02-05 15:16:25.000000000 +0100
++++ u-boot.git/drivers/usbtty.h 2007-02-05 15:16:31.000000000 +0100
@@ -29,6 +29,8 @@
#include "usbdcore_mpc8xx.h"
#elif defined(CONFIG_OMAP1510)
More information about the commitlog
mailing list