This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to set OTG port of AM3715 to device mode only

Other Parts Discussed in Thread: AM3715

We are using AM3715's OTG port as a connection with PC. We only want this port to be device, never to be host. Is there any way to configure AM3715's OTG in this way? This is a system internal connection on PCB and has no USB cable involved. Here are our hardware status:

1. USB PHY: SMSC USB3330, ID pin pull up to high, VBUS is left open,

2. USB3330 is driven by 19.2MHZ, and generating 60MHZ to AM3715

Because this is a on-board connection only and has need to implement all of signals on the port, do we still need to have VBUS voltage connected? Please advise.

Jiansheng

  • Yes, you must provide VBUS to the PHY so it will report a valid VBUS voltage to the OTG controller operating in device mode.

     

    Regards,

    Paul

  • Beside VBUS setting, can we set port 0 into "host" only mode? In this way we may bypass those complicated OTG prototacal because our application doesn't require this port to be in OTG status. Please advise.

    Jiansheng 

  • If you are asking if the USB OTG controller can be configured to operate in an EHCI compatible mode, the answer is No.  This is an OTG controller.

     

    However, the OTG controller can operate as a standard USB host, standard USB device, or dual-role USB OTG device.  The ID pin must be grounded when the OTG controller is operating as a standard USB host.

     

    Regards,

    Paul

     

  • Thanks for the reply. Yes, all I need is to have this port working as standard USB peripheral (not host, not EHCI mode), and we have ID pin on PHY tided to HIGH for device status. One thing I want to know is how to configure the OTG port in software point of view. In other word how the AM3715's software driver should be configured to do so? Or we still have to use OTG protocal?

    thanks

    Jiansheng

  • You just need to implement the specific driver type for your OS and it will configure the controller appropriately.

     

    I may need to find someone else to answer your questions if you need more details.

     

    Can you provide more information about the product you are developing?  For example, what OS do you plan to use and what type of USB devices need to be supported by your product?

     

    Regards,

    Paul   

  • Thanks for the quick response. We are using Andriod OS. This OTG port of MCU is used as a fixed connection port with another USB host as data link of another board. This connection is on board and relationship between that host and this OTG port is also fixed and never going to change. In another word there is no other connections to be attached to here, but only that USB host located on another board. The only possible change is the OTG and host may be powered on or off separately.

    We do need some details about its software configuration. It will be really appreciated if you could help to find someone to help.

    thanks a lot!

    Jiansheng

     

  • Hi Jiansheng,

    May I know the exact functionality of this USB device(AM3715), which you are trying to achieve?

    Accordingly you can choose USB drivers which serve your purpose. Also we can help on how you can achieve this use case on Android layers.

    Normally, for Android, this port acts as Android gadget, giving out the functionality of adb, mass storage etc.

    Regards,

    Arun

  • Arun,

    thanks for talking this issue. This USB device (AM3715) is a working as an uplink interface to USB host on another board. It will grab the data from other USB ports (in separately controlled) and dump to this port. Our SW guy is dealing this port as an OTG but it seems making the thing complicated. That is why I would like to know if we could simply it as a USB device only.

    From functionality point of view, it is more like a communication port, such as Ethernet.

    Please advise if there is anything could be done here. Thanks!

    Jiansheng

  •  

    Jiansheng,

    If your board is acting as a usb gadget, you need to have OTG configuration. If not you can disable USB_GADGET support and then disable USB OTG support.

    Is there any particular reason you want to use the port as device and not as OTG?

    Regards,

    Arun

     

  • Arun,

    from our application point of view, this USB connection is a fixed port, means its connection is never going to change, is required to be a device all the time. And also it is on-board connection and has no external access. That is why we hope to have a fixed device status.  Can you provide some more details about how to disable USB_GADGET/OTG support ?

    Jiansheng

  • Jiansheng,

    From kernel menuconfig,

    Disable CONFIG_USB_GADGET  first. Then Disable CONFIG_USB_GADGET.

    Please let us know if you are not able to get the board in device only mode.

     

     

  • hi, is there any typo here?

    Disable CONFIG_USB_GADGET  first. Then Disable CONFIG_USB_GADGET. ???????

     

    jiansheng

  • Hello, I am a software developer on Jiansheng's side.

     

    The problem is to get operating USB gadget using OTG port on am3715. The Vbus signal on PHY is not connected to anything and the driver couldn't get reset condition of USB bus. It misrepresents it as "Sess Req".

    read more:

    http://e2e.ti.com/support/dsp/sitara_arm174_microprocessors/f/416/t/152575.aspx#552248

     

    The question is:

    Could we find a software solution to the problem?

    What may be configured in the OTG controller to ignore the Vbus improper state?

     

    Thank you

  •  

    There is not a software workaround for this issue.  You must connect VBUS or the hardware state machine in the OTG controller will not work as expected.

     

    Regards,

    Paul

  • Rosti,

    I have already replied in below thread as you mentioned and lets follow up this on same thread.

    http://e2e.ti.com/support/dsp/sitara_arm174_microprocessors/f/416/t/152575.aspx#552248

    Please reply the status after you have done the modification you told in above thread.

    Regards,
    Ajay