aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/Kconfig
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>2012-09-06 14:11:09 -0400
committerFelipe Balbi <balbi@ti.com>2012-09-10 08:36:04 -0400
commita84d9e5361bcfbff1c84481bd9c04fc58a56d83b (patch)
treed84989410bb1e1b2a32cf9e7b782053ce9c1c4ad /drivers/usb/gadget/Kconfig
parent4001a7a163d8e49eb9baf294527ad2ed50202e22 (diff)
usb: gadget: start with libcomposite
This patch aims to be simple. It removes #include usbstribgs.c line from each gadget and creates libcomposite.ko which has only one member, that is usbstribgs.c. Acked-by: Michal Nazarewicz <mina86@mina86.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/Kconfig')
-rw-r--r--drivers/usb/gadget/Kconfig25
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 75b76d5a0fe9..a53be32c22cf 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -494,6 +494,12 @@ endmenu
494# 494#
495# USB Gadget Drivers 495# USB Gadget Drivers
496# 496#
497
498# composite based drivers
499config USB_LIBCOMPOSITE
500 tristate
501 depends on USB_GADGET
502
497choice 503choice
498 tristate "USB Gadget Drivers" 504 tristate "USB Gadget Drivers"
499 default USB_ETH 505 default USB_ETH
@@ -517,6 +523,7 @@ choice
517 523
518config USB_ZERO 524config USB_ZERO
519 tristate "Gadget Zero (DEVELOPMENT)" 525 tristate "Gadget Zero (DEVELOPMENT)"
526 select USB_LIBCOMPOSITE
520 help 527 help
521 Gadget Zero is a two-configuration device. It either sinks and 528 Gadget Zero is a two-configuration device. It either sinks and
522 sources bulk data; or it loops back a configurable number of 529 sources bulk data; or it loops back a configurable number of
@@ -552,6 +559,7 @@ config USB_ZERO_HNPTEST
552config USB_AUDIO 559config USB_AUDIO
553 tristate "Audio Gadget (EXPERIMENTAL)" 560 tristate "Audio Gadget (EXPERIMENTAL)"
554 depends on SND 561 depends on SND
562 select USB_LIBCOMPOSITE
555 select SND_PCM 563 select SND_PCM
556 help 564 help
557 This Gadget Audio driver is compatible with USB Audio Class 565 This Gadget Audio driver is compatible with USB Audio Class
@@ -580,6 +588,7 @@ config GADGET_UAC1
580config USB_ETH 588config USB_ETH
581 tristate "Ethernet Gadget (with CDC Ethernet support)" 589 tristate "Ethernet Gadget (with CDC Ethernet support)"
582 depends on NET 590 depends on NET
591 select USB_LIBCOMPOSITE
583 select CRC32 592 select CRC32
584 help 593 help
585 This driver implements Ethernet style communication, in one of 594 This driver implements Ethernet style communication, in one of
@@ -615,6 +624,7 @@ config USB_ETH
615config USB_ETH_RNDIS 624config USB_ETH_RNDIS
616 bool "RNDIS support" 625 bool "RNDIS support"
617 depends on USB_ETH 626 depends on USB_ETH
627 select USB_LIBCOMPOSITE
618 default y 628 default y
619 help 629 help
620 Microsoft Windows XP bundles the "Remote NDIS" (RNDIS) protocol, 630 Microsoft Windows XP bundles the "Remote NDIS" (RNDIS) protocol,
@@ -633,6 +643,7 @@ config USB_ETH_RNDIS
633config USB_ETH_EEM 643config USB_ETH_EEM
634 bool "Ethernet Emulation Model (EEM) support" 644 bool "Ethernet Emulation Model (EEM) support"
635 depends on USB_ETH 645 depends on USB_ETH
646 select USB_LIBCOMPOSITE
636 default n 647 default n
637 help 648 help
638 CDC EEM is a newer USB standard that is somewhat simpler than CDC ECM 649 CDC EEM is a newer USB standard that is somewhat simpler than CDC ECM
@@ -649,6 +660,7 @@ config USB_ETH_EEM
649config USB_G_NCM 660config USB_G_NCM
650 tristate "Network Control Model (NCM) support" 661 tristate "Network Control Model (NCM) support"
651 depends on NET 662 depends on NET
663 select USB_LIBCOMPOSITE
652 select CRC32 664 select CRC32
653 help 665 help
654 This driver implements USB CDC NCM subclass standard. NCM is 666 This driver implements USB CDC NCM subclass standard. NCM is
@@ -678,6 +690,7 @@ config USB_GADGETFS
678config USB_FUNCTIONFS 690config USB_FUNCTIONFS
679 tristate "Function Filesystem (EXPERIMENTAL)" 691 tristate "Function Filesystem (EXPERIMENTAL)"
680 depends on EXPERIMENTAL 692 depends on EXPERIMENTAL
693 select USB_LIBCOMPOSITE
681 select USB_FUNCTIONFS_GENERIC if !(USB_FUNCTIONFS_ETH || USB_FUNCTIONFS_RNDIS) 694 select USB_FUNCTIONFS_GENERIC if !(USB_FUNCTIONFS_ETH || USB_FUNCTIONFS_RNDIS)
682 help 695 help
683 The Function Filesystem (FunctionFS) lets one create USB 696 The Function Filesystem (FunctionFS) lets one create USB
@@ -741,6 +754,7 @@ config USB_FILE_STORAGE_TEST
741config USB_MASS_STORAGE 754config USB_MASS_STORAGE
742 tristate "Mass Storage Gadget" 755 tristate "Mass Storage Gadget"
743 depends on BLOCK 756 depends on BLOCK
757 select USB_LIBCOMPOSITE
744 help 758 help
745 The Mass Storage Gadget acts as a USB Mass Storage disk drive. 759 The Mass Storage Gadget acts as a USB Mass Storage disk drive.
746 As its storage repository it can use a regular file or a block 760 As its storage repository it can use a regular file or a block
@@ -756,6 +770,7 @@ config USB_MASS_STORAGE
756config USB_GADGET_TARGET 770config USB_GADGET_TARGET
757 tristate "USB Gadget Target Fabric Module" 771 tristate "USB Gadget Target Fabric Module"
758 depends on TARGET_CORE 772 depends on TARGET_CORE
773 select USB_LIBCOMPOSITE
759 help 774 help
760 This fabric is an USB gadget. Two USB protocols are supported that is 775 This fabric is an USB gadget. Two USB protocols are supported that is
761 BBB or BOT (Bulk Only Transport) and UAS (USB Attached SCSI). BOT is 776 BBB or BOT (Bulk Only Transport) and UAS (USB Attached SCSI). BOT is
@@ -765,6 +780,7 @@ config USB_GADGET_TARGET
765 780
766config USB_G_SERIAL 781config USB_G_SERIAL
767 tristate "Serial Gadget (with CDC ACM and CDC OBEX support)" 782 tristate "Serial Gadget (with CDC ACM and CDC OBEX support)"
783 select USB_LIBCOMPOSITE
768 help 784 help
769 The Serial Gadget talks to the Linux-USB generic serial driver. 785 The Serial Gadget talks to the Linux-USB generic serial driver.
770 This driver supports a CDC-ACM module option, which can be used 786 This driver supports a CDC-ACM module option, which can be used
@@ -785,6 +801,7 @@ config USB_G_SERIAL
785config USB_MIDI_GADGET 801config USB_MIDI_GADGET
786 tristate "MIDI Gadget (EXPERIMENTAL)" 802 tristate "MIDI Gadget (EXPERIMENTAL)"
787 depends on SND && EXPERIMENTAL 803 depends on SND && EXPERIMENTAL
804 select USB_LIBCOMPOSITE
788 select SND_RAWMIDI 805 select SND_RAWMIDI
789 help 806 help
790 The MIDI Gadget acts as a USB Audio device, with one MIDI 807 The MIDI Gadget acts as a USB Audio device, with one MIDI
@@ -798,6 +815,7 @@ config USB_MIDI_GADGET
798 815
799config USB_G_PRINTER 816config USB_G_PRINTER
800 tristate "Printer Gadget" 817 tristate "Printer Gadget"
818 select USB_LIBCOMPOSITE
801 help 819 help
802 The Printer Gadget channels data between the USB host and a 820 The Printer Gadget channels data between the USB host and a
803 userspace program driving the print engine. The user space 821 userspace program driving the print engine. The user space
@@ -814,6 +832,7 @@ config USB_G_PRINTER
814config USB_CDC_COMPOSITE 832config USB_CDC_COMPOSITE
815 tristate "CDC Composite Device (Ethernet and ACM)" 833 tristate "CDC Composite Device (Ethernet and ACM)"
816 depends on NET 834 depends on NET
835 select USB_LIBCOMPOSITE
817 help 836 help
818 This driver provides two functions in one configuration: 837 This driver provides two functions in one configuration:
819 a CDC Ethernet (ECM) link, and a CDC ACM (serial port) link. 838 a CDC Ethernet (ECM) link, and a CDC ACM (serial port) link.
@@ -828,6 +847,7 @@ config USB_CDC_COMPOSITE
828config USB_G_NOKIA 847config USB_G_NOKIA
829 tristate "Nokia composite gadget" 848 tristate "Nokia composite gadget"
830 depends on PHONET 849 depends on PHONET
850 select USB_LIBCOMPOSITE
831 help 851 help
832 The Nokia composite gadget provides support for acm, obex 852 The Nokia composite gadget provides support for acm, obex
833 and phonet in only one composite gadget driver. 853 and phonet in only one composite gadget driver.
@@ -838,6 +858,7 @@ config USB_G_NOKIA
838config USB_G_ACM_MS 858config USB_G_ACM_MS
839 tristate "CDC Composite Device (ACM and mass storage)" 859 tristate "CDC Composite Device (ACM and mass storage)"
840 depends on BLOCK 860 depends on BLOCK
861 select USB_LIBCOMPOSITE
841 help 862 help
842 This driver provides two functions in one configuration: 863 This driver provides two functions in one configuration:
843 a mass storage, and a CDC ACM (serial port) link. 864 a mass storage, and a CDC ACM (serial port) link.
@@ -849,6 +870,7 @@ config USB_G_MULTI
849 tristate "Multifunction Composite Gadget (EXPERIMENTAL)" 870 tristate "Multifunction Composite Gadget (EXPERIMENTAL)"
850 depends on BLOCK && NET 871 depends on BLOCK && NET
851 select USB_G_MULTI_CDC if !USB_G_MULTI_RNDIS 872 select USB_G_MULTI_CDC if !USB_G_MULTI_RNDIS
873 select USB_LIBCOMPOSITE
852 help 874 help
853 The Multifunction Composite Gadget provides Ethernet (RNDIS 875 The Multifunction Composite Gadget provides Ethernet (RNDIS
854 and/or CDC Ethernet), mass storage and ACM serial link 876 and/or CDC Ethernet), mass storage and ACM serial link
@@ -889,6 +911,7 @@ config USB_G_MULTI_CDC
889 911
890config USB_G_HID 912config USB_G_HID
891 tristate "HID Gadget" 913 tristate "HID Gadget"
914 select USB_LIBCOMPOSITE
892 help 915 help
893 The HID gadget driver provides generic emulation of USB 916 The HID gadget driver provides generic emulation of USB
894 Human Interface Devices (HID). 917 Human Interface Devices (HID).
@@ -899,8 +922,10 @@ config USB_G_HID
899 Say "y" to link the driver statically, or "m" to build a 922 Say "y" to link the driver statically, or "m" to build a
900 dynamically linked module called "g_hid". 923 dynamically linked module called "g_hid".
901 924
925# Standalone / single function gadgets
902config USB_G_DBGP 926config USB_G_DBGP
903 tristate "EHCI Debug Device Gadget" 927 tristate "EHCI Debug Device Gadget"
928 select USB_LIBCOMPOSITE
904 help 929 help
905 This gadget emulates an EHCI Debug device. This is useful when you want 930 This gadget emulates an EHCI Debug device. This is useful when you want
906 to interact with an EHCI Debug Port. 931 to interact with an EHCI Debug Port.