blob: 90d776cf2aab7b0742da71ff2bd2eb820fd09850 [file] [log] [blame]
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001menu "USB Function Support"
2 depends on !USB_GADGET
3
4config USB_MSM_OTG
5 bool "OTG support for Qualcomm on-chip USB controller"
6 depends on USB && USB_FUNCTION && USB_EHCI_MSM
7 help
8 USB OTG driver.
9 This driver is required if you want to use USB in
10 Host mode and Device mode.
11
12config USB_FUNCTION
13 boolean "Support for USB Function Drivers"
14 help
15 The USB Function framework is similar to the Gadget framework
16 but a little simpler and a little more plugable. It trades
17 some flexibility in the framework for smaller and simpler
18 function drivers that can be combined into a composite driver.
19
20choice
21 prompt "USB Peripheral Controller"
22 depends on USB_FUNCTION
23 help
24 USB devices interfaces with the host using a controller.
25 Many controller drivers are platform-specific; these
26 often need board-specific hooks.
27
28config USB_FUNCTION_MSM_HSUSB
29 boolean "MSM Highspeed USB Peripheral Controller"
30 depends on ARCH_MSM
31 help
32 High speed USB device controller for Qualcomm chipsets using
33 USB Function framework. Controller supports IAD and
34 32 endpoints(16 IN and 16 OUT).
35
36endchoice
37
38config USB_FUNCTION_NULL
39 boolean "Null Function -- eats packets"
40 depends on USB_FUNCTION
41 depends on USB_FUNCTION_MSM_HSUSB
42 default n
43
44config USB_FUNCTION_ZERO
45 boolean "Zero Function -- generates packets"
46 depends on USB_FUNCTION
47 depends on USB_FUNCTION_MSM_HSUSB
48 default n
49
50config USB_FUNCTION_LOOPBACK
51 boolean "Loopback Function -- returns packets"
52 depends on USB_FUNCTION
53 depends on USB_FUNCTION_MSM_HSUSB
54 default n
55
56config USB_FUNCTION_ADB
57 tristate "ADB Transport Function"
58 depends on USB_FUNCTION
59 depends on USB_FUNCTION_MSM_HSUSB
60 help
61 Function Driver for the Android ADB Protocol
62
63 Say "y" to link the driver statically, or "m" to build a
64 dynamically linked module called "adb"
65
66 default USB_FUNCTION_MSM_HSUSB
67
68config USB_FUNCTION_UMS
69 boolean "USB Mass Storage Function (userspace)"
70 depends on USB_FUNCTION
71 depends on USB_FUNCTION_MSM_HSUSB
72 default n
73
74config USB_FUNCTION_MASS_STORAGE
75 tristate "USB Mass Storage Function (kernel based)"
76 depends on USB_FUNCTION
77 depends on USB_FUNCTION_MSM_HSUSB && SWITCH
78 help
79 The File-backed Storage function driver acts as a USB Mass Storage
80 disk drive. As its storage repository it can use a regular
81 file or a block device specified as a module parameter. Initial
82 driver version is derived from Gadget framework and ported to
83 Function driver framework.
84
85 Say "y" to link the driver statically, or "m" to build a
86 dynamically linked module called "file_storage".
87
88 default USB_FUNCTION_MSM_HSUSB
89
90config USB_CSW_HACK
91 boolean "USB Mass storage csw hack Feature"
92 depends on USB_FUNCTION
93 depends on USB_FUNCTION_MASS_STORAGE
94 help
95 This csw hack feature is for increasing the performance of the mass
96 storage
97
98 default n
99
100config USB_FUNCTION_DIAG
101 tristate "USB MSM Diag Function"
102 depends on USB_FUNCTION
103 depends on USB_FUNCTION_MSM_HSUSB
104 help
105 Simple bridge driver between smd and debug client(host side)
106
107 Say "y" to link the driver statically, or "m" to build a
108 dynamically linked module called "diag".
109
110 default USB_FUNCTION_MSM_HSUSB
111
112config USB_FUNCTION_ETHER
113 tristate "USB Ethernet Function"
114 depends on USB_FUNCTION
115 depends on USB_FUNCTION_MSM_HSUSB
116 help
117 Implements the Ethernet style communication using CDC/ECM.
118
119 Say "y" to link the driver statically, or "m" to build a
120 dynamically linked module called "ether".
121
122 default USB_FUNCTION_MSM_HSUSB
123
124config USB_FUNCTION_SERIAL
125 tristate "USB Serial Function"
126 depends on USB_FUNCTION
127 depends on USB_FUNCTION_MSM_HSUSB
128 help
129 Implements serial communication using single interface; uses
130 two endpoints(bulk-in and bulk out) for data transfer and a
131 interrupt endpoint for control data transfer.
132
133 Say "y" to link the driver statically, or "m" to build a
134 dynamically linked module called "serial".
135
136 default USB_FUNCTION_MSM_HSUSB
137
138config USB_FUNCTION_RMNET
139 bool "RmNet function driver"
140 depends on USB_FUNCTION
141 depends on USB_FUNCTION_MSM_HSUSB
142 default n
143 help
144 Implements Rmnet function.
145 Rmnet is an alternative to CDC-ECM and Windows RNDIS. It uses
146 QUALCOMM MSM Interface for control transfers. It acts like a
147 bridge between Host and modem found in MSM chipsets.
148
149config RMNET_SMD_CTL_CHANNEL
150 string "control SMD channel name"
151 depends on USB_FUNCTION_RMNET
152 default ""
153 help
154 Control SMD channel for transferring QMI messages
155
156config RMNET_SMD_DATA_CHANNEL
157 string "Data SMD channel name"
158 depends on USB_FUNCTION_RMNET
159 default ""
160 help
161 Data SMD channel for transferring network data
162
163endmenu