if USB_GADGET

config USB_G_CCG
	tristate "Configurable Composite Gadget (STAGING)"
	depends on STAGING && BLOCK && NET && !USB_ZERO && !USB_ZERO_HNPTEST && !USB_AUDIO && !GADGET_UAC1 && !USB_ETH && !USB_ETH_RNDIS && !USB_ETH_EEM && !USB_G_NCM && !USB_GADGETFS && !USB_FUNCTIONFS && !USB_FUNCTIONFS_ETH && !USB_FUNCTIONFS_RNDIS && !USB_FUNCTIONFS_GENERIC && !USB_FILE_STORAGE && !USB_FILE_STORAGE_TEST && !USB_MASS_STORAGE && !USB_G_SERIAL && !USB_MIDI_GADGET && !USB_G_PRINTER && !USB_CDC_COMPOSITE && !USB_G_NOKIA && !USB_G_ACM_MS && !USB_G_MULTI && !USB_G_MULTI_RNDIS && !USB_G_MULTI_CDC && !USB_G_HID && !USB_G_DBGP && !USB_G_WEBCAM
	help
	  The Configurable Composite Gadget supports multiple USB
	  functions: acm, mass storage, rndis and FunctionFS.
	  Each function can be configured and enabled/disabled
	  dynamically from userspace through a sysfs interface.

	  In order to compile this (either as a module or built-in),
	  "USB Gadget Drivers" and anything under it must not be
	  selected compiled-in in
	  Device Drivers->USB Support->USB Gadget Support.
	  However, you can say "M" there, if you do, the
	  Configurable Composite Gadget can be compiled "M" only
	  or not at all.

	  BIG FAT NOTE: DON'T RELY ON THIS USERINTERFACE HERE! AS PART
	  OF THE REWORK DONE HERE WILL BE A NEW USER INTERFACE WITHOUT ANY
	  COMPATIBILITY TO THIS SYSFS INTERFACE HERE. BE AWARE OF THIS
	  BEFORE SELECTING THIS.

endif # USB_GADGET
