uac分为UAC1.0和UAC2.0,由于UAC2.0,在windows上兼容性不好,在产品中,会带来各种坑,所以选择UAC1.0
平台:高通 SDA660,android Q,kernel4.4
一、kernel支持:
CONFIG_USB_CONFIGFS_F_UAC1=y
CONFIG_CONFIGFS_FS=y
打开此配置选项后, cat /proc/asound/cards,可以看到一个UAC的虚拟声卡
二、应用层配置:
对于高通代码,需要在修改此目录下文件:LINUX/android/device/qcom/common/rootdir/etc/init.msm.usb.configfs.rc
# LINUX/android/device/qcom/common/rootdir/etc/init.msm.usb.configfs.rc
on property:sys.usb.config=uac1 && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "uac1"
rm /config/usb_gadget/g1/configs/b.1/f1
rm /config/usb_ga