r3564 - trunk/src/target/u-boot/patches
laforge at sita.openmoko.org
laforge at sita.openmoko.org
Tue Dec 4 18:58:06 CET 2007
Author: laforge
Date: 2007-12-04 18:57:54 +0100 (Tue, 04 Dec 2007)
New Revision: 3564
Modified:
trunk/src/target/u-boot/patches/bbt-create-optional.patch
trunk/src/target/u-boot/patches/console-ansi.patch
trunk/src/target/u-boot/patches/enable-splash-bmp.patch
trunk/src/target/u-boot/patches/env_nand_oob.patch
trunk/src/target/u-boot/patches/nand-badisbad.patch
trunk/src/target/u-boot/patches/nand-createbbt.patch
trunk/src/target/u-boot/patches/nand-dynamic_partitions.patch
trunk/src/target/u-boot/patches/neo1973-chargefast.patch
trunk/src/target/u-boot/patches/splashimage-command.patch
trunk/src/target/u-boot/patches/uboot-20061030-neo1973.patch
trunk/src/target/u-boot/patches/uboot-bbt-quiet.patch
trunk/src/target/u-boot/patches/uboot-dfu.patch
trunk/src/target/u-boot/patches/uboot-gta02.patch
trunk/src/target/u-boot/patches/uboot-license.patch
trunk/src/target/u-boot/patches/uboot-nand-markbad-reallybad.patch
trunk/src/target/u-boot/patches/uboot-s3c2410_fb.patch
trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch
trunk/src/target/u-boot/patches/uboot-s3c2440.patch
trunk/src/target/u-boot/patches/uboot-s3c2442.patch
trunk/src/target/u-boot/patches/uboot-s3c2443.patch
trunk/src/target/u-boot/patches/uboot-serial_terminal.patch
trunk/src/target/u-boot/patches/uboot-smdk2443.patch
trunk/src/target/u-boot/patches/uboot-usbtty-acm.patch
trunk/src/target/u-boot/patches/usbdcore-multiple_configs.patch
trunk/src/target/u-boot/patches/usbtty-irq-racecondition-fix.patch
Log:
sync patches with u-boot mainline '8d4f040a3c15036a6ea25a9c39e7d89fefa8440d' (compiles but untested)
Modified: trunk/src/target/u-boot/patches/bbt-create-optional.patch
===================================================================
--- trunk/src/target/u-boot/patches/bbt-create-optional.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/bbt-create-optional.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -22,10 +22,10 @@
#else
nand->options = 0;
#endif
-Index: u-boot/drivers/nand/nand_bbt.c
+Index: u-boot/drivers/mtd/nand/nand_bbt.c
===================================================================
---- u-boot.orig/drivers/nand/nand_bbt.c
-+++ u-boot/drivers/nand/nand_bbt.c
+--- u-boot.orig/drivers/mtd/nand/nand_bbt.c
++++ u-boot/drivers/nand/mtd/nand_bbt.c
@@ -678,7 +678,8 @@
}
create:
Modified: trunk/src/target/u-boot/patches/console-ansi.patch
===================================================================
--- trunk/src/target/u-boot/patches/console-ansi.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/console-ansi.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -4,10 +4,10 @@
- Werner Almesberger <werner at openmoko.org>
-Index: u-boot/drivers/cfb_console.c
+Index: u-boot/drivers/video/cfb_console.c
===================================================================
---- u-boot.orig/drivers/cfb_console.c
-+++ u-boot/drivers/cfb_console.c
+--- u-boot.orig/drivers/video/cfb_console.c
++++ u-boot/drivers/video/cfb_console.c
@@ -181,6 +181,7 @@ CONFIG_VIDEO_HW_CURSOR: - Uses the
#include <version.h>
Modified: trunk/src/target/u-boot/patches/enable-splash-bmp.patch
===================================================================
--- trunk/src/target/u-boot/patches/enable-splash-bmp.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/enable-splash-bmp.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -6,10 +6,10 @@
- Werner Almesberger <werner at openmoko.org>
-Index: u-boot/drivers/cfb_console.c
+Index: u-boot/drivers/video/cfb_console.c
===================================================================
---- u-boot.orig/drivers/cfb_console.c
-+++ u-boot/drivers/cfb_console.c
+--- u-boot.orig/drivers/video/cfb_console.c
++++ u-boot/drivers/video/cfb_console.c
@@ -191,6 +191,7 @@
#if defined(CONFIG_CMD_BMP) || defined(CONFIG_SPLASH_SCREEN)
#include <watchdog.h>
Modified: trunk/src/target/u-boot/patches/env_nand_oob.patch
===================================================================
--- trunk/src/target/u-boot/patches/env_nand_oob.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/env_nand_oob.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -97,14 +97,14 @@
===================================================================
--- u-boot.orig/common/Makefile
+++ u-boot/common/Makefile
-@@ -46,6 +46,7 @@
- COBJS-y += cmd_display.o
- COBJS-y += cmd_doc.o
- COBJS-y += cmd_dtt.o
+@@ -50,6 +50,7 @@
+ COBJS-$(CONFIG_CMD_DISPLAY) += cmd_display.o
+ COBJS-$(CONFIG_CMD_DOC) += cmd_doc.o
+ COBJS-$(CONFIG_CMD_DTT) += cmd_dtt.o
+COBJS-y += cmd_dynenv.o
COBJS-y += cmd_eeprom.o
- COBJS-y += cmd_elf.o
- COBJS-y += cmd_ext2.o
+ COBJS-$(CONFIG_CMD_ELF) += cmd_elf.o
+ COBJS-$(CONFIG_CMD_EXT2) += cmd_ext2.o
Index: u-boot/common/cmd_dynenv.c
===================================================================
--- /dev/null
Modified: trunk/src/target/u-boot/patches/nand-badisbad.patch
===================================================================
--- trunk/src/target/u-boot/patches/nand-badisbad.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/nand-badisbad.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -6,10 +6,10 @@
- Werner Almesberger <werner at openmoko.org>
-Index: u-boot/drivers/nand/nand_base.c
+Index: u-boot/drivers/mtd/nand/nand_base.c
===================================================================
---- u-boot.orig/drivers/nand/nand_base.c
-+++ u-boot/drivers/nand/nand_base.c
+--- u-boot.orig/drivers/mtd/nand/nand_base.c
++++ u-boot/drivers/mtd/nand/nand_base.c
@@ -517,11 +517,14 @@ static int nand_block_checkbad (struct m
{
struct nand_chip *this = mtd->priv;
Modified: trunk/src/target/u-boot/patches/nand-createbbt.patch
===================================================================
--- trunk/src/target/u-boot/patches/nand-createbbt.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/nand-createbbt.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -110,10 +110,10 @@
static int nand_load_image(cmd_tbl_t *cmdtp, nand_info_t *nand,
ulong offset, ulong addr, char *cmd)
-Index: u-boot/drivers/nand/nand_bbt.c
+Index: u-boot/drivers/mtd/nand/nand_bbt.c
===================================================================
---- u-boot.orig/drivers/nand/nand_bbt.c
-+++ u-boot/drivers/nand/nand_bbt.c
+--- u-boot.orig/drivers/mtd/nand/nand_bbt.c
++++ u-boot/drivers/mtd/nand/nand_bbt.c
@@ -795,7 +795,8 @@
len = mtd->size >> (this->bbt_erase_shift + 2);
Modified: trunk/src/target/u-boot/patches/nand-dynamic_partitions.patch
===================================================================
--- trunk/src/target/u-boot/patches/nand-dynamic_partitions.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/nand-dynamic_partitions.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -17,8 +17,8 @@
Index: u-boot/drivers/nand/nand_bbt.c
===================================================================
---- u-boot.orig/drivers/nand/nand_bbt.c
-+++ u-boot/drivers/nand/nand_bbt.c
+--- u-boot.orig/drivers/mtd/nand/nand_bbt.c
++++ u-boot/drivers/mtd/nand/nand_bbt.c
@@ -1044,9 +1044,86 @@
switch ((int)res) {
case 0x00: return 0;
Modified: trunk/src/target/u-boot/patches/neo1973-chargefast.patch
===================================================================
--- trunk/src/target/u-boot/patches/neo1973-chargefast.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/neo1973-chargefast.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1,7 +1,7 @@
-Index: u-boot/drivers/usbtty.c
+Index: u-boot/drivers/serial/usbtty.c
===================================================================
---- u-boot.orig/drivers/usbtty.c
-+++ u-boot/drivers/usbtty.c
+--- u-boot.orig/drivers/serial/usbtty.c
++++ u-boot/drivers/serial/usbtty.c
@@ -54,7 +54,7 @@
/*
* Defines
@@ -263,8 +263,8 @@
Index: u-boot/drivers/usbtty.h
===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
@@ -59,7 +59,7 @@
#define USBTTY_DEVICE_CLASS COMMUNICATIONS_DEVICE_CLASS
Modified: trunk/src/target/u-boot/patches/splashimage-command.patch
===================================================================
--- trunk/src/target/u-boot/patches/splashimage-command.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/splashimage-command.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -3,10 +3,10 @@
- Werner Almesberger <werner at openmoko.org>
-Index: u-boot/drivers/cfb_console.c
+Index: u-boot/drivers/video/cfb_console.c
===================================================================
---- u-boot.orig/drivers/cfb_console.c
-+++ u-boot/drivers/cfb_console.c
+--- u-boot.orig/drivers/video/cfb_console.c
++++ u-boot/drivers/video/cfb_console.c
@@ -1121,7 +1121,13 @@ static void *video_logo (void)
ulong addr;
Modified: trunk/src/target/u-boot/patches/uboot-20061030-neo1973.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-20061030-neo1973.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-20061030-neo1973.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -8,7 +8,7 @@
===================================================================
--- u-boot.orig/Makefile
+++ u-boot/Makefile
-@@ -2195,6 +2195,14 @@
+@@ -2244,6 +2244,14 @@
sbc2410x_config: unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t sbc2410x NULL s3c24x0
@@ -44,184 +44,6 @@
# ifdef CONFIG_AUTOBOOT_KEYED
int prev = disable_ctrlc(1); /* disable Control C checking */
# endif
-Index: u-boot/drivers/Makefile
-===================================================================
---- u-boot.orig/drivers/Makefile
-+++ u-boot/drivers/Makefile
-@@ -142,6 +142,7 @@
- #
- COBJS-y += ali512x.o
- COBJS-y += ns87308.o
-+COBJS-y += pcf50606.o
- COBJS-y += status_led.o
-
- COBJS := $(COBJS-y)
-Index: u-boot/drivers/pcf50606.c
-===================================================================
---- /dev/null
-+++ u-boot/drivers/pcf50606.c
-@@ -0,0 +1,161 @@
-+
-+#include <common.h>
-+
-+#ifdef CONFIG_DRIVER_PCF50606
-+
-+#include <i2c.h>
-+#include <pcf50606.h>
-+#include <asm/atomic.h>
-+#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
-+
-+#define PCF50606_I2C_ADDR 0x08
-+
-+void __pcf50606_reg_write(u_int8_t reg, u_int8_t val)
-+{
-+ i2c_write(PCF50606_I2C_ADDR, reg, 1, &val, 1);
-+}
-+
-+u_int8_t __pcf50606_reg_read(u_int8_t reg)
-+{
-+ u_int8_t tmp;
-+ i2c_read(PCF50606_I2C_ADDR, reg, 1, &tmp, 1);
-+ return tmp;
-+}
-+
-+void pcf50606_reg_write(u_int8_t reg, u_int8_t val)
-+{
-+ unsigned long flags;
-+
-+ local_irq_save(flags);
-+ __pcf50606_reg_write(reg, val);
-+ local_irq_restore(flags);
-+}
-+
-+u_int8_t pcf50606_reg_read(u_int8_t reg)
-+{
-+ unsigned long flags;
-+ u_int8_t tmp;
-+
-+ local_irq_save(flags);
-+ tmp = __pcf50606_reg_read(reg);
-+ local_irq_restore(flags);
-+
-+ return tmp;
-+}
-+
-+void pcf50606_reg_set_bit_mask(u_int8_t reg, u_int8_t mask, u_int8_t val)
-+{
-+ unsigned long flags;
-+ u_int8_t tmp;
-+
-+ local_irq_save(flags);
-+ tmp = __pcf50606_reg_read(reg);
-+ __pcf50606_reg_write(reg, (val & mask) | (tmp & ~mask));
-+ local_irq_restore(flags);
-+}
-+
-+void pcf50606_reg_clear_bits(u_int8_t reg, u_int8_t bits)
-+{
-+ unsigned long flags;
-+ u_int8_t tmp;
-+
-+ local_irq_save(flags);
-+ tmp = pcf50606_reg_read(reg);
-+ pcf50606_reg_write(reg, (tmp & ~bits));
-+ local_irq_restore(flags);
-+}
-+
-+static const u_int8_t regs_valid[] = {
-+ PCF50606_REG_OOCS, PCF50606_REG_INT1M, PCF50606_REG_INT2M,
-+ PCF50606_REG_INT3M, PCF50606_REG_OOCC1, PCF50606_REG_OOCC2,
-+ PCF50606_REG_PSSC, PCF50606_REG_PWROKM, PCF50606_REG_DCDC1,
-+ PCF50606_REG_DCDC2, PCF50606_REG_DCDC3, PCF50606_REG_DCDC4,
-+ PCF50606_REG_DCDEC1, PCF50606_REG_DCDEC2, PCF50606_REG_DCUDC1,
-+ PCF50606_REG_DCUDC2, PCF50606_REG_IOREGC, PCF50606_REG_D1REGC1,
-+ PCF50606_REG_D2REGC1, PCF50606_REG_D3REGC1, PCF50606_REG_LPREGC1,
-+ PCF50606_REG_LPREGC2, PCF50606_REG_MBCC1, PCF50606_REG_MBCC2,
-+ PCF50606_REG_MBCC3, PCF50606_REG_BBCC, PCF50606_REG_ADCC1,
-+ PCF50606_REG_ADCC2, PCF50606_REG_ACDC1, PCF50606_REG_BVMC,
-+ PCF50606_REG_PWMC1, PCF50606_REG_LEDC1, PCF50606_REG_LEDC2,
-+ PCF50606_REG_GPOC1, PCF50606_REG_GPOC2, PCF50606_REG_GPOC3,
-+ PCF50606_REG_GPOC4, PCF50606_REG_GPOC5,
-+};
-+
-+
-+/* initialize PCF50606 register set */
-+void pcf50606_init(void)
-+{
-+ unsigned long flags;
-+ int i;
-+
-+ local_irq_save(flags);
-+ for (i = 0; i < ARRAY_SIZE(regs_valid); i++) {
-+ __pcf50606_reg_write(regs_valid[i],
-+ pcf50606_initial_regs[regs_valid[i]]);
-+ }
-+ local_irq_restore(flags);
-+}
-+
-+void pcf50606_charge_autofast(int on)
-+{
-+ if (on) {
-+ printf("Enabling automatic fast charge\n");
-+ pcf50606_reg_set_bit_mask(PCF50606_REG_MBCC1,
-+ PCF50606_MBCC1_AUTOFST,
-+ PCF50606_MBCC1_AUTOFST);
-+ } else {
-+ printf("Disabling fast charge\n");
-+ pcf50606_reg_write(PCF50606_REG_MBCC1, 0x00);
-+ }
-+}
-+
-+#if defined(CONFIG_RTC_PCF50606) && defined(CONFIG_CMD_DATE)
-+
-+#include <rtc.h>
-+
-+static unsigned bcd2bin (uchar n)
-+{
-+ return ((((n >> 4) & 0x0F) * 10) + (n & 0x0F));
-+}
-+
-+static unsigned char bin2bcd (unsigned int n)
-+{
-+ return (((n / 10) << 4) | (n % 10));
-+}
-+
-+
-+void rtc_get(struct rtc_time *tmp)
-+{
-+ tmp->tm_sec = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCSC));
-+ tmp->tm_min = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCMN));
-+ tmp->tm_hour = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCHR));
-+ tmp->tm_wday = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCWD));
-+ tmp->tm_mday = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCDT));
-+ tmp->tm_mon = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCMT));
-+ tmp->tm_year = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCYR));
-+ if (tmp->tm_year < 70)
-+ tmp->tm_year += 2000;
-+ else
-+ tmp->tm_year += 1900;
-+ tmp->tm_yday = 0;
-+ tmp->tm_isdst = 0;
-+}
-+
-+void rtc_set(struct rtc_time *tmp)
-+{
-+ pcf50606_reg_write(PCF50606_REG_RTCSC, bin2bcd(tmp->tm_sec));
-+ pcf50606_reg_write(PCF50606_REG_RTCMN, bin2bcd(tmp->tm_min));
-+ pcf50606_reg_write(PCF50606_REG_RTCHR, bin2bcd(tmp->tm_hour));
-+ pcf50606_reg_write(PCF50606_REG_RTCWD, bin2bcd(tmp->tm_wday));
-+ pcf50606_reg_write(PCF50606_REG_RTCDT, bin2bcd(tmp->tm_mday));
-+ pcf50606_reg_write(PCF50606_REG_RTCMT, bin2bcd(tmp->tm_mon));
-+ pcf50606_reg_write(PCF50606_REG_RTCYR, bin2bcd(tmp->tm_year % 100));
-+}
-+
-+void rtc_reset(void)
-+{
-+ /* FIXME */
-+}
-+#endif /* CONFIG_RTC_PCF50606 && CONFIG_CMD_DATE */
-+
-+#endif /* CONFIG DRIVER_PCF50606 */
Index: u-boot/include/pcf50606.h
===================================================================
--- /dev/null
@@ -2418,3 +2240,181 @@
return 0;
}
+Index: u-boot/drivers/misc/Makefile
+===================================================================
+--- u-boot.orig/drivers/misc/Makefile
++++ u-boot/drivers/misc/Makefile
+@@ -27,6 +27,7 @@
+
+ COBJS-y += ali512x.o
+ COBJS-y += ns87308.o
++COBJS-y += pcf50606.o
+ COBJS-y += status_led.o
+
+ COBJS := $(COBJS-y)
+Index: u-boot/drivers/misc/pcf50606.c
+===================================================================
+--- /dev/null
++++ u-boot/drivers/misc/pcf50606.c
+@@ -0,0 +1,161 @@
++
++#include <common.h>
++
++#ifdef CONFIG_DRIVER_PCF50606
++
++#include <i2c.h>
++#include <pcf50606.h>
++#include <asm/atomic.h>
++#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
++
++#define PCF50606_I2C_ADDR 0x08
++
++void __pcf50606_reg_write(u_int8_t reg, u_int8_t val)
++{
++ i2c_write(PCF50606_I2C_ADDR, reg, 1, &val, 1);
++}
++
++u_int8_t __pcf50606_reg_read(u_int8_t reg)
++{
++ u_int8_t tmp;
++ i2c_read(PCF50606_I2C_ADDR, reg, 1, &tmp, 1);
++ return tmp;
++}
++
++void pcf50606_reg_write(u_int8_t reg, u_int8_t val)
++{
++ unsigned long flags;
++
++ local_irq_save(flags);
++ __pcf50606_reg_write(reg, val);
++ local_irq_restore(flags);
++}
++
++u_int8_t pcf50606_reg_read(u_int8_t reg)
++{
++ unsigned long flags;
++ u_int8_t tmp;
++
++ local_irq_save(flags);
++ tmp = __pcf50606_reg_read(reg);
++ local_irq_restore(flags);
++
++ return tmp;
++}
++
++void pcf50606_reg_set_bit_mask(u_int8_t reg, u_int8_t mask, u_int8_t val)
++{
++ unsigned long flags;
++ u_int8_t tmp;
++
++ local_irq_save(flags);
++ tmp = __pcf50606_reg_read(reg);
++ __pcf50606_reg_write(reg, (val & mask) | (tmp & ~mask));
++ local_irq_restore(flags);
++}
++
++void pcf50606_reg_clear_bits(u_int8_t reg, u_int8_t bits)
++{
++ unsigned long flags;
++ u_int8_t tmp;
++
++ local_irq_save(flags);
++ tmp = pcf50606_reg_read(reg);
++ pcf50606_reg_write(reg, (tmp & ~bits));
++ local_irq_restore(flags);
++}
++
++static const u_int8_t regs_valid[] = {
++ PCF50606_REG_OOCS, PCF50606_REG_INT1M, PCF50606_REG_INT2M,
++ PCF50606_REG_INT3M, PCF50606_REG_OOCC1, PCF50606_REG_OOCC2,
++ PCF50606_REG_PSSC, PCF50606_REG_PWROKM, PCF50606_REG_DCDC1,
++ PCF50606_REG_DCDC2, PCF50606_REG_DCDC3, PCF50606_REG_DCDC4,
++ PCF50606_REG_DCDEC1, PCF50606_REG_DCDEC2, PCF50606_REG_DCUDC1,
++ PCF50606_REG_DCUDC2, PCF50606_REG_IOREGC, PCF50606_REG_D1REGC1,
++ PCF50606_REG_D2REGC1, PCF50606_REG_D3REGC1, PCF50606_REG_LPREGC1,
++ PCF50606_REG_LPREGC2, PCF50606_REG_MBCC1, PCF50606_REG_MBCC2,
++ PCF50606_REG_MBCC3, PCF50606_REG_BBCC, PCF50606_REG_ADCC1,
++ PCF50606_REG_ADCC2, PCF50606_REG_ACDC1, PCF50606_REG_BVMC,
++ PCF50606_REG_PWMC1, PCF50606_REG_LEDC1, PCF50606_REG_LEDC2,
++ PCF50606_REG_GPOC1, PCF50606_REG_GPOC2, PCF50606_REG_GPOC3,
++ PCF50606_REG_GPOC4, PCF50606_REG_GPOC5,
++};
++
++
++/* initialize PCF50606 register set */
++void pcf50606_init(void)
++{
++ unsigned long flags;
++ int i;
++
++ local_irq_save(flags);
++ for (i = 0; i < ARRAY_SIZE(regs_valid); i++) {
++ __pcf50606_reg_write(regs_valid[i],
++ pcf50606_initial_regs[regs_valid[i]]);
++ }
++ local_irq_restore(flags);
++}
++
++void pcf50606_charge_autofast(int on)
++{
++ if (on) {
++ printf("Enabling automatic fast charge\n");
++ pcf50606_reg_set_bit_mask(PCF50606_REG_MBCC1,
++ PCF50606_MBCC1_AUTOFST,
++ PCF50606_MBCC1_AUTOFST);
++ } else {
++ printf("Disabling fast charge\n");
++ pcf50606_reg_write(PCF50606_REG_MBCC1, 0x00);
++ }
++}
++
++#if defined(CONFIG_RTC_PCF50606) && defined(CONFIG_CMD_DATE)
++
++#include <rtc.h>
++
++static unsigned bcd2bin (uchar n)
++{
++ return ((((n >> 4) & 0x0F) * 10) + (n & 0x0F));
++}
++
++static unsigned char bin2bcd (unsigned int n)
++{
++ return (((n / 10) << 4) | (n % 10));
++}
++
++
++void rtc_get(struct rtc_time *tmp)
++{
++ tmp->tm_sec = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCSC));
++ tmp->tm_min = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCMN));
++ tmp->tm_hour = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCHR));
++ tmp->tm_wday = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCWD));
++ tmp->tm_mday = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCDT));
++ tmp->tm_mon = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCMT));
++ tmp->tm_year = bcd2bin(pcf50606_reg_read(PCF50606_REG_RTCYR));
++ if (tmp->tm_year < 70)
++ tmp->tm_year += 2000;
++ else
++ tmp->tm_year += 1900;
++ tmp->tm_yday = 0;
++ tmp->tm_isdst = 0;
++}
++
++void rtc_set(struct rtc_time *tmp)
++{
++ pcf50606_reg_write(PCF50606_REG_RTCSC, bin2bcd(tmp->tm_sec));
++ pcf50606_reg_write(PCF50606_REG_RTCMN, bin2bcd(tmp->tm_min));
++ pcf50606_reg_write(PCF50606_REG_RTCHR, bin2bcd(tmp->tm_hour));
++ pcf50606_reg_write(PCF50606_REG_RTCWD, bin2bcd(tmp->tm_wday));
++ pcf50606_reg_write(PCF50606_REG_RTCDT, bin2bcd(tmp->tm_mday));
++ pcf50606_reg_write(PCF50606_REG_RTCMT, bin2bcd(tmp->tm_mon));
++ pcf50606_reg_write(PCF50606_REG_RTCYR, bin2bcd(tmp->tm_year % 100));
++}
++
++void rtc_reset(void)
++{
++ /* FIXME */
++}
++#endif /* CONFIG_RTC_PCF50606 && CONFIG_CMD_DATE */
++
++#endif /* CONFIG DRIVER_PCF50606 */
Modified: trunk/src/target/u-boot/patches/uboot-bbt-quiet.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-bbt-quiet.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-bbt-quiet.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -4,8 +4,8 @@
Index: u-boot/drivers/nand/nand_bbt.c
===================================================================
---- u-boot.orig/drivers/nand/nand_bbt.c 2007-02-16 23:54:02.000000000 +0100
-+++ u-boot/drivers/nand/nand_bbt.c 2007-02-16 23:54:05.000000000 +0100
+--- u-boot.orig/drivers/mtd/nand/nand_bbt.c 2007-02-16 23:54:02.000000000 +0100
++++ u-boot/drivers/mtd/nand/nand_bbt.c 2007-02-16 23:54:05.000000000 +0100
@@ -157,10 +157,6 @@
this->bbt[offs + (act >> 3)] |= 0x2 << (act & 0x06);
continue;
Modified: trunk/src/target/u-boot/patches/uboot-dfu.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-dfu.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-dfu.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1,7 +1,7 @@
-Index: u-boot/drivers/usbdcore_ep0.c
+Index: u-boot/drivers/usb/usbdcore_ep0.c
===================================================================
---- u-boot.orig/drivers/usbdcore_ep0.c
-+++ u-boot/drivers/usbdcore_ep0.c
+--- u-boot.orig/drivers/usb/usbdcore_ep0.c
++++ u-boot/drivers/usb/usbdcore_ep0.c
@@ -51,10 +51,15 @@
*/
@@ -86,10 +86,10 @@
return 0;
case USB_REQ_GET_STATUS:
-Index: u-boot/drivers/usbdfu.c
+Index: u-boot/drivers/usb/usbdfu.c
===================================================================
--- /dev/null
-+++ u-boot/drivers/usbdfu.c
++++ u-boot/drivers/usb/usbdfu.c
@@ -0,0 +1,1069 @@
+/*
+ * (C) 2007 by OpenMoko, Inc.
@@ -154,7 +154,7 @@
+extern struct list_head devices;
+
+#include "usbdcore_s3c2410.h"
-+#include "usbtty.h" /* for STR_* defs */
++#include "../serial/usbtty.h" /* for STR_* defs */
+
+#define RET_NOTHING 0
+#define RET_ZLP 1
@@ -1160,11 +1160,11 @@
+ }
+}
+#endif /* CONFIG_USBD_DFU */
-Index: u-boot/drivers/Makefile
+Index: u-boot/drivers/usb/Makefile
===================================================================
---- u-boot.orig/drivers/Makefile
-+++ u-boot/drivers/Makefile
-@@ -132,6 +132,7 @@
+--- u-boot.orig/drivers/usb/Makefile
++++ u-boot/drivers/usb/Makefile
+@@ -28,6 +28,7 @@
COBJS-y += isp116x-hcd.o
COBJS-y += sl811_usb.o
COBJS-y += usb_ohci.o
@@ -1172,10 +1172,10 @@
COBJS-y += usbdcore.o
COBJS-y += usbdcore_ep0.o
COBJS-y += usbdcore_mpc8xx.o
-Index: u-boot/drivers/usbdcore.c
+Index: u-boot/drivers/usb/usbdcore.c
===================================================================
---- u-boot.orig/drivers/usbdcore.c
-+++ u-boot/drivers/usbdcore.c
+--- u-boot.orig/drivers/usb/usbdcore.c
++++ u-boot/drivers/usb/usbdcore.c
@@ -31,6 +31,7 @@
#include <malloc.h>
@@ -1228,10 +1228,10 @@
+ dfu_event(device, event, data);
+#endif
}
-Index: u-boot/drivers/usbtty.c
+Index: u-boot/drivers/serial/usbtty.c
===================================================================
---- u-boot.orig/drivers/usbtty.c
-+++ u-boot/drivers/usbtty.c
+--- u-boot.orig/drivers/serial/usbtty.c
++++ u-boot/drivers/serial/usbtty.c
@@ -31,6 +31,8 @@
#include "usbtty.h"
#include "usb_cdc_acm.h"
@@ -1577,10 +1577,10 @@
void urb_link_init (urb_link * ul);
void urb_detach (struct urb *urb);
urb_link *first_urb_link (urb_link * hd);
-Index: u-boot/drivers/usbtty.h
+Index: u-boot/drivers/serial/usbtty.h
===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
@@ -70,4 +70,10 @@
#define STR_CTRL_INTERFACE 0x06
#define STR_COUNT 0x07
@@ -1993,7 +1993,7 @@
===================================================================
--- u-boot.orig/Makefile
+++ u-boot/Makefile
-@@ -270,6 +270,12 @@
+@@ -278,6 +278,12 @@
$(obj)u-boot.bin: $(obj)u-boot
$(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
Modified: trunk/src/target/u-boot/patches/uboot-gta02.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-gta02.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-gta02.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1199,10 +1199,10 @@
+
+#endif /* _PCF50633_H */
+
-Index: u-boot/drivers/pcf50633.c
+Index: u-boot/drivers/misc/pcf50633.c
===================================================================
--- /dev/null
-+++ u-boot/drivers/pcf50633.c
++++ u-boot/drivers/misc/pcf50633.c
@@ -0,0 +1,218 @@
+#include <common.h>
+
@@ -1670,10 +1670,10 @@
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
+
+TEXT_BASE = 0x33F80000
-Index: u-boot/drivers/smedia3362.c
+Index: u-boot/drivers/video/smedia3362.c
===================================================================
--- /dev/null
-+++ u-boot/drivers/smedia3362.c
++++ u-boot/drivers/video/smedia3362.c
@@ -0,0 +1,188 @@
+/*
+ * (C) Copyright 2007 by OpenMoko, Inc.
@@ -1865,8 +1865,8 @@
+#endif /* CONFIG_VIDEO_GLAMO3362 */
Index: u-boot/drivers/Makefile
===================================================================
---- u-boot.orig/drivers/Makefile
-+++ u-boot/drivers/Makefile
+--- u-boot.orig/drivers/video/Makefile
++++ u-boot/drivers/video/Makefile
@@ -67,6 +67,7 @@
COBJS-y += serial_max3100.o
COBJS-y += serial_xuartlite.o
@@ -1875,6 +1875,10 @@
COBJS-y += smiLynxEM.o
COBJS-y += usbtty.o
COBJS-y += videomodes.o
+Index: u-boot/drivers/misc/Makefile
+===================================================================
+--- u-boot.orig/drivers/misc/Makefile
++++ u-boot/drivers/misc/Makefile
@@ -145,6 +146,7 @@
COBJS-y += ali512x.o
COBJS-y += ns87308.o
@@ -1899,10 +1903,10 @@
nand_info[i].erasesize >> 10);
}
return 0;
-Index: u-boot/drivers/nand/nand_ids.c
+Index: u-boot/drivers/mtd/nand/nand_ids.c
===================================================================
---- u-boot.orig/drivers/nand/nand_ids.c
-+++ u-boot/drivers/nand/nand_ids.c
+--- u-boot.orig/drivers/mtd/nand/nand_ids.c
++++ u-boot/drivers/mtd/nand/nand_ids.c
@@ -67,7 +67,7 @@
{"NAND 256MiB 3,3V 8-bit", 0x71, 512, 256, 0x4000, 0},
@@ -1948,10 +1952,10 @@
#endif
break;
default:
-Index: u-boot/drivers/smedia3362.h
+Index: u-boot/drivers/video/smedia3362.h
===================================================================
--- /dev/null
-+++ u-boot/drivers/smedia3362.h
++++ u-boot/drivers/video/smedia3362.h
@@ -0,0 +1,385 @@
+#ifndef _GLAMO_REGS_H
+#define _GLAMO_REGS_H
Modified: trunk/src/target/u-boot/patches/uboot-license.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-license.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-license.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -2,13 +2,13 @@
===================================================================
--- u-boot.orig/common/Makefile
+++ u-boot/common/Makefile
-@@ -62,6 +62,7 @@
- COBJS-y += cmd_immap.o
- COBJS-y += cmd_itest.o
- COBJS-y += cmd_jffs2.o
-+COBJS-y += cmd_license.o
+@@ -68,6 +68,7 @@
+ COBJS-$(CONFIG_CMD_IMMAP) += cmd_immap.o
+ COBJS-$(CONFIG_CMD_ITEST) += cmd_itest.o
+ COBJS-$(CONFIG_CMD_JFFS2) += cmd_jffs2.o
++COBJS-$(CONFIG_CMD_LICENSE) += cmd_license.o
COBJS-y += cmd_load.o
- COBJS-y += cmd_log.o
+ COBJS-$(CONFIG_LOGBUFFER) += cmd_log.o
COBJS-y += cmd_mem.o
Index: u-boot/common/cmd_license.c
===================================================================
Modified: trunk/src/target/u-boot/patches/uboot-nand-markbad-reallybad.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-nand-markbad-reallybad.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-nand-markbad-reallybad.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -5,10 +5,10 @@
at some later point.
Signed-off-by: Harald Welte <laforge at openmoko.org>
-Index: u-boot/drivers/nand/nand_base.c
+Index: u-boot/drivers/mtd/nand/nand_base.c
===================================================================
---- u-boot.orig/drivers/nand/nand_base.c 2007-03-01 12:47:31.000000000 +0100
-+++ u-boot/drivers/nand/nand_base.c 2007-03-01 12:48:08.000000000 +0100
+--- u-boot.orig/drivers/mtd/nand/nand_base.c 2007-03-01 12:47:31.000000000 +0100
++++ u-boot/drivers/mtd/nand/nand_base.c 2007-03-01 12:48:08.000000000 +0100
@@ -481,7 +481,7 @@
/* Do we have a flash based bad block table ? */
Modified: trunk/src/target/u-boot/patches/uboot-s3c2410_fb.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2410_fb.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-s3c2410_fb.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1,19 +1,19 @@
-Index: u-boot/drivers/Makefile
+Index: u-boot/drivers/video/Makefile
===================================================================
---- u-boot.orig/drivers/Makefile
-+++ u-boot/drivers/Makefile
-@@ -59,6 +59,7 @@
- COBJS-y += pc_keyb.o
- COBJS-y += ps2ser.o
- COBJS-y += ps2mult.o
+--- u-boot.orig/drivers/video/Makefile
++++ u-boot/drivers/video/Makefile
+@@ -28,6 +28,7 @@
+ COBJS-y += ati_radeon_fb.o
+ COBJS-y += cfb_console.o
+ COBJS-y += ct69000.o
+COBJS-y += s3c2410_fb.o
- COBJS-y += s3c4510b_uart.o
COBJS-y += sed13806.o
COBJS-y += sed156x.o
-Index: u-boot/drivers/s3c2410_fb.c
+ COBJS-y += sm501.o
+Index: u-boot/drivers/video/s3c2410_fb.c
===================================================================
--- /dev/null
-+++ u-boot/drivers/s3c2410_fb.c
++++ u-boot/drivers/video/s3c2410_fb.c
@@ -0,0 +1,166 @@
+/*
+ * (C) Copyright 2006 by OpenMoko, Inc.
@@ -181,34 +181,3 @@
+}
+
+#endif /* CONFIG_VIDEO_S3C2410 */
-Index: u-boot/drivers/cfb_console.c
-===================================================================
---- u-boot.orig/drivers/cfb_console.c
-+++ u-boot/drivers/cfb_console.c
-@@ -141,6 +141,14 @@
- #endif
-
- /*****************************************************************************/
-+/* Defines for the S3C2410 driver */
-+/*****************************************************************************/
-+#ifdef CONFIG_VIDEO_S3C2410
-+/* it actually is little-endian, but the host CPU, too ! */
-+//#define VIDEO_FB_LITTLE_ENDIAN
-+#endif
-+
-+/*****************************************************************************/
- /* Include video_fb.h after definitions of VIDEO_HW_RECTFILL etc */
- /*****************************************************************************/
- #include <video_fb.h>
-@@ -307,6 +315,11 @@
- #define SHORTSWAP32(x) (x)
- #endif
-
-+#ifdef CONFIG_VIDEO_S3C2410
-+#undef SHORTSWAP32
-+#define SHORTSWAP32(x) ((((x) & 0xffff) << 16) | (((x) >> 16) & 0xffff))
-+#endif
-+
- #if defined(DEBUG) || defined(DEBUG_CFB_CONSOLE)
- #define PRINTD(x) printf(x)
- #else
Modified: trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-s3c2410_udc.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1,21 +1,21 @@
USB Device Controller Driver for Samsung S3C2410 SoC
-Index: u-boot/drivers/Makefile
+Index: u-boot/drivers/usb/Makefile
===================================================================
---- u-boot.orig/drivers/Makefile
-+++ u-boot/drivers/Makefile
-@@ -136,6 +136,7 @@
+--- u-boot.orig/drivers/usb/Makefile
++++ u-boot/drivers/usb/Makefile
+@@ -32,6 +32,7 @@
COBJS-y += usbdcore_ep0.o
COBJS-y += usbdcore_mpc8xx.o
COBJS-y += usbdcore_omap1510.o
+COBJS-y += usbdcore_s3c2410.o
- #
- # Miscellaneous Drivers
-Index: u-boot/drivers/usbdcore_s3c2410.c
+ COBJS := $(COBJS-y)
+ SRCS := $(COBJS:.o=.c)
+Index: u-boot/drivers/usb/usbdcore_s3c2410.c
===================================================================
--- /dev/null
-+++ u-boot/drivers/usbdcore_s3c2410.c
++++ u-boot/drivers/usb/usbdcore_s3c2410.c
@@ -0,0 +1,751 @@
+/* S3C2410 USB Device Controller Driver for u-boot
+ *
@@ -768,10 +768,244 @@
+}
+
+#endif /* CONFIG_S3C2410 && CONFIG_USB_DEVICE */
-Index: u-boot/drivers/usbdcore_s3c2410.h
+Index: u-boot/drivers/usb/usbdcore_ep0.c
===================================================================
+--- u-boot.orig/drivers/usb/usbdcore_ep0.c
++++ u-boot/drivers/usb/usbdcore_ep0.c
+@@ -193,9 +193,13 @@
+ if (!urb || !urb->buffer || !urb->buffer_length
+ || (urb->buffer_length < 255)) {
+ dbg_ep0 (2, "invalid urb %p", urb);
++ serial_printf("invalid urb %p", urb);
+ return -1L;
+ }
+
++ /* re-initialize the ep0 buffer pointer */
++ urb->buffer = (u8 *) urb->buffer_data;
++
+ /* setup tx urb */
+ urb->actual_length = 0;
+ cp = (char*)urb->buffer;
+@@ -211,15 +215,8 @@
+ usbd_device_device_descriptor (device, port))) {
+ return -1;
+ }
+- /* copy descriptor for this device */
+- copy_config (urb, device_descriptor,
+- sizeof (struct usb_device_descriptor),
+- max);
+-
+- /* correct the correct control endpoint 0 max packet size into the descriptor */
+- device_descriptor =
+- (struct usb_device_descriptor *) urb->buffer;
+-
++ urb->buffer = device_descriptor;
++ urb->actual_length = MIN(sizeof(*device_descriptor), max);
+ }
+ dbg_ep0(3, "copied device configuration, actual_length: 0x%x", urb->actual_length);
+ break;
+@@ -252,11 +249,9 @@
+ index);
+ return -1;
+ }
+- dbg_ep0(0, "attempt to copy %d bytes to urb\n",cpu_to_le16(configuration_descriptor->wTotalLength));
+- copy_config (urb, configuration_descriptor,
+-
+- cpu_to_le16(configuration_descriptor->wTotalLength),
+- max);
++ urb->buffer = configuration_descriptor;
++ urb->actual_length =
++ MIN(le16_to_cpu(configuration_descriptor->wTotalLength), max);
+ }
+
+ break;
+@@ -389,6 +384,7 @@
+ dbg_ep0 (0, "entering ep0_recv_setup()");
+ if (!urb || !urb->device) {
+ dbg_ep0 (3, "invalid URB %p", urb);
++ serial_printf("invalid URB %p", urb);
+ return -1;
+ }
+
+@@ -417,6 +413,7 @@
+ }
+ dbg_ep0 (1, "non standard request: %x",
+ request->bmRequestType & USB_REQ_TYPE_MASK);
++ serial_printf("non standard request: %x", request->bmRequestType & USB_REQ_TYPE_MASK);
+ return -1; /* Stall here */
+ }
+
+@@ -465,6 +462,8 @@
+ dbg_ep0 (1, "request %s not allowed in UNKNOWN state: %s",
+ USBD_DEVICE_REQUESTS (request->bRequest),
+ usbd_device_states[device->device_state]);
++ serial_printf("request %s not allowed in UNKNOWN state: %s", USBD_DEVICE_REQUESTS (request->bRequest), usbd_device_states[device->device_state]);
++ break;
+ return -1;
+ }
+
+@@ -563,6 +562,7 @@
+ /*dbg_ep0(2, "address: %d %d %d", */
+ /* request->wValue, le16_to_cpu(request->wValue), device->address); */
+
++ //udc_set_address(device->address);
+ return 0;
+
+ case USB_REQ_SET_DESCRIPTOR: /* XXX should we support this? */
+Index: u-boot/include/configs/neo1973_gta01.h
+===================================================================
+--- u-boot.orig/include/configs/neo1973_gta01.h
++++ u-boot/include/configs/neo1973_gta01.h
+@@ -163,6 +163,16 @@
+ #define CONFIG_USB_OHCI 1
+ #endif
+
++#define CONFIG_USB_DEVICE 1
++#define CONFIG_USB_TTY 1
++#define CFG_CONSOLE_IS_IN_ENV 1
++#define CONFIG_USBD_VENDORID 0x1457 /* Linux/NetChip */
++#define CONFIG_USBD_PRODUCTID_GSERIAL 0x5120 /* gserial */
++#define CONFIG_USBD_PRODUCTID_CDCACM 0x5119 /* CDC ACM */
++#define CONFIG_USBD_MANUFACTURER "OpenMoko, Inc"
++#define CONFIG_USBD_PRODUCT_NAME "Neo1973 Bootloader " U_BOOT_VERSION
++#define CONFIG_EXTRA_ENV_SETTINGS "usbtty=cdc_acm\0"
++
+ /*-----------------------------------------------------------------------
+ * Physical Memory Map
+ */
+Index: u-boot/cpu/arm920t/s3c24x0/interrupts.c
+===================================================================
+--- u-boot.orig/cpu/arm920t/s3c24x0/interrupts.c
++++ u-boot/cpu/arm920t/s3c24x0/interrupts.c
+@@ -222,6 +222,13 @@
+ S3C24X0_INTERRUPT * irq = S3C24X0_GetBase_INTERRUPT();
+ u_int32_t intpnd = irq->INTPND;
+
++#ifdef CONFIG_USB_DEVICE
++ if (intpnd & BIT_USBD) {
++ s3c2410_udc_irq();
++ irq->SRCPND = BIT_USBD;
++ irq->INTPND = BIT_USBD;
++ }
++#endif /* USB_DEVICE */
+ }
+ #endif /* USE_IRQ */
+
+Index: u-boot/drivers/serial/usbtty.h
+===================================================================
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
+@@ -29,6 +29,8 @@
+ #include "usbdcore_mpc8xx.h"
+ #elif defined(CONFIG_OMAP1510)
+ #include "usbdcore_omap1510.h"
++#elif defined(CONFIG_S3C2410)
++#include "usbdcore_s3c2410.h"
+ #endif
+
+ #include <version_autogenerated.h>
+Index: u-boot/board/neo1973/common/cmd_neo1973.c
+===================================================================
+--- u-boot.orig/board/neo1973/common/cmd_neo1973.c
++++ u-boot/board/neo1973/common/cmd_neo1973.c
+@@ -94,6 +94,18 @@
+ neo1973_gps(1);
+ else
+ neo1973_gps(0);
++ } else if (!strcmp(argv[1], "udc")) {
++ if (argc < 3)
++ goto out_help;
++ if (!strcmp(argv[2], "pullup")) {
++ if (argc < 4)
++ goto out_help;
++ if (!strcmp(argv[3], "on"))
++ udc_connect();
++ else
++ udc_disconnect();
++ } else
++ goto out_help;
+ } else {
+ out_help:
+ printf("Usage:\n%s\n", cmdtp->usage);
+@@ -120,5 +132,6 @@
+ "neo1973 vibrator (on|off) - switch vibrator on or off\n"
+ "neo1973 gsm (on|off) - switch GSM Modem on or off\n"
+ "neo1973 gps (on|off) - switch GPS system on or off\n"
++ "neo1973 udc pullup (on|off) - switch USB device controller pull-up on or off\n"
+ );
+ #endif /* CONFIG_CMD_BDI */
+Index: u-boot/board/neo1973/gta01/Makefile
+===================================================================
+--- u-boot.orig/board/neo1973/gta01/Makefile
++++ u-boot/board/neo1973/gta01/Makefile
+@@ -25,7 +25,7 @@
+
+ LIB = lib$(BOARD).a
+
+-OBJS := gta01.o pcf50606.o ../common/cmd_neo1973.o ../common/jbt6k74.o
++OBJS := gta01.o pcf50606.o ../common/cmd_neo1973.o ../common/jbt6k74.o ../common/udc.o
+ SOBJS := ../common/lowlevel_init.o
+
+ $(LIB): $(OBJS) $(SOBJS)
+Index: u-boot/board/neo1973/common/udc.c
+===================================================================
--- /dev/null
-+++ u-boot/drivers/usbdcore_s3c2410.h
++++ u-boot/board/neo1973/common/udc.c
+@@ -0,0 +1,23 @@
++
++#include <common.h>
++#include <usbdcore.h>
++#include <s3c2410.h>
++
++void udc_ctrl(enum usbd_event event, int param)
++{
++ S3C24X0_GPIO * const gpio = S3C24X0_GetBase_GPIO();
++
++ switch (event) {
++ case UDC_CTRL_PULLUP_ENABLE:
++#if defined(CONFIG_ARCH_GTA01_v4) || defined(CONFIG_ARCH_GTA01B_v2) || \
++ defined(CONFIG_ARCH_GTA01B_v3) || defined(CONFIG_ARCH_GTA01B_v4)
++ if (param)
++ gpio->GPBDAT |= (1 << 9);
++ else
++ gpio->GPBDAT &= ~(1 << 9);
++#endif
++ break;
++ default:
++ break;
++ }
++}
+Index: u-boot/include/usbdcore.h
+===================================================================
+--- u-boot.orig/include/usbdcore.h
++++ u-boot/include/usbdcore.h
+@@ -671,4 +671,10 @@
+ void usbd_rcv_complete(struct usb_endpoint_instance *endpoint, int len, int urb_bad);
+ void usbd_tx_complete (struct usb_endpoint_instance *endpoint);
+
++enum usbd_event {
++ UDC_CTRL_PULLUP_ENABLE,
++};
++
++void udc_ctrl(enum usbd_event event, int param);
++#endif
+ #endif
+Index: u-boot/board/neo1973/gta01/gta01.c
+===================================================================
+--- u-boot.orig/board/neo1973/gta01/gta01.c
++++ u-boot/board/neo1973/gta01/gta01.c
+@@ -334,6 +334,7 @@
+ void neo1973_poweroff(void)
+ {
+ serial_printf("poweroff\n");
++ udc_disconnect();
+ pcf50606_reg_write(PCF50606_REG_OOCC1, PCF50606_OOCC1_GOSTDBY);
+ /* don't return to caller */
+ while (1) ;
+Index: u-boot/include/usbdcore_s3c2410.h
+===================================================================
+--- /dev/null
++++ u-boot/include/usbdcore_s3c2410.h
@@ -0,0 +1,273 @@
+/* linux/include/asm/arch-s3c2410/regs-udc.h
+ *
@@ -1046,237 +1280,3 @@
+#define UDC_BULK_PACKET_SIZE 16
+
+#endif
-Index: u-boot/drivers/usbdcore_ep0.c
-===================================================================
---- u-boot.orig/drivers/usbdcore_ep0.c
-+++ u-boot/drivers/usbdcore_ep0.c
-@@ -193,9 +193,13 @@
- if (!urb || !urb->buffer || !urb->buffer_length
- || (urb->buffer_length < 255)) {
- dbg_ep0 (2, "invalid urb %p", urb);
-+ serial_printf("invalid urb %p", urb);
- return -1L;
- }
-
-+ /* re-initialize the ep0 buffer pointer */
-+ urb->buffer = (u8 *) urb->buffer_data;
-+
- /* setup tx urb */
- urb->actual_length = 0;
- cp = (char*)urb->buffer;
-@@ -211,15 +215,8 @@
- usbd_device_device_descriptor (device, port))) {
- return -1;
- }
-- /* copy descriptor for this device */
-- copy_config (urb, device_descriptor,
-- sizeof (struct usb_device_descriptor),
-- max);
--
-- /* correct the correct control endpoint 0 max packet size into the descriptor */
-- device_descriptor =
-- (struct usb_device_descriptor *) urb->buffer;
--
-+ urb->buffer = device_descriptor;
-+ urb->actual_length = MIN(sizeof(*device_descriptor), max);
- }
- dbg_ep0(3, "copied device configuration, actual_length: 0x%x", urb->actual_length);
- break;
-@@ -252,11 +249,9 @@
- index);
- return -1;
- }
-- dbg_ep0(0, "attempt to copy %d bytes to urb\n",cpu_to_le16(configuration_descriptor->wTotalLength));
-- copy_config (urb, configuration_descriptor,
--
-- cpu_to_le16(configuration_descriptor->wTotalLength),
-- max);
-+ urb->buffer = configuration_descriptor;
-+ urb->actual_length =
-+ MIN(le16_to_cpu(configuration_descriptor->wTotalLength), max);
- }
-
- break;
-@@ -389,6 +384,7 @@
- dbg_ep0 (0, "entering ep0_recv_setup()");
- if (!urb || !urb->device) {
- dbg_ep0 (3, "invalid URB %p", urb);
-+ serial_printf("invalid URB %p", urb);
- return -1;
- }
-
-@@ -417,6 +413,7 @@
- }
- dbg_ep0 (1, "non standard request: %x",
- request->bmRequestType & USB_REQ_TYPE_MASK);
-+ serial_printf("non standard request: %x", request->bmRequestType & USB_REQ_TYPE_MASK);
- return -1; /* Stall here */
- }
-
-@@ -465,6 +462,8 @@
- dbg_ep0 (1, "request %s not allowed in UNKNOWN state: %s",
- USBD_DEVICE_REQUESTS (request->bRequest),
- usbd_device_states[device->device_state]);
-+ serial_printf("request %s not allowed in UNKNOWN state: %s", USBD_DEVICE_REQUESTS (request->bRequest), usbd_device_states[device->device_state]);
-+ break;
- return -1;
- }
-
-@@ -563,6 +562,7 @@
- /*dbg_ep0(2, "address: %d %d %d", */
- /* request->wValue, le16_to_cpu(request->wValue), device->address); */
-
-+ //udc_set_address(device->address);
- return 0;
-
- case USB_REQ_SET_DESCRIPTOR: /* XXX should we support this? */
-Index: u-boot/include/configs/neo1973_gta01.h
-===================================================================
---- u-boot.orig/include/configs/neo1973_gta01.h
-+++ u-boot/include/configs/neo1973_gta01.h
-@@ -163,6 +163,16 @@
- #define CONFIG_USB_OHCI 1
- #endif
-
-+#define CONFIG_USB_DEVICE 1
-+#define CONFIG_USB_TTY 1
-+#define CFG_CONSOLE_IS_IN_ENV 1
-+#define CONFIG_USBD_VENDORID 0x1457 /* Linux/NetChip */
-+#define CONFIG_USBD_PRODUCTID_GSERIAL 0x5120 /* gserial */
-+#define CONFIG_USBD_PRODUCTID_CDCACM 0x5119 /* CDC ACM */
-+#define CONFIG_USBD_MANUFACTURER "OpenMoko, Inc"
-+#define CONFIG_USBD_PRODUCT_NAME "Neo1973 Bootloader " U_BOOT_VERSION
-+#define CONFIG_EXTRA_ENV_SETTINGS "usbtty=cdc_acm\0"
-+
- /*-----------------------------------------------------------------------
- * Physical Memory Map
- */
-Index: u-boot/cpu/arm920t/s3c24x0/interrupts.c
-===================================================================
---- u-boot.orig/cpu/arm920t/s3c24x0/interrupts.c
-+++ u-boot/cpu/arm920t/s3c24x0/interrupts.c
-@@ -222,6 +222,13 @@
- S3C24X0_INTERRUPT * irq = S3C24X0_GetBase_INTERRUPT();
- u_int32_t intpnd = irq->INTPND;
-
-+#ifdef CONFIG_USB_DEVICE
-+ if (intpnd & BIT_USBD) {
-+ s3c2410_udc_irq();
-+ irq->SRCPND = BIT_USBD;
-+ irq->INTPND = BIT_USBD;
-+ }
-+#endif /* USB_DEVICE */
- }
- #endif /* USE_IRQ */
-
-Index: u-boot/drivers/usbtty.h
-===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
-@@ -29,6 +29,8 @@
- #include "usbdcore_mpc8xx.h"
- #elif defined(CONFIG_OMAP1510)
- #include "usbdcore_omap1510.h"
-+#elif defined(CONFIG_S3C2410)
-+#include "usbdcore_s3c2410.h"
- #endif
-
- #include <version_autogenerated.h>
-Index: u-boot/board/neo1973/common/cmd_neo1973.c
-===================================================================
---- u-boot.orig/board/neo1973/common/cmd_neo1973.c
-+++ u-boot/board/neo1973/common/cmd_neo1973.c
-@@ -94,6 +94,18 @@
- neo1973_gps(1);
- else
- neo1973_gps(0);
-+ } else if (!strcmp(argv[1], "udc")) {
-+ if (argc < 3)
-+ goto out_help;
-+ if (!strcmp(argv[2], "pullup")) {
-+ if (argc < 4)
-+ goto out_help;
-+ if (!strcmp(argv[3], "on"))
-+ udc_connect();
-+ else
-+ udc_disconnect();
-+ } else
-+ goto out_help;
- } else {
- out_help:
- printf("Usage:\n%s\n", cmdtp->usage);
-@@ -120,5 +132,6 @@
- "neo1973 vibrator (on|off) - switch vibrator on or off\n"
- "neo1973 gsm (on|off) - switch GSM Modem on or off\n"
- "neo1973 gps (on|off) - switch GPS system on or off\n"
-+ "neo1973 udc pullup (on|off) - switch USB device controller pull-up on or off\n"
- );
- #endif /* CONFIG_CMD_BDI */
-Index: u-boot/board/neo1973/gta01/Makefile
-===================================================================
---- u-boot.orig/board/neo1973/gta01/Makefile
-+++ u-boot/board/neo1973/gta01/Makefile
-@@ -25,7 +25,7 @@
-
- LIB = lib$(BOARD).a
-
--OBJS := gta01.o pcf50606.o ../common/cmd_neo1973.o ../common/jbt6k74.o
-+OBJS := gta01.o pcf50606.o ../common/cmd_neo1973.o ../common/jbt6k74.o ../common/udc.o
- SOBJS := ../common/lowlevel_init.o
-
- $(LIB): $(OBJS) $(SOBJS)
-Index: u-boot/board/neo1973/common/udc.c
-===================================================================
---- /dev/null
-+++ u-boot/board/neo1973/common/udc.c
-@@ -0,0 +1,23 @@
-+
-+#include <common.h>
-+#include <usbdcore.h>
-+#include <s3c2410.h>
-+
-+void udc_ctrl(enum usbd_event event, int param)
-+{
-+ S3C24X0_GPIO * const gpio = S3C24X0_GetBase_GPIO();
-+
-+ switch (event) {
-+ case UDC_CTRL_PULLUP_ENABLE:
-+#if defined(CONFIG_ARCH_GTA01_v4) || defined(CONFIG_ARCH_GTA01B_v2) || \
-+ defined(CONFIG_ARCH_GTA01B_v3) || defined(CONFIG_ARCH_GTA01B_v4)
-+ if (param)
-+ gpio->GPBDAT |= (1 << 9);
-+ else
-+ gpio->GPBDAT &= ~(1 << 9);
-+#endif
-+ break;
-+ default:
-+ break;
-+ }
-+}
-Index: u-boot/include/usbdcore.h
-===================================================================
---- u-boot.orig/include/usbdcore.h
-+++ u-boot/include/usbdcore.h
-@@ -671,4 +671,10 @@
- void usbd_rcv_complete(struct usb_endpoint_instance *endpoint, int len, int urb_bad);
- void usbd_tx_complete (struct usb_endpoint_instance *endpoint);
-
-+enum usbd_event {
-+ UDC_CTRL_PULLUP_ENABLE,
-+};
-+
-+void udc_ctrl(enum usbd_event event, int param);
-+#endif
- #endif
-Index: u-boot/board/neo1973/gta01/gta01.c
-===================================================================
---- u-boot.orig/board/neo1973/gta01/gta01.c
-+++ u-boot/board/neo1973/gta01/gta01.c
-@@ -334,6 +334,7 @@
- void neo1973_poweroff(void)
- {
- serial_printf("poweroff\n");
-+ udc_disconnect();
- pcf50606_reg_write(PCF50606_REG_OOCC1, PCF50606_OOCC1_GOSTDBY);
- /* don't return to caller */
- while (1) ;
Modified: trunk/src/target/u-boot/patches/uboot-s3c2440.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2440.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-s3c2440.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -161,10 +161,10 @@
} /*__attribute__((__packed__))*/ S3C2410_SDI;
-Index: u-boot/rtc/s3c24x0_rtc.c
+Index: u-boot/drivers/rtc/s3c24x0_rtc.c
===================================================================
---- u-boot.orig/rtc/s3c24x0_rtc.c
-+++ u-boot/rtc/s3c24x0_rtc.c
+--- u-boot.orig/drivers/rtc/s3c24x0_rtc.c
++++ u-boot/rtc/drivers/s3c24x0_rtc.c
@@ -34,6 +34,8 @@
#include <s3c2400.h>
#elif defined(CONFIG_S3C2410)
@@ -717,10 +717,10 @@
gpio->GPECON = old_gpecon;
#endif
#ifdef CONFIG_S3C2400
-Index: u-boot/drivers/usbdcore_s3c2410.c
+Index: u-boot/drivers/usb/usbdcore_s3c2410.c
===================================================================
---- u-boot.orig/drivers/usbdcore_s3c2410.c
-+++ u-boot/drivers/usbdcore_s3c2410.c
+--- u-boot.orig/drivers/usb/usbdcore_s3c2410.c
++++ u-boot/drivers/usb/usbdcore_s3c2410.c
@@ -24,7 +24,7 @@
#include <config.h>
@@ -730,10 +730,10 @@
#include <common.h>
-Index: u-boot/drivers/usbtty.h
+Index: u-boot/drivers/serial/usbtty.h
===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
@@ -29,7 +29,7 @@
#include "usbdcore_mpc8xx.h"
#elif defined(CONFIG_OMAP1510)
@@ -1347,10 +1347,10 @@
-# endif /* defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410) */
+# endif /* defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410) || defined(CONFIG_S3C2440) */
#endif /* defined(CONFIG_USB_OHCI) && defined(CFG_USB_OHCI_CPU_INIT) */
-Index: u-boot/drivers/usb_ohci.c
+Index: u-boot/drivers/usb/usb_ohci.c
===================================================================
---- u-boot.orig/drivers/usb_ohci.c
-+++ u-boot/drivers/usb_ohci.c
+--- u-boot.orig/drivers/usb/usb_ohci.c
++++ u-boot/drivers/usb/usb_ohci.c
@@ -62,6 +62,7 @@
#if defined(CONFIG_ARM920T) || \
defined(CONFIG_S3C2400) || \
Modified: trunk/src/target/u-boot/patches/uboot-s3c2442.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2442.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-s3c2442.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -519,8 +519,8 @@
So we need to copy the interrupt vectors, etc. */
Index: u-boot/drivers/usbdcore_s3c2410.c
===================================================================
---- u-boot.orig/drivers/usbdcore_s3c2410.c
-+++ u-boot/drivers/usbdcore_s3c2410.c
+--- u-boot.orig/drivers/usb/usbdcore_s3c2410.c
++++ u-boot/drivers/usb/usbdcore_s3c2410.c
@@ -24,7 +24,8 @@
#include <config.h>
@@ -533,8 +533,8 @@
Index: u-boot/drivers/usbtty.h
===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
@@ -29,7 +29,8 @@
#include "usbdcore_mpc8xx.h"
#elif defined(CONFIG_OMAP1510)
@@ -646,10 +646,10 @@
S3C24X0_REG32 SDIIMSK;
S3C24X0_REG32 SDIDAT;
#endif
-Index: u-boot/rtc/s3c24x0_rtc.c
+Index: u-boot/drivers/rtc/s3c24x0_rtc.c
===================================================================
---- u-boot.orig/rtc/s3c24x0_rtc.c
-+++ u-boot/rtc/s3c24x0_rtc.c
+--- u-boot.orig/drivers/rtc/s3c24x0_rtc.c
++++ u-boot/drivers/rtc/s3c24x0_rtc.c
@@ -34,7 +34,7 @@
#include <s3c2400.h>
#elif defined(CONFIG_S3C2410)
Modified: trunk/src/target/u-boot/patches/uboot-s3c2443.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-s3c2443.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-s3c2443.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -144,10 +144,10 @@
defined(CONFIG_VCMA9)
tbclk = CFG_HZ;
#else
-Index: u-boot/drivers/usbdcore_s3c2410.c
+Index: u-boot/drivers/usb/usbdcore_s3c2410.c
===================================================================
---- u-boot.orig/drivers/usbdcore_s3c2410.c
-+++ u-boot/drivers/usbdcore_s3c2410.c
+--- u-boot.orig/drivers/usb/usbdcore_s3c2410.c
++++ u-boot/drivers/usb/usbdcore_s3c2410.c
@@ -25,7 +25,7 @@
#include <config.h>
Modified: trunk/src/target/u-boot/patches/uboot-serial_terminal.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-serial_terminal.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-serial_terminal.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -5,13 +5,13 @@
===================================================================
--- u-boot.orig/common/Makefile
+++ u-boot/common/Makefile
-@@ -78,6 +78,7 @@
+@@ -86,6 +86,7 @@
COBJS-y += cmd_sata.o
- COBJS-y += cmd_scsi.o
- COBJS-y += cmd_spi.o
-+COBJS-y += cmd_terminal.o
- COBJS-y += cmd_universe.o
- COBJS-y += cmd_usb.o
+ COBJS-$(CONFIG_CMD_SCSI) += cmd_scsi.o
+ COBJS-$(CONFIG_CMD_SPI) += cmd_spi.o
++COBJS-$(CONFIG_CMD_TERMINAL) += cmd_terminal.o
+ COBJS-$(CONFIG_CMD_UNIVERSE) += cmd_universe.o
+ COBJS-$(CONFIG_CMD_USB) += cmd_usb.o
COBJS-y += cmd_vfd.o
Index: u-boot/common/cmd_terminal.c
===================================================================
Modified: trunk/src/target/u-boot/patches/uboot-smdk2443.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-smdk2443.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-smdk2443.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -1410,10 +1410,10 @@
+ break;
+ }
+}
-Index: u-boot/drivers/usb_ohci.c
+Index: u-boot/drivers/usb/usb_ohci.c
===================================================================
---- u-boot.orig/drivers/usb_ohci.c
-+++ u-boot/drivers/usb_ohci.c
+--- u-boot.orig/drivers/usb/usb_ohci.c
++++ u-boot/drivers/usb/usb_ohci.c
@@ -63,6 +63,7 @@
defined(CONFIG_S3C2400) || \
defined(CONFIG_S3C2410) || \
Modified: trunk/src/target/u-boot/patches/uboot-usbtty-acm.patch
===================================================================
--- trunk/src/target/u-boot/patches/uboot-usbtty-acm.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/uboot-usbtty-acm.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -4,10 +4,10 @@
handhelds.org. Please don't complain to me about coding style issues
or whitespace changes in this one - HW.
-Index: u-boot/drivers/usbtty.c
+Index: u-boot/drivers/serial/usbtty.c
===================================================================
---- u-boot.orig/drivers/usbtty.c
-+++ u-boot/drivers/usbtty.c
+--- u-boot.orig/drivers/serial/usbtty.c
++++ u-boot/drivers/serial/usbtty.c
@@ -1,7 +1,7 @@
/*
* (C) Copyright 2003
@@ -40,10 +40,10 @@
/* prepare buffers... */
buf_init (&usbtty_input, USBTTY_BUFFER_SIZE);
buf_init (&usbtty_output, USBTTY_BUFFER_SIZE);
-Index: u-boot/drivers/usbtty.h
+Index: u-boot/drivers/serial/usbtty.h
===================================================================
---- u-boot.orig/drivers/usbtty.h
-+++ u-boot/drivers/usbtty.h
+--- u-boot.orig/drivers/serial/usbtty.h
++++ u-boot/drivers/serial/usbtty.h
@@ -27,7 +27,7 @@
#include "usbdcore.h"
#if defined(CONFIG_PPC)
@@ -70,8 +70,8 @@
Index: u-boot/drivers/usbdcore_omap1510.c
===================================================================
---- u-boot.orig/drivers/usbdcore_omap1510.c
-+++ u-boot/drivers/usbdcore_omap1510.c
+--- u-boot.orig/drivers/usb/usbdcore_omap1510.c
++++ u-boot/drivers/usb/usbdcore_omap1510.c
@@ -960,7 +960,7 @@
/* Handle general USB interrupts and dispatch according to type.
* This function implements TRM Figure 14-13.
Modified: trunk/src/target/u-boot/patches/usbdcore-multiple_configs.patch
===================================================================
--- trunk/src/target/u-boot/patches/usbdcore-multiple_configs.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/usbdcore-multiple_configs.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -11,10 +11,10 @@
Signed-off-by: Harald Welte <laforge at openmoko.org>
-Index: u-boot/drivers/usbdcore_ep0.c
+Index: u-boot/drivers/usb/usbdcore_ep0.c
===================================================================
---- u-boot.orig/drivers/usbdcore_ep0.c
-+++ u-boot/drivers/usbdcore_ep0.c
+--- u-boot.orig/drivers/usb/usbdcore_ep0.c
++++ u-boot/drivers/usb/usbdcore_ep0.c
@@ -237,8 +237,8 @@
return -1;
}
@@ -43,10 +43,10 @@
/* reset interface and alternate settings */
device->interface = device->alternate = 0;
-Index: u-boot/drivers/usbdcore.c
+Index: u-boot/drivers/usb/usbdcore.c
===================================================================
---- u-boot.orig/drivers/usbdcore.c
-+++ u-boot/drivers/usbdcore.c
+--- u-boot.orig/drivers/usb/usbdcore.c
++++ u-boot/drivers/usb/usbdcore.c
@@ -147,12 +147,9 @@
static struct usb_configuration_instance *usbd_device_configuration_instance (struct usb_device_instance *device,
unsigned int port, unsigned int configuration)
Modified: trunk/src/target/u-boot/patches/usbtty-irq-racecondition-fix.patch
===================================================================
--- trunk/src/target/u-boot/patches/usbtty-irq-racecondition-fix.patch 2007-12-04 15:47:21 UTC (rev 3563)
+++ trunk/src/target/u-boot/patches/usbtty-irq-racecondition-fix.patch 2007-12-04 17:57:54 UTC (rev 3564)
@@ -2,10 +2,10 @@
lack of lacking in the case of irq-accelerated usb device drivers (such as our
s3c24xx udc driver).
-Index: u-boot/drivers/usbtty.c
+Index: u-boot/drivers/serial/usbtty.c
===================================================================
---- u-boot.orig/drivers/usbtty.c
-+++ u-boot/drivers/usbtty.c
+--- u-boot.orig/drivers/serial/usbtty.c
++++ u-boot/drivers/serial/usbtty.c
@@ -26,6 +26,7 @@
#ifdef CONFIG_USB_TTY
More information about the commitlog
mailing list