<?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: USB interface on IMX6 in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/USB-interface-on-IMX6/m-p/326258#M43826</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi j b,&lt;/P&gt;&lt;P&gt;Regarding to the hardware connections, you could use as reference the schematics of the i.MX6Q SABRE SD. The Design Files of this board are available on the following link:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/download/license.jsp?colCode=iMX6_SABRE_SDB_DESIGNFILES"&gt;www.freescale.com/webapp/sps/download/license.jsp?colCode=iMX6_SABRE_SDB_DESIGNFILES&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarding pin multiplexing, you could refer to the “Interactive i.MX Pin Mux Tool”, available for download at the link below:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/download/license.jsp?colCode=IMX6_IOMUX_TOOL"&gt;www.freescale.com/webapp/sps/download/license.jsp?colCode=IMX6_IOMUX_TOOL&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will be useful for you.&lt;/P&gt;&lt;P&gt;Best regards!&lt;/P&gt;&lt;P&gt;/Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 04 Aug 2014 22:43:43 GMT</pubDate>
    <dc:creator>CarlosCasillas</dc:creator>
    <dc:date>2014-08-04T22:43:43Z</dc:date>
    <item>
      <title>USB interface on IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-interface-on-IMX6/m-p/326257#M43825</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm confused about the correct way to wire and use the USB interfaces both OTG and host on the IMX6 on custom hardware.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Chapter 65 of the reference manual lists pins used for OTG controller.&lt;/P&gt;&lt;P&gt;• USB_OTG_VBUS&lt;/P&gt;&lt;P&gt;• USB_OTG_DN&lt;/P&gt;&lt;P&gt;• USB_OTG_DP&lt;/P&gt;&lt;P&gt;• USB_OTG_CHD_B, see Universal Serial Bus 2.0 Integrated PHY (USB-PHY).&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;The following external signals are multiplexed with other pins. For the pin mapping, see&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;External Signals. For the IOMUXC register setting, see IOMUX Controller (IOMUXC)&lt;/P&gt;&lt;P&gt;• USB_OTG_ID&lt;/P&gt;&lt;P&gt;• USB_OTG_PWR&lt;/P&gt;&lt;P&gt;• USB_OTG_OC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here are the IMX6 multiplexed cpu pad's I used. &lt;/P&gt;&lt;P&gt;GPIO_1:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USB_OTG_ID&lt;/P&gt;&lt;P&gt;KEY_COL4:&amp;nbsp; USB_OTG_OC&lt;/P&gt;&lt;P&gt;KEY_ROW4: USB_OTG_PWR_EN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GPIO_3: USB_H1_OC&lt;/P&gt;&lt;P&gt;GPIO_0: USB_H1_PWR_EN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the kernel I've chosen the usb function for each of the multiplexed GPIO pins in my board-custom.h file.&lt;/P&gt;&lt;P&gt;MX6Q_PAD_GPIO_0__USBOH3_USBH1_PWR&lt;/P&gt;&lt;P&gt;MX6Q_PAD_GPIO_1__USBOTG_ID&lt;/P&gt;&lt;P&gt;MX6Q_PAD_GPIO_3__USBOH3_USBH1_OC&lt;/P&gt;&lt;P&gt;MX6Q_PAD_KEY_COL4_USBOH3_USBOTG_OC&lt;/P&gt;&lt;P&gt;MX6Q_PAD_KEY_ROW4_USBOH3_USBOTG_PWR&lt;/P&gt;&lt;P&gt;Additionally, I've set bit 13 of GPR1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;However, I'm confused by the MX6Q sabresd dev kit.&amp;nbsp; Why does the kernel code set it's USB power pins (for both OTG and H1) to the gpio function instead of the USBOH3 PWR function?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;Specifically in board-mx6q_sabresd.h file:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;/* USB power pin */&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;MX6Q_PAD_EIM_D22__GPIO_3_22&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;MX6Q_PAD_ENET_TXD1__GPIO_1_29&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;How do I edit my board-custom.c file to reflect my hardware using the the USB mux functions?&amp;nbsp; Specifically, if I use the USB mux power I'm not sure how to write mx6_set_otghost_vbus_func&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;mx6_set_host1_vbus_func&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is my schematic showing the connections to the two USB connectors.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="usb.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/45333iEE6126A2D4CC7BB5/image-size/large?v=v2&amp;amp;px=999" role="button" title="usb.png" alt="usb.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Jul 2014 02:03:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-interface-on-IMX6/m-p/326257#M43825</guid>
      <dc:creator>xray</dc:creator>
      <dc:date>2014-07-31T02:03:25Z</dc:date>
    </item>
    <item>
      <title>Re: USB interface on IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-interface-on-IMX6/m-p/326258#M43826</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi j b,&lt;/P&gt;&lt;P&gt;Regarding to the hardware connections, you could use as reference the schematics of the i.MX6Q SABRE SD. The Design Files of this board are available on the following link:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/download/license.jsp?colCode=iMX6_SABRE_SDB_DESIGNFILES"&gt;www.freescale.com/webapp/sps/download/license.jsp?colCode=iMX6_SABRE_SDB_DESIGNFILES&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarding pin multiplexing, you could refer to the “Interactive i.MX Pin Mux Tool”, available for download at the link below:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/download/license.jsp?colCode=IMX6_IOMUX_TOOL"&gt;www.freescale.com/webapp/sps/download/license.jsp?colCode=IMX6_IOMUX_TOOL&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will be useful for you.&lt;/P&gt;&lt;P&gt;Best regards!&lt;/P&gt;&lt;P&gt;/Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Aug 2014 22:43:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-interface-on-IMX6/m-p/326258#M43826</guid>
      <dc:creator>CarlosCasillas</dc:creator>
      <dc:date>2014-08-04T22:43:43Z</dc:date>
    </item>
  </channel>
</rss>

