diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2012-09-06 14:11:09 -0400 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2012-09-10 08:36:04 -0400 |
commit | a84d9e5361bcfbff1c84481bd9c04fc58a56d83b (patch) | |
tree | d84989410bb1e1b2a32cf9e7b782053ce9c1c4ad /drivers/usb/gadget/Kconfig | |
parent | 4001a7a163d8e49eb9baf294527ad2ed50202e22 (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/Kconfig | 25 |
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 | ||
499 | config USB_LIBCOMPOSITE | ||
500 | tristate | ||
501 | depends on USB_GADGET | ||
502 | |||
497 | choice | 503 | choice |
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 | ||
518 | config USB_ZERO | 524 | config 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 | |||
552 | config USB_AUDIO | 559 | config 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 | |||
580 | config USB_ETH | 588 | config 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 | |||
615 | config USB_ETH_RNDIS | 624 | config 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 | |||
633 | config USB_ETH_EEM | 643 | config 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 | |||
649 | config USB_G_NCM | 660 | config 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 | |||
678 | config USB_FUNCTIONFS | 690 | config 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 | |||
741 | config USB_MASS_STORAGE | 754 | config 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 | |||
756 | config USB_GADGET_TARGET | 770 | config 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 | ||
766 | config USB_G_SERIAL | 781 | config 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 | |||
785 | config USB_MIDI_GADGET | 801 | config 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 | ||
799 | config USB_G_PRINTER | 816 | config 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 | |||
814 | config USB_CDC_COMPOSITE | 832 | config 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 | |||
828 | config USB_G_NOKIA | 847 | config 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 | |||
838 | config USB_G_ACM_MS | 858 | config 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 | ||
890 | config USB_G_HID | 912 | config 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 | ||
902 | config USB_G_DBGP | 926 | config 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. |