Subject: [PATCHv4 00/11] Equivalent of tcm_usb_gadget with configfs
Date: Tuesday 1st December 2015 13:25:59 UTC (over 2 years ago)
Dear All, This series adds support to tcm usb gadget for composing it with configfs. @target-devel folks: You might be wondering why add configfs for something which already supports configfs. In tcm_usb_gadget configfs has beeen used for configuring the SCSI target part, but the usb gadget part is considered a legacy gadget. A legacy gadget is a composite usb gadget whose composition is defined statically at compilation time. Composite gadgets can consist of a number of "functions" and configurations. In legacy gadgets the selection is hardcoded in a dedicated kernel module. But with configfs the selection can be made at runtime without writing any kernel code. The conversion process started almost three years ago. The series aims at integrating configfs into tcm, the way it has been done with 19 of 20 usb functions. In other words this concludes the process of conversion to configfs in usb gadgets. The series depends on the series from Chrisoph: http://www.spinics.net/lists/target-devel/msg10730.html v3..v4: - rebased onto current Nicholas' tree (b1c06ebadd277421c3f59569708ed356eb5dded5, tcm_usb_gadget: Fix enabled attribute failure) v2..v3: - dropped a patch adding unlocked versions of depend/undepend item, instead this series depends on a series from Krzysztof: http://www.spinics.net/lists/linux-usb/msg131720.html v1..v2: - added missing comments - used the next version of configfs_(un)depend_item_unlocked() - fixed bug: THIS_MODULE is NULL if a module is compiled-in, so we cannot rely on opts->dependent being non-NULL if a dependent module is present - added passing configfs subsystem to configfs_(un)depend_item_unlocked() BACKWARD COMPATIBILITY ====================== Please note that the old tcm_usb_gadget.ko is still available and works. USING THE NEW "GADGET" ====================== Please refer to this post: http://www.spinics.net/lists/linux-usb/msg76388.html for general information from Sebastian on how to use configfs-based gadgets (*). With configfs the procedure is as follows, compared to the information mentioned above (*): instead of mkdir functions/acm.ttyS1 do mkdir functions/tcm.