linux usb gadget 模块filesystem,自定义通讯协议。有gadgetfs,funtionfs两种是实验方式。
1、gadgetfs 参考用例
参考用例 Create your own USB gadget with GadgetFS 很好的用例
Create your own USB gadget with GadgetFS
Linux-USB Gadget API Framework
http://www.linux-usb.org/gadget/usb.c
ptp-gadget 使用例程
GitHub - prife/ptp-gadget: fork from http://git.denx.de/?p=ptp-gadget.git;a=summary
2、functionfs 参考用例
linux内核中有测试用例,需要适配开发板
https://github.com/torvalds/linux/blob/master/tools/usb/ffs-test.c
https://github.com/torvalds/linux/tree/master/tools/usb/ffs-aio-example
adbd 的usb初始使用
https://github.com/tonyho/adbd-linux/blob/master/adb/usb_linux_client.cpp
使用例子
https://github.com/viveris/uMTP-Responder/blob/master/src/usb_gadget.c