97 lines
2.8 KiB
Diff
97 lines
2.8 KiB
Diff
|
From ba0e3820ee1def7c358391df293551b726fb7014 Mon Sep 17 00:00:00 2001
|
||
|
From: Lars-Peter Clausen <lars@metafoo.de>
|
||
|
Date: Mon, 11 Jan 2010 04:29:45 +0100
|
||
|
Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/104-usb.patch
|
||
|
|
||
|
---
|
||
|
drivers/usb/Kconfig | 1 +
|
||
|
drivers/usb/gadget/Kconfig | 14 ++++++++++++++
|
||
|
drivers/usb/gadget/Makefile | 1 +
|
||
|
drivers/usb/gadget/gadget_chips.h | 9 +++++++++
|
||
|
4 files changed, 25 insertions(+), 0 deletions(-)
|
||
|
|
||
|
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
|
||
|
index 2407508..dac9129 100644
|
||
|
--- a/drivers/usb/Kconfig
|
||
|
+++ b/drivers/usb/Kconfig
|
||
|
@@ -44,6 +44,7 @@ config USB_ARCH_HAS_OHCI
|
||
|
default y if PPC_MPC52xx
|
||
|
# MIPS:
|
||
|
default y if SOC_AU1X00
|
||
|
+ default y if JZSOC
|
||
|
# SH:
|
||
|
default y if CPU_SUBTYPE_SH7720
|
||
|
default y if CPU_SUBTYPE_SH7721
|
||
|
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
|
||
|
index a18e3c5..c5c77e1 100644
|
||
|
--- a/drivers/usb/gadget/Kconfig
|
||
|
+++ b/drivers/usb/gadget/Kconfig
|
||
|
@@ -121,11 +121,25 @@ choice
|
||
|
#
|
||
|
# Integrated controllers
|
||
|
#
|
||
|
+config USB_GADGET_JZ4740
|
||
|
+ boolean "JZ4740 UDC"
|
||
|
+ depends on SOC_JZ4740
|
||
|
+ select USB_GADGET_SELECTED
|
||
|
+ select USB_GADGET_DUALSPEED
|
||
|
+ help
|
||
|
+ Select this to support the Ingenic JZ4740 processor
|
||
|
+ high speed USB device controller.
|
||
|
+
|
||
|
+config USB_JZ4740
|
||
|
+ tristate
|
||
|
+ depends on USB_GADGET_JZ4740
|
||
|
+ default USB_GADGET
|
||
|
|
||
|
config USB_GADGET_AT91
|
||
|
boolean "Atmel AT91 USB Device Port"
|
||
|
depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45
|
||
|
select USB_GADGET_SELECTED
|
||
|
+
|
||
|
help
|
||
|
Many Atmel AT91 processors (such as the AT91RM2000) have a
|
||
|
full speed USB Device Port with support for five configurable
|
||
|
diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile
|
||
|
index 9d7b87c..cb2920e 100644
|
||
|
--- a/drivers/usb/gadget/Makefile
|
||
|
+++ b/drivers/usb/gadget/Makefile
|
||
|
@@ -28,6 +28,7 @@ obj-$(CONFIG_USB_FSL_QE) += fsl_qe_udc.o
|
||
|
obj-$(CONFIG_USB_CI13XXX) += ci13xxx_udc.o
|
||
|
obj-$(CONFIG_USB_S3C_HSOTG) += s3c-hsotg.o
|
||
|
obj-$(CONFIG_USB_LANGWELL) += langwell_udc.o
|
||
|
+obj-$(CONFIG_USB_JZ4740) += jz4740_udc.o
|
||
|
|
||
|
#
|
||
|
# USB gadget drivers
|
||
|
diff --git a/drivers/usb/gadget/gadget_chips.h b/drivers/usb/gadget/gadget_chips.h
|
||
|
index f2d270b..369f20a 100644
|
||
|
--- a/drivers/usb/gadget/gadget_chips.h
|
||
|
+++ b/drivers/usb/gadget/gadget_chips.h
|
||
|
@@ -15,6 +15,12 @@
|
||
|
#ifndef __GADGET_CHIPS_H
|
||
|
#define __GADGET_CHIPS_H
|
||
|
|
||
|
+#ifdef CONFIG_USB_GADGET_JZ4740
|
||
|
+#define gadget_is_jz4740(g) !strcmp("ingenic_hsusb", (g)->name)
|
||
|
+#else
|
||
|
+#define gadget_is_jz4740(g) 0
|
||
|
+#endif
|
||
|
+
|
||
|
#ifdef CONFIG_USB_GADGET_NET2280
|
||
|
#define gadget_is_net2280(g) !strcmp("net2280", (g)->name)
|
||
|
#else
|
||
|
@@ -247,6 +253,9 @@ static inline int usb_gadget_controller_number(struct usb_gadget *gadget)
|
||
|
return 0x24;
|
||
|
else if (gadget_is_r8a66597(gadget))
|
||
|
return 0x25;
|
||
|
+ else if (gadget_is_jz4740(gadget))
|
||
|
+ return 0x26;
|
||
|
+
|
||
|
return -ENOENT;
|
||
|
}
|
||
|
|
||
|
--
|
||
|
1.5.6.5
|
||
|
|