Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

usb: gadget: don't couple configfs to legacy gadgets

It's perfectly fine to have all configfs functions
built-in while having modular legacy gadgets. Let's
allow for that.

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>

+19 -19
+19 -19
drivers/usb/gadget/Kconfig
··· 209 209 config USB_F_TCM 210 210 tristate 211 211 212 - choice 213 - tristate "USB Gadget Drivers" 214 - default USB_ETH 215 - help 216 - A Linux "Gadget Driver" talks to the USB Peripheral Controller 217 - driver through the abstract "gadget" API. Some other operating 218 - systems call these "client" drivers, of which "class drivers" 219 - are a subset (implementing a USB device class specification). 220 - A gadget driver implements one or more USB functions using 221 - the peripheral hardware. 222 - 223 - Gadget drivers are hardware-neutral, or "platform independent", 224 - except that they sometimes must understand quirks or limitations 225 - of the particular controllers they work with. For example, when 226 - a controller doesn't support alternate configurations or provide 227 - enough of the right types of endpoints, the gadget driver might 228 - not be able work with that controller, or might need to implement 229 - a less common variant of a device class protocol. 230 - 231 212 # this first set of drivers all depend on bulk-capable hardware. 232 213 233 214 config USB_CONFIGFS ··· 455 474 interface 0 (primary) and UAS is on alternative interface 1. 456 475 Both protocols can work on USB2.0 and USB3.0. 457 476 UAS utilizes the USB 3.0 feature called streams support. 477 + 478 + choice 479 + tristate "USB Gadget Drivers" 480 + default USB_ETH 481 + help 482 + A Linux "Gadget Driver" talks to the USB Peripheral Controller 483 + driver through the abstract "gadget" API. Some other operating 484 + systems call these "client" drivers, of which "class drivers" 485 + are a subset (implementing a USB device class specification). 486 + A gadget driver implements one or more USB functions using 487 + the peripheral hardware. 488 + 489 + Gadget drivers are hardware-neutral, or "platform independent", 490 + except that they sometimes must understand quirks or limitations 491 + of the particular controllers they work with. For example, when 492 + a controller doesn't support alternate configurations or provide 493 + enough of the right types of endpoints, the gadget driver might 494 + not be able work with that controller, or might need to implement 495 + a less common variant of a device class protocol. 458 496 459 497 source "drivers/usb/gadget/legacy/Kconfig" 460 498