| 1 | From ba0e3820ee1def7c358391df293551b726fb7014 Mon Sep 17 00:00:00 2001 |
| 2 | From: Lars-Peter Clausen <lars@metafoo.de> |
| 3 | Date: Mon, 11 Jan 2010 04:29:45 +0100 |
| 4 | Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/104-usb.patch |
| 5 | |
| 6 | --- |
| 7 | drivers/usb/Kconfig | 1 + |
| 8 | drivers/usb/gadget/Kconfig | 14 ++++++++++++++ |
| 9 | drivers/usb/gadget/Makefile | 1 + |
| 10 | drivers/usb/gadget/gadget_chips.h | 9 +++++++++ |
| 11 | 4 files changed, 25 insertions(+), 0 deletions(-) |
| 12 | |
| 13 | --- a/drivers/usb/gadget/Kconfig |
| 14 | +++ b/drivers/usb/gadget/Kconfig |
| 15 | @@ -121,11 +121,25 @@ choice |
| 16 | # |
| 17 | # Integrated controllers |
| 18 | # |
| 19 | +config USB_GADGET_JZ4740 |
| 20 | + boolean "JZ4740 UDC" |
| 21 | + depends on SOC_JZ4740 |
| 22 | + select USB_GADGET_SELECTED |
| 23 | + select USB_GADGET_DUALSPEED |
| 24 | + help |
| 25 | + Select this to support the Ingenic JZ4740 processor |
| 26 | + high speed USB device controller. |
| 27 | + |
| 28 | +config USB_JZ4740 |
| 29 | + tristate |
| 30 | + depends on USB_GADGET_JZ4740 |
| 31 | + default USB_GADGET |
| 32 | |
| 33 | config USB_GADGET_AT91 |
| 34 | boolean "Atmel AT91 USB Device Port" |
| 35 | depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45 |
| 36 | select USB_GADGET_SELECTED |
| 37 | + |
| 38 | help |
| 39 | Many Atmel AT91 processors (such as the AT91RM2000) have a |
| 40 | full speed USB Device Port with support for five configurable |
| 41 | --- a/drivers/usb/gadget/Makefile |
| 42 | +++ b/drivers/usb/gadget/Makefile |
| 43 | @@ -28,6 +28,7 @@ obj-$(CONFIG_USB_FSL_QE) += fsl_qe_udc.o |
| 44 | obj-$(CONFIG_USB_CI13XXX) += ci13xxx_udc.o |
| 45 | obj-$(CONFIG_USB_S3C_HSOTG) += s3c-hsotg.o |
| 46 | obj-$(CONFIG_USB_LANGWELL) += langwell_udc.o |
| 47 | +obj-$(CONFIG_USB_JZ4740) += jz4740_udc.o |
| 48 | |
| 49 | # |
| 50 | # USB gadget drivers |
| 51 | --- a/drivers/usb/gadget/gadget_chips.h |
| 52 | +++ b/drivers/usb/gadget/gadget_chips.h |
| 53 | @@ -15,6 +15,12 @@ |
| 54 | #ifndef __GADGET_CHIPS_H |
| 55 | #define __GADGET_CHIPS_H |
| 56 | |
| 57 | +#ifdef CONFIG_USB_GADGET_JZ4740 |
| 58 | +#define gadget_is_jz4740(g) !strcmp("ingenic_hsusb", (g)->name) |
| 59 | +#else |
| 60 | +#define gadget_is_jz4740(g) 0 |
| 61 | +#endif |
| 62 | + |
| 63 | #ifdef CONFIG_USB_GADGET_NET2280 |
| 64 | #define gadget_is_net2280(g) !strcmp("net2280", (g)->name) |
| 65 | #else |
| 66 | @@ -247,6 +253,9 @@ static inline int usb_gadget_controller_ |
| 67 | return 0x24; |
| 68 | else if (gadget_is_r8a66597(gadget)) |
| 69 | return 0x25; |
| 70 | + else if (gadget_is_jz4740(gadget)) |
| 71 | + return 0x26; |
| 72 | + |
| 73 | return -ENOENT; |
| 74 | } |
| 75 | |
| 76 | |