Android [USB] OTG功能如何打开及实现

前言
         欢迎大家我分享和推荐好用的代码段~~
声明
         欢迎转载,但请保留文章原始出处:
         CSDN
http://www.csdn.net
         雨季o莫忧离:http://blog.csdn.net/luckkof

正文

 

USB OTG功能如何打开及实现


USB OTG U盘 Keyboard Mouse


1、检查HW原理图,确认是否支持OTG功能(vbus是否供上电,IDDIG pin连接是否正确)

 

2、若HW确认支持OTG功能,则按照以下方法分别打开USB OTG功能及实现挂载:

    • 如何打开USB OTG功能:
      • 在alps/mediatek/config/{project}/autoconfig/kconfig/project中打开CONFIG_USB_MTK_OTG和CONFIG_USB_MTK_HDRC_HCD
        • CONFIG_USB_MTK_OTG =y
        • CONFIG_USB_MTK_HDRC_HCD = y
      • 在dws中设定OTG VBUS对应的输出控制pin配置为GPIO模式,var name为GPIO_OTG_DRVVBUS_PIN。再设定IDDIG pin默认模式为IDDIG,var name为GPIO_OTG_IDDIG_EINT_PIN
    • 如何实现挂载:
      • init.project.rc起始位置处添加如下内容
        on early-init
            
        mkdir /mnt/usbotg 0000 system system
      • vold.fstab末尾添加如下一行
        dev_mount usbotg /mnt/usbotg auto /devices/platform/mt_usb
      • storage_list.xml添加如下一个xml节点
        <storage android:mountPoint="/mnt/usbotg"
               android:storageDescription="@string/storage_external_usb"
               android:removable="true"
               android:primary="false" />
        • 备注:需要根据ProjectConfig.mk中的resource_overlay_support的值来修改对应路径的storage_list.xml文件
          • 1.RESOURCE_OVERLAY_SUPPORT的值为generic  ==>>  alps/mediatek/custom/{project}/resource_overlay/generic/frameworks/base/core/res/res/xml/storage_list.xml
          • 2.RESOURCE_OVERLAY_SUPPORT的值为空  ==>>  framework/base/core/res/res/xml/storage_list.xml
        • 对于82平台,resource_overlay_support的值可配置为sd_in_ex_otg、sd_ex_otg,则无需再修改对应路径的storage_list.xml文件

 

[Attention]

目前USB OTG功能只支持U盘(一个FAT分区)、Keyboard、Mouse、PTP device


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。