The drivers/usb/gadget directory contains many files. Files which are related can be distributed into separate directories. This patch moves the UDC drivers into a separate directory. Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@xxxxxxxxxxx> --- drivers/usb/gadget/Kconfig | 371 +------------------------- drivers/usb/gadget/Makefile | 31 +-- drivers/usb/gadget/legacy/Makefile | 1 + drivers/usb/gadget/{ => udc}/Kconfig | 344 ------------------------ drivers/usb/gadget/udc/Makefile | 31 +++ drivers/usb/gadget/{ => udc}/amd5536udc.c | 0 drivers/usb/gadget/{ => udc}/amd5536udc.h | 0 drivers/usb/gadget/{ => udc}/at91_udc.c | 0 drivers/usb/gadget/{ => udc}/at91_udc.h | 0 drivers/usb/gadget/{ => udc}/atmel_usba_udc.c | 0 drivers/usb/gadget/{ => udc}/atmel_usba_udc.h | 0 drivers/usb/gadget/{ => udc}/bcm63xx_udc.c | 0 drivers/usb/gadget/{ => udc}/dummy_hcd.c | 0 drivers/usb/gadget/{ => udc}/fotg210-udc.c | 0 drivers/usb/gadget/{ => udc}/fotg210.h | 0 drivers/usb/gadget/{ => udc}/fsl_mxc_udc.c | 0 drivers/usb/gadget/{ => udc}/fsl_qe_udc.c | 0 drivers/usb/gadget/{ => udc}/fsl_qe_udc.h | 0 drivers/usb/gadget/{ => udc}/fsl_udc_core.c | 0 drivers/usb/gadget/{ => udc}/fsl_usb2_udc.h | 0 drivers/usb/gadget/{ => udc}/fusb300_udc.c | 0 drivers/usb/gadget/{ => udc}/fusb300_udc.h | 0 drivers/usb/gadget/{ => udc}/gadget_chips.h | 0 drivers/usb/gadget/{ => udc}/goku_udc.c | 0 drivers/usb/gadget/{ => udc}/goku_udc.h | 0 drivers/usb/gadget/{ => udc}/gr_udc.c | 0 drivers/usb/gadget/{ => udc}/gr_udc.h | 0 drivers/usb/gadget/{ => udc}/lpc32xx_udc.c | 0 drivers/usb/gadget/{ => udc}/m66592-udc.c | 0 drivers/usb/gadget/{ => udc}/m66592-udc.h | 0 drivers/usb/gadget/{ => udc}/mv_u3d.h | 0 drivers/usb/gadget/{ => udc}/mv_u3d_core.c | 0 drivers/usb/gadget/{ => udc}/mv_udc.h | 0 drivers/usb/gadget/{ => udc}/mv_udc_core.c | 0 drivers/usb/gadget/{ => udc}/net2272.c | 0 drivers/usb/gadget/{ => udc}/net2272.h | 0 drivers/usb/gadget/{ => udc}/net2280.c | 0 drivers/usb/gadget/{ => udc}/net2280.h | 0 drivers/usb/gadget/{ => udc}/omap_udc.c | 0 drivers/usb/gadget/{ => udc}/omap_udc.h | 0 drivers/usb/gadget/{ => udc}/pch_udc.c | 0 drivers/usb/gadget/{ => udc}/pxa25x_udc.c | 0 drivers/usb/gadget/{ => udc}/pxa25x_udc.h | 0 drivers/usb/gadget/{ => udc}/pxa27x_udc.c | 0 drivers/usb/gadget/{ => udc}/pxa27x_udc.h | 0 drivers/usb/gadget/{ => udc}/r8a66597-udc.c | 0 drivers/usb/gadget/{ => udc}/r8a66597-udc.h | 0 drivers/usb/gadget/{ => udc}/s3c-hsudc.c | 0 drivers/usb/gadget/{ => udc}/s3c2410_udc.c | 0 drivers/usb/gadget/{ => udc}/s3c2410_udc.h | 0 drivers/usb/gadget/{ => udc}/udc-core.c | 0 51 files changed, 35 insertions(+), 743 deletions(-) copy drivers/usb/gadget/{ => udc}/Kconfig (54%) create mode 100644 drivers/usb/gadget/udc/Makefile rename drivers/usb/gadget/{ => udc}/amd5536udc.c (100%) rename drivers/usb/gadget/{ => udc}/amd5536udc.h (100%) rename drivers/usb/gadget/{ => udc}/at91_udc.c (100%) rename drivers/usb/gadget/{ => udc}/at91_udc.h (100%) rename drivers/usb/gadget/{ => udc}/atmel_usba_udc.c (100%) rename drivers/usb/gadget/{ => udc}/atmel_usba_udc.h (100%) rename drivers/usb/gadget/{ => udc}/bcm63xx_udc.c (100%) rename drivers/usb/gadget/{ => udc}/dummy_hcd.c (100%) rename drivers/usb/gadget/{ => udc}/fotg210-udc.c (100%) rename drivers/usb/gadget/{ => udc}/fotg210.h (100%) rename drivers/usb/gadget/{ => udc}/fsl_mxc_udc.c (100%) rename drivers/usb/gadget/{ => udc}/fsl_qe_udc.c (100%) rename drivers/usb/gadget/{ => udc}/fsl_qe_udc.h (100%) rename drivers/usb/gadget/{ => udc}/fsl_udc_core.c (100%) rename drivers/usb/gadget/{ => udc}/fsl_usb2_udc.h (100%) rename drivers/usb/gadget/{ => udc}/fusb300_udc.c (100%) rename drivers/usb/gadget/{ => udc}/fusb300_udc.h (100%) rename drivers/usb/gadget/{ => udc}/gadget_chips.h (100%) rename drivers/usb/gadget/{ => udc}/goku_udc.c (100%) rename drivers/usb/gadget/{ => udc}/goku_udc.h (100%) rename drivers/usb/gadget/{ => udc}/gr_udc.c (100%) rename drivers/usb/gadget/{ => udc}/gr_udc.h (100%) rename drivers/usb/gadget/{ => udc}/lpc32xx_udc.c (100%) rename drivers/usb/gadget/{ => udc}/m66592-udc.c (100%) rename drivers/usb/gadget/{ => udc}/m66592-udc.h (100%) rename drivers/usb/gadget/{ => udc}/mv_u3d.h (100%) rename drivers/usb/gadget/{ => udc}/mv_u3d_core.c (100%) rename drivers/usb/gadget/{ => udc}/mv_udc.h (100%) rename drivers/usb/gadget/{ => udc}/mv_udc_core.c (100%) rename drivers/usb/gadget/{ => udc}/net2272.c (100%) rename drivers/usb/gadget/{ => udc}/net2272.h (100%) rename drivers/usb/gadget/{ => udc}/net2280.c (100%) rename drivers/usb/gadget/{ => udc}/net2280.h (100%) rename drivers/usb/gadget/{ => udc}/omap_udc.c (100%) rename drivers/usb/gadget/{ => udc}/omap_udc.h (100%) rename drivers/usb/gadget/{ => udc}/pch_udc.c (100%) rename drivers/usb/gadget/{ => udc}/pxa25x_udc.c (100%) rename drivers/usb/gadget/{ => udc}/pxa25x_udc.h (100%) rename drivers/usb/gadget/{ => udc}/pxa27x_udc.c (100%) rename drivers/usb/gadget/{ => udc}/pxa27x_udc.h (100%) rename drivers/usb/gadget/{ => udc}/r8a66597-udc.c (100%) rename drivers/usb/gadget/{ => udc}/r8a66597-udc.h (100%) rename drivers/usb/gadget/{ => udc}/s3c-hsudc.c (100%) rename drivers/usb/gadget/{ => udc}/s3c2410_udc.c (100%) rename drivers/usb/gadget/{ => udc}/s3c2410_udc.h (100%) rename drivers/usb/gadget/{ => udc}/udc-core.c (100%) diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig index 2986a43..5c822af 100644 --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/Kconfig @@ -127,376 +127,7 @@ config USB_GADGET_STORAGE_NUM_BUFFERS a module parameter as well. If unsure, say 2. -# -# USB Peripheral Controller Support -# -# The order here is alphabetical, except that integrated controllers go -# before discrete ones so they will be the initial/default value: -# - integrated/SOC controllers first -# - licensed IP used in both SOC and discrete versions -# - discrete ones (including all PCI-only controllers) -# - debug/dummy gadget+hcd is last. -# -menu "USB Peripheral Controller" - -# -# Integrated controllers -# - -config USB_AT91 - tristate "Atmel AT91 USB Device Port" - depends on ARCH_AT91 - help - Many Atmel AT91 processors (such as the AT91RM2000) have a - full speed USB Device Port with support for five configurable - endpoints (plus endpoint zero). - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "at91_udc" and force all - gadget drivers to also be dynamically linked. - -config USB_LPC32XX - tristate "LPC32XX USB Peripheral Controller" - depends on ARCH_LPC32XX && I2C - select USB_ISP1301 - help - This option selects the USB device controller in the LPC32xx SoC. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "lpc32xx_udc" and force all - gadget drivers to also be dynamically linked. - -config USB_ATMEL_USBA - tristate "Atmel USBA" - depends on AVR32 || ARCH_AT91 - help - USBA is the integrated high-speed USB Device controller on - the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel. - -config USB_BCM63XX_UDC - tristate "Broadcom BCM63xx Peripheral Controller" - depends on BCM63XX - help - Many Broadcom BCM63xx chipsets (such as the BCM6328) have a - high speed USB Device Port with support for four fixed endpoints - (plus endpoint zero). - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "bcm63xx_udc". - -config USB_FSL_USB2 - tristate "Freescale Highspeed USB DR Peripheral Controller" - depends on FSL_SOC || ARCH_MXC - select USB_FSL_MPH_DR_OF if OF - help - Some of Freescale PowerPC and i.MX processors have a High Speed - Dual-Role(DR) USB controller, which supports device mode. - - The number of programmable endpoints is different through - SOC revisions. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "fsl_usb2_udc" and force - all gadget drivers to also be dynamically linked. - -config USB_FUSB300 - tristate "Faraday FUSB300 USB Peripheral Controller" - depends on !PHYS_ADDR_T_64BIT && HAS_DMA - help - Faraday usb device controller FUSB300 driver - -config USB_FOTG210_UDC - depends on HAS_DMA - tristate "Faraday FOTG210 USB Peripheral Controller" - help - Faraday USB2.0 OTG controller which can be configured as - high speed or full speed USB device. This driver supppors - Bulk Transfer so far. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "fotg210_udc". - -config USB_GR_UDC - tristate "Aeroflex Gaisler GRUSBDC USB Peripheral Controller Driver" - depends on HAS_DMA - help - Select this to support Aeroflex Gaisler GRUSBDC cores from the GRLIB - VHDL IP core library. - -config USB_OMAP - tristate "OMAP USB Device Controller" - depends on ARCH_OMAP1 - depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3) - help - Many Texas Instruments OMAP processors have flexible full - speed USB device controllers, with support for up to 30 - endpoints (plus endpoint zero). This driver supports the - controller in the OMAP 1611, and should work with controllers - in other OMAP processors too, given minor tweaks. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "omap_udc" and force all - gadget drivers to also be dynamically linked. - -config USB_PXA25X - tristate "PXA 25x or IXP 4xx" - depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX - help - Intel's PXA 25x series XScale ARM-5TE processors include - an integrated full speed USB 1.1 device controller. The - controller in the IXP 4xx series is register-compatible. - - It has fifteen fixed-function endpoints, as well as endpoint - zero (for control transfers). - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "pxa25x_udc" and force all - gadget drivers to also be dynamically linked. - -# if there's only one gadget driver, using only two bulk endpoints, -# don't waste memory for the other endpoints -config USB_PXA25X_SMALL - depends on USB_PXA25X - bool - default n if USB_ETH_RNDIS - default y if USB_ZERO - default y if USB_ETH - default y if USB_G_SERIAL - -config USB_R8A66597 - tristate "Renesas R8A66597 USB Peripheral Controller" - depends on HAS_DMA - help - R8A66597 is a discrete USB host and peripheral controller chip that - supports both full and high speed USB 2.0 data transfers. - It has nine configurable endpoints, and endpoint zero. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "r8a66597_udc" and force all - gadget drivers to also be dynamically linked. - -config USB_RENESAS_USBHS_UDC - tristate 'Renesas USBHS controller' - depends on USB_RENESAS_USBHS - help - Renesas USBHS is a discrete USB host and peripheral controller chip - that supports both full and high speed USB 2.0 data transfers. - It has nine or more configurable endpoints, and endpoint zero. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "renesas_usbhs" and force all - gadget drivers to also be dynamically linked. - -config USB_PXA27X - tristate "PXA 27x" - help - Intel's PXA 27x series XScale ARM v5TE processors include - an integrated full speed USB 1.1 device controller. - - It has up to 23 endpoints, as well as endpoint zero (for - control transfers). - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "pxa27x_udc" and force all - gadget drivers to also be dynamically linked. - -config USB_S3C2410 - tristate "S3C2410 USB Device Controller" - depends on ARCH_S3C24XX - help - Samsung's S3C2410 is an ARM-4 processor with an integrated - full speed USB 1.1 device controller. It has 4 configurable - endpoints, as well as endpoint zero (for control transfers). - - This driver has been tested on the S3C2410, S3C2412, and - S3C2440 processors. - -config USB_S3C2410_DEBUG - boolean "S3C2410 udc debug messages" - depends on USB_S3C2410 - -config USB_S3C_HSUDC - tristate "S3C2416, S3C2443 and S3C2450 USB Device Controller" - depends on ARCH_S3C24XX - help - Samsung's S3C2416, S3C2443 and S3C2450 is an ARM9 based SoC - integrated with dual speed USB 2.0 device controller. It has - 8 endpoints, as well as endpoint zero. - - This driver has been tested on S3C2416 and S3C2450 processors. - -config USB_MV_UDC - tristate "Marvell USB2.0 Device Controller" - depends on HAS_DMA - help - Marvell Socs (including PXA and MMP series) include a high speed - USB2.0 OTG controller, which can be configured as high speed or - full speed USB peripheral. - -config USB_MV_U3D - depends on HAS_DMA - tristate "MARVELL PXA2128 USB 3.0 controller" - help - MARVELL PXA2128 Processor series include a super speed USB3.0 device - controller, which support super speed USB peripheral. - -# -# Controllers available in both integrated and discrete versions -# - -config USB_M66592 - tristate "Renesas M66592 USB Peripheral Controller" - help - M66592 is a discrete USB peripheral controller chip that - supports both full and high speed USB 2.0 data transfers. - It has seven configurable endpoints, and endpoint zero. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "m66592_udc" and force all - gadget drivers to also be dynamically linked. - -# -# Controllers available only in discrete form (and all PCI controllers) -# - -config USB_AMD5536UDC - tristate "AMD5536 UDC" - depends on PCI - help - The AMD5536 UDC is part of the AMD Geode CS5536, an x86 southbridge. - It is a USB Highspeed DMA capable USB device controller. Beside ep0 - it provides 4 IN and 4 OUT endpoints (bulk or interrupt type). - The UDC port supports OTG operation, and may be used as a host port - if it's not being used to implement peripheral or OTG roles. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "amd5536udc" and force all - gadget drivers to also be dynamically linked. - -config USB_FSL_QE - tristate "Freescale QE/CPM USB Device Controller" - depends on FSL_SOC && (QUICC_ENGINE || CPM) - help - Some of Freescale PowerPC processors have a Full Speed - QE/CPM2 USB controller, which support device mode with 4 - programmable endpoints. This driver supports the - controller in the MPC8360 and MPC8272, and should work with - controllers having QE or CPM2, given minor tweaks. - - Set CONFIG_USB_GADGET to "m" to build this driver as a - dynamically linked module called "fsl_qe_udc". - -config USB_NET2272 - tristate "PLX NET2272" - help - PLX NET2272 is a USB peripheral controller which supports - both full and high speed USB 2.0 data transfers. - - It has three configurable endpoints, as well as endpoint zero - (for control transfer). - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "net2272" and force all - gadget drivers to also be dynamically linked. - -config USB_NET2272_DMA - boolean "Support external DMA controller" - depends on USB_NET2272 && HAS_DMA - help - The NET2272 part can optionally support an external DMA - controller, but your board has to have support in the - driver itself. - - If unsure, say "N" here. The driver works fine in PIO mode. - -config USB_NET2280 - tristate "NetChip 228x / PLX USB338x" - depends on PCI - help - NetChip 2280 / 2282 is a PCI based USB peripheral controller which - supports both full and high speed USB 2.0 data transfers. - - It has six configurable endpoints, as well as endpoint zero - (for control transfers) and several endpoints with dedicated - functions. - - PLX 3380 / 3382 is a PCIe based USB peripheral controller which - supports full, high speed USB 2.0 and super speed USB 3.0 - data transfers. - - It has eight configurable endpoints, as well as endpoint zero - (for control transfers) and several endpoints with dedicated - functions. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "net2280" and force all - gadget drivers to also be dynamically linked. - -config USB_GOKU - tristate "Toshiba TC86C001 'Goku-S'" - depends on PCI - help - The Toshiba TC86C001 is a PCI device which includes controllers - for full speed USB devices, IDE, I2C, SIO, plus a USB host (OHCI). - - The device controller has three configurable (bulk or interrupt) - endpoints, plus endpoint zero (for control transfers). - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "goku_udc" and to force all - gadget drivers to also be dynamically linked. - -config USB_EG20T - tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7213/ML7831) UDC" - depends on PCI - help - This is a USB device driver for EG20T PCH. - EG20T PCH is the platform controller hub that is used in Intel's - general embedded platform. EG20T PCH has USB device interface. - Using this interface, it is able to access system devices connected - to USB device. - This driver enables USB device function. - USB device is a USB peripheral controller which - supports both full and high speed USB 2.0 data transfers. - This driver supports both control transfer and bulk transfer modes. - This driver dose not support interrupt transfer or isochronous - transfer modes. - - This driver also can be used for LAPIS Semiconductor's ML7213 which is - for IVI(In-Vehicle Infotainment) use. - ML7831 is for general purpose use. - ML7213/ML7831 is companion chip for Intel Atom E6xx series. - ML7213/ML7831 is completely compatible for Intel EG20T PCH. - -# -# LAST -- dummy/emulated controller -# - -config USB_DUMMY_HCD - tristate "Dummy HCD (DEVELOPMENT)" - depends on USB=y || (USB=m && USB_GADGET=m) - help - This host controller driver emulates USB, looping all data transfer - requests back to a USB "gadget driver" in the same host. The host - side is the master; the gadget side is the slave. Gadget drivers - can be high, full, or low speed; and they have access to endpoints - like those from NET2280, PXA2xx, or SA1100 hardware. - - This may help in some stages of creating a driver to embed in a - Linux device, since it lets you debug several parts of the gadget - driver without its hardware or drivers being involved. - - Since such a gadget side driver needs to interoperate with a host - side Linux-USB device driver, this may help to debug both sides - of a USB protocol stack. - - Say "y" to link the driver statically, or "m" to build a - dynamically linked module called "dummy_hcd" and force all - gadget drivers to also be dynamically linked. - -# NOTE: Please keep dummy_hcd LAST so that "real hardware" appears -# first and will be selected by default. - -endmenu +source "drivers/usb/gadget/udc/Kconfig" # # USB Gadget Drivers diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile index 4c33a62..16938ff 100644 --- a/drivers/usb/gadget/Makefile +++ b/drivers/usb/gadget/Makefile @@ -3,39 +3,12 @@ # subdir-ccflags-$(CONFIG_USB_GADGET_DEBUG) := -DDEBUG subdir-ccflags-$(CONFIG_USB_GADGET_VERBOSE) += -DVERBOSE_DEBUG +ccflags-y += -I$(PWD)/drivers/usb/gadget/udc -obj-$(CONFIG_USB_GADGET) += udc-core.o -obj-$(CONFIG_USB_GADGET) += legacy/ +obj-$(CONFIG_USB_GADGET) += legacy/ udc/ obj-$(CONFIG_USB_LIBCOMPOSITE) += libcomposite.o libcomposite-y := usbstring.o config.o epautoconf.o libcomposite-y += composite.o functions.o configfs.o u_f.o -obj-$(CONFIG_USB_DUMMY_HCD) += dummy_hcd.o -obj-$(CONFIG_USB_NET2272) += net2272.o -obj-$(CONFIG_USB_NET2280) += net2280.o -obj-$(CONFIG_USB_AMD5536UDC) += amd5536udc.o -obj-$(CONFIG_USB_PXA25X) += pxa25x_udc.o -obj-$(CONFIG_USB_PXA27X) += pxa27x_udc.o -obj-$(CONFIG_USB_GOKU) += goku_udc.o -obj-$(CONFIG_USB_OMAP) += omap_udc.o -obj-$(CONFIG_USB_S3C2410) += s3c2410_udc.o -obj-$(CONFIG_USB_AT91) += at91_udc.o -obj-$(CONFIG_USB_ATMEL_USBA) += atmel_usba_udc.o -obj-$(CONFIG_USB_BCM63XX_UDC) += bcm63xx_udc.o -obj-$(CONFIG_USB_FSL_USB2) += fsl_usb2_udc.o -fsl_usb2_udc-y := fsl_udc_core.o -fsl_usb2_udc-$(CONFIG_ARCH_MXC) += fsl_mxc_udc.o -obj-$(CONFIG_USB_M66592) += m66592-udc.o -obj-$(CONFIG_USB_R8A66597) += r8a66597-udc.o -obj-$(CONFIG_USB_FSL_QE) += fsl_qe_udc.o -obj-$(CONFIG_USB_S3C_HSUDC) += s3c-hsudc.o -obj-$(CONFIG_USB_LPC32XX) += lpc32xx_udc.o -obj-$(CONFIG_USB_EG20T) += pch_udc.o -obj-$(CONFIG_USB_MV_UDC) += mv_udc.o -mv_udc-y := mv_udc_core.o -obj-$(CONFIG_USB_FUSB300) += fusb300_udc.o -obj-$(CONFIG_USB_FOTG210_UDC) += fotg210-udc.o -obj-$(CONFIG_USB_MV_U3D) += mv_u3d_core.o -obj-$(CONFIG_USB_GR_UDC) += gr_udc.o # USB Functions usb_f_acm-y := f_acm.o diff --git a/drivers/usb/gadget/legacy/Makefile b/drivers/usb/gadget/legacy/Makefile index fbb32aa..d457074 100644 --- a/drivers/usb/gadget/legacy/Makefile +++ b/drivers/usb/gadget/legacy/Makefile @@ -3,6 +3,7 @@ # ccflags-y := -I$(PWD)/drivers/usb/gadget/ +ccflags-y += -I$(PWD)/drivers/usb/gadget/udc/ g_zero-y := zero.o g_audio-y := audio.o diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/udc/Kconfig similarity index 54% copy from drivers/usb/gadget/Kconfig copy to drivers/usb/gadget/udc/Kconfig index 2986a43..5151f94 100644 --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/udc/Kconfig @@ -13,120 +13,6 @@ # both kinds of controller can also support "USB On-the-Go" (CONFIG_USB_OTG). # -menuconfig USB_GADGET - tristate "USB Gadget Support" - select NLS - help - USB is a master/slave protocol, organized with one master - host (such as a PC) controlling up to 127 peripheral devices. - The USB hardware is asymmetric, which makes it easier to set up: - you can't connect a "to-the-host" connector to a peripheral. - - Linux can run in the host, or in the peripheral. In both cases - you need a low level bus controller driver, and some software - talking to it. Peripheral controllers are often discrete silicon, - or are integrated with the CPU in a microcontroller. The more - familiar host side controllers have names like "EHCI", "OHCI", - or "UHCI", and are usually integrated into southbridges on PC - motherboards. - - Enable this configuration option if you want to run Linux inside - a USB peripheral device. Configure one hardware driver for your - peripheral/device side bus controller, and a "gadget driver" for - your peripheral protocol. (If you use modular gadget drivers, - you may configure more than one.) - - If in doubt, say "N" and don't enable these drivers; most people - don't have this kind of hardware (except maybe inside Linux PDAs). - - For more information, see <http://www.linux-usb.org/gadget> and - the kernel DocBook documentation for this API. - -if USB_GADGET - -config USB_GADGET_DEBUG - boolean "Debugging messages (DEVELOPMENT)" - depends on DEBUG_KERNEL - help - Many controller and gadget drivers will print some debugging - messages if you use this option to ask for those messages. - - Avoid enabling these messages, even if you're actively - debugging such a driver. Many drivers will emit so many - messages that the driver timings are affected, which will - either create new failure modes or remove the one you're - trying to track down. Never enable these messages for a - production build. - -config USB_GADGET_VERBOSE - bool "Verbose debugging Messages (DEVELOPMENT)" - depends on USB_GADGET_DEBUG - help - Many controller and gadget drivers will print verbose debugging - messages if you use this option to ask for those messages. - - Avoid enabling these messages, even if you're actively - debugging such a driver. Many drivers will emit so many - messages that the driver timings are affected, which will - either create new failure modes or remove the one you're - trying to track down. Never enable these messages for a - production build. - -config USB_GADGET_DEBUG_FILES - boolean "Debugging information files (DEVELOPMENT)" - depends on PROC_FS - help - Some of the drivers in the "gadget" framework can expose - debugging information in files such as /proc/driver/udc - (for a peripheral controller). The information in these - files may help when you're troubleshooting or bringing up a - driver on a new board. Enable these files by choosing "Y" - here. If in doubt, or to conserve kernel memory, say "N". - -config USB_GADGET_DEBUG_FS - boolean "Debugging information files in debugfs (DEVELOPMENT)" - depends on DEBUG_FS - help - Some of the drivers in the "gadget" framework can expose - debugging information in files under /sys/kernel/debug/. - The information in these files may help when you're - troubleshooting or bringing up a driver on a new board. - Enable these files by choosing "Y" here. If in doubt, or - to conserve kernel memory, say "N". - -config USB_GADGET_VBUS_DRAW - int "Maximum VBUS Power usage (2-500 mA)" - range 2 500 - default 2 - help - Some devices need to draw power from USB when they are - configured, perhaps to operate circuitry or to recharge - batteries. This is in addition to any local power supply, - such as an AC adapter or batteries. - - Enter the maximum power your device draws through USB, in - milliAmperes. The permitted range of values is 2 - 500 mA; - 0 mA would be legal, but can make some hosts misbehave. - - This value will be used except for system-specific gadget - drivers that have more specific information. - -config USB_GADGET_STORAGE_NUM_BUFFERS - int "Number of storage pipeline buffers" - range 2 4 - default 2 - help - Usually 2 buffers are enough to establish a good buffering - pipeline. The number may be increased in order to compensate - for a bursty VFS behaviour. For instance there may be CPU wake up - latencies that makes the VFS to appear bursty in a system with - an CPU on-demand governor. Especially if DMA is doing IO to - offload the CPU. In this case the CPU will go into power - save often and spin up occasionally to move data within VFS. - If selecting USB_GADGET_DEBUG_FILES this value may be set by - a module parameter as well. - If unsure, say 2. - # # USB Peripheral Controller Support # @@ -497,233 +383,3 @@ config USB_DUMMY_HCD # first and will be selected by default. endmenu - -# -# USB Gadget Drivers -# - -# composite based drivers -config USB_LIBCOMPOSITE - tristate - select CONFIGFS_FS - depends on USB_GADGET - -config USB_F_ACM - tristate - -config USB_F_SS_LB - tristate - -config USB_U_SERIAL - tristate - -config USB_U_ETHER - tristate - -config USB_F_SERIAL - tristate - -config USB_F_OBEX - tristate - -config USB_F_NCM - tristate - -config USB_F_ECM - tristate - -config USB_F_PHONET - tristate - -config USB_F_EEM - tristate - -config USB_F_SUBSET - tristate - -config USB_F_RNDIS - tristate - -config USB_F_MASS_STORAGE - tristate - -config USB_F_FS - tristate - -choice - tristate "USB Gadget Drivers" - default USB_ETH - help - A Linux "Gadget Driver" talks to the USB Peripheral Controller - driver through the abstract "gadget" API. Some other operating - systems call these "client" drivers, of which "class drivers" - are a subset (implementing a USB device class specification). - A gadget driver implements one or more USB functions using - the peripheral hardware. - - Gadget drivers are hardware-neutral, or "platform independent", - except that they sometimes must understand quirks or limitations - of the particular controllers they work with. For example, when - a controller doesn't support alternate configurations or provide - enough of the right types of endpoints, the gadget driver might - not be able work with that controller, or might need to implement - a less common variant of a device class protocol. - -# this first set of drivers all depend on bulk-capable hardware. - -config USB_CONFIGFS - tristate "USB functions configurable through configfs" - select USB_LIBCOMPOSITE - help - A Linux USB "gadget" can be set up through configfs. - If this is the case, the USB functions (which from the host's - perspective are seen as interfaces) and configurations are - specified simply by creating appropriate directories in configfs. - Associating functions with configurations is done by creating - appropriate symbolic links. - For more information see Documentation/usb/gadget_configfs.txt. - -config USB_CONFIGFS_SERIAL - boolean "Generic serial bulk in/out" - depends on USB_CONFIGFS - depends on TTY - select USB_U_SERIAL - select USB_F_SERIAL - help - The function talks to the Linux-USB generic serial driver. - -config USB_CONFIGFS_ACM - boolean "Abstract Control Model (CDC ACM)" - depends on USB_CONFIGFS - depends on TTY - select USB_U_SERIAL - select USB_F_ACM - help - ACM serial link. This function can be used to interoperate with - MS-Windows hosts or with the Linux-USB "cdc-acm" driver. - -config USB_CONFIGFS_OBEX - boolean "Object Exchange Model (CDC OBEX)" - depends on USB_CONFIGFS - depends on TTY - select USB_U_SERIAL - select USB_F_OBEX - help - You will need a user space OBEX server talking to /dev/ttyGS*, - since the kernel itself doesn't implement the OBEX protocol. - -config USB_CONFIGFS_NCM - boolean "Network Control Model (CDC NCM)" - depends on USB_CONFIGFS - depends on NET - select USB_U_ETHER - select USB_F_NCM - help - NCM is an advanced protocol for Ethernet encapsulation, allows - grouping of several ethernet frames into one USB transfer and - different alignment possibilities. - -config USB_CONFIGFS_ECM - boolean "Ethernet Control Model (CDC ECM)" - depends on USB_CONFIGFS - depends on NET - select USB_U_ETHER - select USB_F_ECM - help - The "Communication Device Class" (CDC) Ethernet Control Model. - That protocol is often avoided with pure Ethernet adapters, in - favor of simpler vendor-specific hardware, but is widely - supported by firmware for smart network devices. - -config USB_CONFIGFS_ECM_SUBSET - boolean "Ethernet Control Model (CDC ECM) subset" - depends on USB_CONFIGFS - depends on NET - select USB_U_ETHER - select USB_F_SUBSET - help - On hardware that can't implement the full protocol, - a simple CDC subset is used, placing fewer demands on USB. - -config USB_CONFIGFS_RNDIS - bool "RNDIS" - depends on USB_CONFIGFS - depends on NET - select USB_U_ETHER - select USB_F_RNDIS - help - Microsoft Windows XP bundles the "Remote NDIS" (RNDIS) protocol, - and Microsoft provides redistributable binary RNDIS drivers for - older versions of Windows. - - To make MS-Windows work with this, use Documentation/usb/linux.inf - as the "driver info file". For versions of MS-Windows older than - XP, you'll need to download drivers from Microsoft's website; a URL - is given in comments found in that info file. - -config USB_CONFIGFS_EEM - bool "Ethernet Emulation Model (EEM)" - depends on USB_CONFIGFS - depends on NET - select USB_U_ETHER - select USB_F_EEM - help - CDC EEM is a newer USB standard that is somewhat simpler than CDC ECM - and therefore can be supported by more hardware. Technically ECM and - EEM are designed for different applications. The ECM model extends - the network interface to the target (e.g. a USB cable modem), and the - EEM model is for mobile devices to communicate with hosts using - ethernet over USB. For Linux gadgets, however, the interface with - the host is the same (a usbX device), so the differences are minimal. - -config USB_CONFIGFS_PHONET - boolean "Phonet protocol" - depends on USB_CONFIGFS - depends on NET - depends on PHONET - select USB_U_ETHER - select USB_F_PHONET - help - The Phonet protocol implementation for USB device. - -config USB_CONFIGFS_MASS_STORAGE - boolean "Mass storage" - depends on USB_CONFIGFS - depends on BLOCK - select USB_F_MASS_STORAGE - help - The Mass Storage Gadget acts as a USB Mass Storage disk drive. - As its storage repository it can use a regular file or a block - device (in much the same way as the "loop" device driver), - specified as a module parameter or sysfs option. - -config USB_CONFIGFS_F_LB_SS - boolean "Loopback and sourcesink function (for testing)" - depends on USB_CONFIGFS - select USB_F_SS_LB - help - Loopback function loops back a configurable number of transfers. - Sourcesink function either sinks and sources bulk data. - It also implements control requests, for "chapter 9" conformance. - Make this be the first driver you try using on top of any new - USB peripheral controller driver. Then you can use host-side - test software, like the "usbtest" driver, to put your hardware - and its driver through a basic set of functional tests. - -config USB_CONFIGFS_F_FS - boolean "Function filesystem (FunctionFS)" - depends on USB_CONFIGFS - select USB_F_FS - help - The Function Filesystem (FunctionFS) lets one create USB - composite functions in user space in the same way GadgetFS - lets one create USB gadgets in user space. This allows creation - of composite gadgets such that some of the functions are - implemented in kernel space (for instance Ethernet, serial or - mass storage) and other are implemented in user space. - -source "drivers/usb/gadget/legacy/Kconfig" - -endchoice - -endif # USB_GADGET diff --git a/drivers/usb/gadget/udc/Makefile b/drivers/usb/gadget/udc/Makefile new file mode 100644 index 0000000..4096122 --- /dev/null +++ b/drivers/usb/gadget/udc/Makefile @@ -0,0 +1,31 @@ +# +# USB peripheral controller drivers +# +obj-$(CONFIG_USB_GADGET) += udc-core.o +obj-$(CONFIG_USB_DUMMY_HCD) += dummy_hcd.o +obj-$(CONFIG_USB_NET2272) += net2272.o +obj-$(CONFIG_USB_NET2280) += net2280.o +obj-$(CONFIG_USB_AMD5536UDC) += amd5536udc.o +obj-$(CONFIG_USB_PXA25X) += pxa25x_udc.o +obj-$(CONFIG_USB_PXA27X) += pxa27x_udc.o +obj-$(CONFIG_USB_GOKU) += goku_udc.o +obj-$(CONFIG_USB_OMAP) += omap_udc.o +obj-$(CONFIG_USB_S3C2410) += s3c2410_udc.o +obj-$(CONFIG_USB_AT91) += at91_udc.o +obj-$(CONFIG_USB_ATMEL_USBA) += atmel_usba_udc.o +obj-$(CONFIG_USB_BCM63XX_UDC) += bcm63xx_udc.o +obj-$(CONFIG_USB_FSL_USB2) += fsl_usb2_udc.o +fsl_usb2_udc-y := fsl_udc_core.o +fsl_usb2_udc-$(CONFIG_ARCH_MXC) += fsl_mxc_udc.o +obj-$(CONFIG_USB_M66592) += m66592-udc.o +obj-$(CONFIG_USB_R8A66597) += r8a66597-udc.o +obj-$(CONFIG_USB_FSL_QE) += fsl_qe_udc.o +obj-$(CONFIG_USB_S3C_HSUDC) += s3c-hsudc.o +obj-$(CONFIG_USB_LPC32XX) += lpc32xx_udc.o +obj-$(CONFIG_USB_EG20T) += pch_udc.o +obj-$(CONFIG_USB_MV_UDC) += mv_udc.o +mv_udc-y := mv_udc_core.o +obj-$(CONFIG_USB_FUSB300) += fusb300_udc.o +obj-$(CONFIG_USB_FOTG210_UDC) += fotg210-udc.o +obj-$(CONFIG_USB_MV_U3D) += mv_u3d_core.o +obj-$(CONFIG_USB_GR_UDC) += gr_udc.o diff --git a/drivers/usb/gadget/amd5536udc.c b/drivers/usb/gadget/udc/amd5536udc.c similarity index 100% rename from drivers/usb/gadget/amd5536udc.c rename to drivers/usb/gadget/udc/amd5536udc.c diff --git a/drivers/usb/gadget/amd5536udc.h b/drivers/usb/gadget/udc/amd5536udc.h similarity index 100% rename from drivers/usb/gadget/amd5536udc.h rename to drivers/usb/gadget/udc/amd5536udc.h diff --git a/drivers/usb/gadget/at91_udc.c b/drivers/usb/gadget/udc/at91_udc.c similarity index 100% rename from drivers/usb/gadget/at91_udc.c rename to drivers/usb/gadget/udc/at91_udc.c diff --git a/drivers/usb/gadget/at91_udc.h b/drivers/usb/gadget/udc/at91_udc.h similarity index 100% rename from drivers/usb/gadget/at91_udc.h rename to drivers/usb/gadget/udc/at91_udc.h diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c similarity index 100% rename from drivers/usb/gadget/atmel_usba_udc.c rename to drivers/usb/gadget/udc/atmel_usba_udc.c diff --git a/drivers/usb/gadget/atmel_usba_udc.h b/drivers/usb/gadget/udc/atmel_usba_udc.h similarity index 100% rename from drivers/usb/gadget/atmel_usba_udc.h rename to drivers/usb/gadget/udc/atmel_usba_udc.h diff --git a/drivers/usb/gadget/bcm63xx_udc.c b/drivers/usb/gadget/udc/bcm63xx_udc.c similarity index 100% rename from drivers/usb/gadget/bcm63xx_udc.c rename to drivers/usb/gadget/udc/bcm63xx_udc.c diff --git a/drivers/usb/gadget/dummy_hcd.c b/drivers/usb/gadget/udc/dummy_hcd.c similarity index 100% rename from drivers/usb/gadget/dummy_hcd.c rename to drivers/usb/gadget/udc/dummy_hcd.c diff --git a/drivers/usb/gadget/fotg210-udc.c b/drivers/usb/gadget/udc/fotg210-udc.c similarity index 100% rename from drivers/usb/gadget/fotg210-udc.c rename to drivers/usb/gadget/udc/fotg210-udc.c diff --git a/drivers/usb/gadget/fotg210.h b/drivers/usb/gadget/udc/fotg210.h similarity index 100% rename from drivers/usb/gadget/fotg210.h rename to drivers/usb/gadget/udc/fotg210.h diff --git a/drivers/usb/gadget/fsl_mxc_udc.c b/drivers/usb/gadget/udc/fsl_mxc_udc.c similarity index 100% rename from drivers/usb/gadget/fsl_mxc_udc.c rename to drivers/usb/gadget/udc/fsl_mxc_udc.c diff --git a/drivers/usb/gadget/fsl_qe_udc.c b/drivers/usb/gadget/udc/fsl_qe_udc.c similarity index 100% rename from drivers/usb/gadget/fsl_qe_udc.c rename to drivers/usb/gadget/udc/fsl_qe_udc.c diff --git a/drivers/usb/gadget/fsl_qe_udc.h b/drivers/usb/gadget/udc/fsl_qe_udc.h similarity index 100% rename from drivers/usb/gadget/fsl_qe_udc.h rename to drivers/usb/gadget/udc/fsl_qe_udc.h diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/udc/fsl_udc_core.c similarity index 100% rename from drivers/usb/gadget/fsl_udc_core.c rename to drivers/usb/gadget/udc/fsl_udc_core.c diff --git a/drivers/usb/gadget/fsl_usb2_udc.h b/drivers/usb/gadget/udc/fsl_usb2_udc.h similarity index 100% rename from drivers/usb/gadget/fsl_usb2_udc.h rename to drivers/usb/gadget/udc/fsl_usb2_udc.h diff --git a/drivers/usb/gadget/fusb300_udc.c b/drivers/usb/gadget/udc/fusb300_udc.c similarity index 100% rename from drivers/usb/gadget/fusb300_udc.c rename to drivers/usb/gadget/udc/fusb300_udc.c diff --git a/drivers/usb/gadget/fusb300_udc.h b/drivers/usb/gadget/udc/fusb300_udc.h similarity index 100% rename from drivers/usb/gadget/fusb300_udc.h rename to drivers/usb/gadget/udc/fusb300_udc.h diff --git a/drivers/usb/gadget/gadget_chips.h b/drivers/usb/gadget/udc/gadget_chips.h similarity index 100% rename from drivers/usb/gadget/gadget_chips.h rename to drivers/usb/gadget/udc/gadget_chips.h diff --git a/drivers/usb/gadget/goku_udc.c b/drivers/usb/gadget/udc/goku_udc.c similarity index 100% rename from drivers/usb/gadget/goku_udc.c rename to drivers/usb/gadget/udc/goku_udc.c diff --git a/drivers/usb/gadget/goku_udc.h b/drivers/usb/gadget/udc/goku_udc.h similarity index 100% rename from drivers/usb/gadget/goku_udc.h rename to drivers/usb/gadget/udc/goku_udc.h diff --git a/drivers/usb/gadget/gr_udc.c b/drivers/usb/gadget/udc/gr_udc.c similarity index 100% rename from drivers/usb/gadget/gr_udc.c rename to drivers/usb/gadget/udc/gr_udc.c diff --git a/drivers/usb/gadget/gr_udc.h b/drivers/usb/gadget/udc/gr_udc.h similarity index 100% rename from drivers/usb/gadget/gr_udc.h rename to drivers/usb/gadget/udc/gr_udc.h diff --git a/drivers/usb/gadget/lpc32xx_udc.c b/drivers/usb/gadget/udc/lpc32xx_udc.c similarity index 100% rename from drivers/usb/gadget/lpc32xx_udc.c rename to drivers/usb/gadget/udc/lpc32xx_udc.c diff --git a/drivers/usb/gadget/m66592-udc.c b/drivers/usb/gadget/udc/m66592-udc.c similarity index 100% rename from drivers/usb/gadget/m66592-udc.c rename to drivers/usb/gadget/udc/m66592-udc.c diff --git a/drivers/usb/gadget/m66592-udc.h b/drivers/usb/gadget/udc/m66592-udc.h similarity index 100% rename from drivers/usb/gadget/m66592-udc.h rename to drivers/usb/gadget/udc/m66592-udc.h diff --git a/drivers/usb/gadget/mv_u3d.h b/drivers/usb/gadget/udc/mv_u3d.h similarity index 100% rename from drivers/usb/gadget/mv_u3d.h rename to drivers/usb/gadget/udc/mv_u3d.h diff --git a/drivers/usb/gadget/mv_u3d_core.c b/drivers/usb/gadget/udc/mv_u3d_core.c similarity index 100% rename from drivers/usb/gadget/mv_u3d_core.c rename to drivers/usb/gadget/udc/mv_u3d_core.c diff --git a/drivers/usb/gadget/mv_udc.h b/drivers/usb/gadget/udc/mv_udc.h similarity index 100% rename from drivers/usb/gadget/mv_udc.h rename to drivers/usb/gadget/udc/mv_udc.h diff --git a/drivers/usb/gadget/mv_udc_core.c b/drivers/usb/gadget/udc/mv_udc_core.c similarity index 100% rename from drivers/usb/gadget/mv_udc_core.c rename to drivers/usb/gadget/udc/mv_udc_core.c diff --git a/drivers/usb/gadget/net2272.c b/drivers/usb/gadget/udc/net2272.c similarity index 100% rename from drivers/usb/gadget/net2272.c rename to drivers/usb/gadget/udc/net2272.c diff --git a/drivers/usb/gadget/net2272.h b/drivers/usb/gadget/udc/net2272.h similarity index 100% rename from drivers/usb/gadget/net2272.h rename to drivers/usb/gadget/udc/net2272.h diff --git a/drivers/usb/gadget/net2280.c b/drivers/usb/gadget/udc/net2280.c similarity index 100% rename from drivers/usb/gadget/net2280.c rename to drivers/usb/gadget/udc/net2280.c diff --git a/drivers/usb/gadget/net2280.h b/drivers/usb/gadget/udc/net2280.h similarity index 100% rename from drivers/usb/gadget/net2280.h rename to drivers/usb/gadget/udc/net2280.h diff --git a/drivers/usb/gadget/omap_udc.c b/drivers/usb/gadget/udc/omap_udc.c similarity index 100% rename from drivers/usb/gadget/omap_udc.c rename to drivers/usb/gadget/udc/omap_udc.c diff --git a/drivers/usb/gadget/omap_udc.h b/drivers/usb/gadget/udc/omap_udc.h similarity index 100% rename from drivers/usb/gadget/omap_udc.h rename to drivers/usb/gadget/udc/omap_udc.h diff --git a/drivers/usb/gadget/pch_udc.c b/drivers/usb/gadget/udc/pch_udc.c similarity index 100% rename from drivers/usb/gadget/pch_udc.c rename to drivers/usb/gadget/udc/pch_udc.c diff --git a/drivers/usb/gadget/pxa25x_udc.c b/drivers/usb/gadget/udc/pxa25x_udc.c similarity index 100% rename from drivers/usb/gadget/pxa25x_udc.c rename to drivers/usb/gadget/udc/pxa25x_udc.c diff --git a/drivers/usb/gadget/pxa25x_udc.h b/drivers/usb/gadget/udc/pxa25x_udc.h similarity index 100% rename from drivers/usb/gadget/pxa25x_udc.h rename to drivers/usb/gadget/udc/pxa25x_udc.h diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/udc/pxa27x_udc.c similarity index 100% rename from drivers/usb/gadget/pxa27x_udc.c rename to drivers/usb/gadget/udc/pxa27x_udc.c diff --git a/drivers/usb/gadget/pxa27x_udc.h b/drivers/usb/gadget/udc/pxa27x_udc.h similarity index 100% rename from drivers/usb/gadget/pxa27x_udc.h rename to drivers/usb/gadget/udc/pxa27x_udc.h diff --git a/drivers/usb/gadget/r8a66597-udc.c b/drivers/usb/gadget/udc/r8a66597-udc.c similarity index 100% rename from drivers/usb/gadget/r8a66597-udc.c rename to drivers/usb/gadget/udc/r8a66597-udc.c diff --git a/drivers/usb/gadget/r8a66597-udc.h b/drivers/usb/gadget/udc/r8a66597-udc.h similarity index 100% rename from drivers/usb/gadget/r8a66597-udc.h rename to drivers/usb/gadget/udc/r8a66597-udc.h diff --git a/drivers/usb/gadget/s3c-hsudc.c b/drivers/usb/gadget/udc/s3c-hsudc.c similarity index 100% rename from drivers/usb/gadget/s3c-hsudc.c rename to drivers/usb/gadget/udc/s3c-hsudc.c diff --git a/drivers/usb/gadget/s3c2410_udc.c b/drivers/usb/gadget/udc/s3c2410_udc.c similarity index 100% rename from drivers/usb/gadget/s3c2410_udc.c rename to drivers/usb/gadget/udc/s3c2410_udc.c diff --git a/drivers/usb/gadget/s3c2410_udc.h b/drivers/usb/gadget/udc/s3c2410_udc.h similarity index 100% rename from drivers/usb/gadget/s3c2410_udc.h rename to drivers/usb/gadget/udc/s3c2410_udc.h diff --git a/drivers/usb/gadget/udc-core.c b/drivers/usb/gadget/udc/udc-core.c similarity index 100% rename from drivers/usb/gadget/udc-core.c rename to drivers/usb/gadget/udc/udc-core.c -- 1.8.3.2 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html