<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: iMX6 OTG 'wait otg vbus change timeout!' in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478217#M75977</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We wil double-check the schematic, but as I wrote, it works fine with Nitrogen6x uboot 2013.10, but not with 2014.04, so something is initialized differently.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 02 Feb 2016 12:32:45 GMT</pubDate>
    <dc:creator>frédéric</dc:creator>
    <dc:date>2016-02-02T12:32:45Z</dc:date>
    <item>
      <title>iMX6 OTG 'wait otg vbus change timeout!'</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478215#M75975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We are using a spinoff of a Boundary Nitrogen6x, kernel 3.0.35. When I plug a mouse on the OTG it is detected and work fine.&lt;/P&gt;&lt;P&gt;However we changed the uboot (was 2013.10, now 2014.04) to have support for signed kernel and now when I plug a mouse on OTG I have this message in kernel:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wait otg vbus change timeout!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and it does not work. We have not changed the kernel, so it looks like the previous uboot configured something about OTG that we are missing.&lt;/P&gt;&lt;P&gt;I put this in my new uboot:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx_iomux_v3_setup_pad(MX6_PAD_ENET_RX_ER__USB_OTG_ID);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx_iomux_v3_setup_pad(MX6_PAD_EIM_D22__GPIO3_IO22);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* USB_OTG_PWR = 0 */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gpio_direction_output(USB_OTG_PWR, 0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But it is still not working in kernel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any clues? If I have no support for USB-OTG in uboot, what is missing in the kernel to configure it? I see in my dmesg that the module is loaded&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Freescale USB OTG Driver loaded, $Revision: 1.55 $&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the kernel (our board.c support file) has this code for OTG:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;static void board_usbotg_vbus(bool on)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; if (on)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; gpio_set_value(BOARD_USB_OTG_PWR, 1);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; else&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; gpio_set_value(BOARD_USB_OTG_PWR, 0);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;static void __init board_init_usb(void)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; int ret = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; imx_otg_base = MX6_IO_ADDRESS(MX6Q_USB_OTG_BASE_ADDR);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; /* disable external charger detect,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; * or it will affect signal quality at dp .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; ret = gpio_request(BOARD_USB_OTG_PWR, "usb-pwr");&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; if (ret) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; pr_err("failed to get GPIO BOARD_USB_OTG_PWR: %d\n",&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; ret);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; return;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; gpio_direction_output(BOARD_USB_OTG_PWR, 0);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; mxc_iomux_set_gpr_register(1, 13, 1, 1);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; mx6_set_otghost_vbus_func(board_usbotg_vbus);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EDIT: note that when fully booted in android, device mode is still working because ADB works fine, it is only host that does not work anymore&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Feb 2016 13:05:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478215#M75975</guid>
      <dc:creator>frédéric</dc:creator>
      <dc:date>2016-02-01T13:05:43Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 OTG 'wait otg vbus change timeout!'</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478216#M75976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;The otg power switch is handled by SOC internal, which is using the USB_OTG_PWR_EN and determined by otg id.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;The GPIO could not guarantee the timing. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;The hardware design could refer to the i.MX6Q SDB board reference design. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="Untitled.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/51824i9D5296041E27D19A/image-size/large?v=v2&amp;amp;px=999" role="button" title="Untitled.png" alt="Untitled.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Feb 2016 03:06:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478216#M75976</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2016-02-02T03:06:36Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 OTG 'wait otg vbus change timeout!'</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478217#M75977</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We wil double-check the schematic, but as I wrote, it works fine with Nitrogen6x uboot 2013.10, but not with 2014.04, so something is initialized differently.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Feb 2016 12:32:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478217#M75977</guid>
      <dc:creator>frédéric</dc:creator>
      <dc:date>2016-02-02T12:32:45Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 OTG 'wait otg vbus change timeout!'</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478218#M75978</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I somehow missed this in our new uboot:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;NEW_PAD_CTRL(MX6_PAD_EIM_D22__GPIO3_IO22, OUTPUT_40OHM),&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now it is working, but instead of modifying uboot I will try to put the pad settings in kernel where they should belongs to make OTG working&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Feb 2016 14:45:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-OTG-wait-otg-vbus-change-timeout/m-p/478218#M75978</guid>
      <dc:creator>frédéric</dc:creator>
      <dc:date>2016-02-02T14:45:22Z</dc:date>
    </item>
  </channel>
</rss>

