|
目前想实现在debian或buildroot环境下,配置类似android的MTP通讯PC进行文件交互的方案。
就是debian通过type-C连接电脑PC,PC可以通过文件管理器实时访问到一个固定目录(例如android的sdcard)
尝试过buildroot、debian的官方固件均无法完整上述操作。
尝试编过了buildroot/package/mtp包,然后集成到buildroot固件里面,运行mtp-server会报错not opening /dev/mtp_usb.(如图一)
然后去查找对应的驱动文件,发现只有在kernel-4.4或更老的版本还有f_mtp.c文件,可以生成对应的设备节点。
移植到kernel-5.10 生成节点后,参考usbdevice里面ums模式修改变量的方式,把usbdevice.sh的export USB_FUNCS改成"mtp",调试调到最后报错变成invalid argument -22(如图二)
但是打印出来打开的fd值其实相同,参考了一下android的,android打开的是handle相关的。目前不知道后续如何修改了。
我有看到buildroot/package/mtp包里面的patch也有一直在更新的,逻辑上mtp配置应该是可用才对,想问一下是哪里没配置好的问题?
目前验证过ums模式是可以成功虚拟出U盘的,但是不能实时显示增删改的数据,达不到想要的效果。
主要就是想要到的跟android类似可以通过PC连接后实时查看对应目录下文件增删改查的功能。像smb这种网络共享的暂时不考虑。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|