<?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: Creating a Linux Gadget USB Composite Device for i.MX28 in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Creating-a-Linux-Gadget-USB-Composite-Device-for-i-MX28/m-p/145814#M92</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, I found some answers. I chose the option for "Multifunction Composite Gadget (EXPERIMENTAL)" under "USB Gadget Support" in the LTIB configuration. and rebuilt the kernel. There is a "g_multi" that appears in the directory "/lib/modules/2.6.35.3-571-gcca29a0/kernel/drivers/usb/gadget". Below is the scrren shot of what appeared to work:&lt;/P&gt;&lt;P&gt;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ modprobe g_multi file=/fsg.block stall=0&lt;/P&gt;&lt;P&gt;g_multi gadget: using random self ethernet address&lt;/P&gt;&lt;P&gt;g_multi gadget: using random host ethernet address&lt;/P&gt;&lt;P&gt;usb0: MAC 56:8f:6d:16:0c:a5&lt;/P&gt;&lt;P&gt;usb0: HOST MAC 46:bf:7b:10:39:4e&lt;/P&gt;&lt;P&gt;g_multi gadget: Mass Storage Function, version: 2009/09/11&lt;/P&gt;&lt;P&gt;g_multi gadget: Number of LUNs=1&lt;/P&gt;&lt;P&gt;&amp;nbsp;lun0: LUN: removable file: /fsg.block&lt;/P&gt;&lt;P&gt;g_multi gadget: Multifunction Composite Gadget, version: 2009/07/21&lt;/P&gt;&lt;P&gt;g_multi gadget: g_multi ready&lt;/P&gt;&lt;P&gt;fsl-usb2-udc: bind to driver g_multi&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ g_multi gadget: high speed config #1: Multifunction Composite (CDC + MS + ACM)&lt;/P&gt;&lt;P&gt;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;/P&gt;&lt;P&gt;I had previously created "fsg.block" as a 16 M RAM Disk as follows:&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ dd if=/dev/zero of=/fsg.block bs=1M count=16&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was able to see my Mass Storage Device (I had to format it, of course).&lt;/P&gt;&lt;P&gt;I also was able to send text from the EVK board's serial ("/dev/ttyGS0")&amp;nbsp;to the Linux host's serial (/dev/ttyACM0)&amp;nbsp;via the following commands:&lt;/P&gt;&lt;P&gt;From EVK: &lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ echo "Test from EVK" &amp;gt; /dev/ttyGS0&lt;/P&gt;&lt;P&gt;On Linux Host: user&lt;A href="mailto:jays1@ubuntu:~$"&gt;1@ubuntu:~$&lt;/A&gt; cat /dev/ttyACM0&lt;/P&gt;&lt;P&gt;Test from EVK&lt;/P&gt;&lt;P&gt;------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;I didn't use the Ethernet. Anyone know what I need for the Driver on Windows? It shows up as a "Multifunction Composite Gadget".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 15 Mar 2012 15:20:23 GMT</pubDate>
    <dc:creator>JayWilliamStubb</dc:creator>
    <dc:date>2012-03-15T15:20:23Z</dc:date>
    <item>
      <title>Creating a Linux Gadget USB Composite Device for i.MX28</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Creating-a-Linux-Gadget-USB-Composite-Device-for-i-MX28/m-p/145813#M91</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Does anyone know if I can create a Linux Gadget&amp;nbsp;USB composite device? I am trying to create a device that can be both Mass Storage and a serial device at the same time. When I try to create a serial port when I already am using the OTG port for Mass Storage, I get a device busy message. I see that there is an option for "Multifunction Composite Gadget (EXPERIMENTAL)" under "USB Gadget Support" in the LTIB configuration. If I choose this option, how do I select/configure/use the Mass Storage and Serial option?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here are the screen shot of the problem I'm talking about:&lt;/P&gt;&lt;P&gt;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ modprobe g_file_storage file=/fsg.block stall=0&lt;/P&gt;&lt;P&gt;g_file_storage gadget: File-backed Storage Gadget, version: 20 November 2008&lt;/P&gt;&lt;P&gt;g_file_storage gadget: Number of LUNs=1&lt;/P&gt;&lt;P&gt;g_file_storage gadget-lun0: ro=0, file: /fsg.block fsl-usb2-udc: bind to driver g_file_storage&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ g_file_storage gadget: high speed config #1&lt;/P&gt;&lt;P&gt;g_file_storage gadget: high speed config #1&lt;/P&gt;&lt;P&gt;g_file_storage gadget: high speed config #1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ modprobe g_serial&lt;/P&gt;&lt;P&gt;modprobe: failed to load module g_serial (/lib/modules/2.6.35.3-571-gcca29a0/ker nel/drivers/usb/gadget/g_serial.ko): Device or resource busy&lt;/P&gt;&lt;P&gt;r&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ rnmod g_file_storage&lt;/P&gt;&lt;P&gt;unregistered gadget driver 'g_file_storage'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ modprobe g_serial&lt;/P&gt;&lt;P&gt;g_serial gadget: Gadget Serial v2.4&lt;/P&gt;&lt;P&gt;g_serial gadget: g_serial ready&lt;/P&gt;&lt;P&gt;fsl-usb2-udc: bind to driver g_serial&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$&lt;/P&gt;&lt;P&gt;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Mar 2012 14:21:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Creating-a-Linux-Gadget-USB-Composite-Device-for-i-MX28/m-p/145813#M91</guid>
      <dc:creator>JayWilliamStubb</dc:creator>
      <dc:date>2012-03-15T14:21:20Z</dc:date>
    </item>
    <item>
      <title>Re: Creating a Linux Gadget USB Composite Device for i.MX28</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Creating-a-Linux-Gadget-USB-Composite-Device-for-i-MX28/m-p/145814#M92</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, I found some answers. I chose the option for "Multifunction Composite Gadget (EXPERIMENTAL)" under "USB Gadget Support" in the LTIB configuration. and rebuilt the kernel. There is a "g_multi" that appears in the directory "/lib/modules/2.6.35.3-571-gcca29a0/kernel/drivers/usb/gadget". Below is the scrren shot of what appeared to work:&lt;/P&gt;&lt;P&gt;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ modprobe g_multi file=/fsg.block stall=0&lt;/P&gt;&lt;P&gt;g_multi gadget: using random self ethernet address&lt;/P&gt;&lt;P&gt;g_multi gadget: using random host ethernet address&lt;/P&gt;&lt;P&gt;usb0: MAC 56:8f:6d:16:0c:a5&lt;/P&gt;&lt;P&gt;usb0: HOST MAC 46:bf:7b:10:39:4e&lt;/P&gt;&lt;P&gt;g_multi gadget: Mass Storage Function, version: 2009/09/11&lt;/P&gt;&lt;P&gt;g_multi gadget: Number of LUNs=1&lt;/P&gt;&lt;P&gt;&amp;nbsp;lun0: LUN: removable file: /fsg.block&lt;/P&gt;&lt;P&gt;g_multi gadget: Multifunction Composite Gadget, version: 2009/07/21&lt;/P&gt;&lt;P&gt;g_multi gadget: g_multi ready&lt;/P&gt;&lt;P&gt;fsl-usb2-udc: bind to driver g_multi&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ g_multi gadget: high speed config #1: Multifunction Composite (CDC + MS + ACM)&lt;/P&gt;&lt;P&gt;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;/P&gt;&lt;P&gt;I had previously created "fsg.block" as a 16 M RAM Disk as follows:&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ dd if=/dev/zero of=/fsg.block bs=1M count=16&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was able to see my Mass Storage Device (I had to format it, of course).&lt;/P&gt;&lt;P&gt;I also was able to send text from the EVK board's serial ("/dev/ttyGS0")&amp;nbsp;to the Linux host's serial (/dev/ttyACM0)&amp;nbsp;via the following commands:&lt;/P&gt;&lt;P&gt;From EVK: &lt;A href="mailto:root@freescale"&gt;root@freescale&lt;/A&gt; ~$ echo "Test from EVK" &amp;gt; /dev/ttyGS0&lt;/P&gt;&lt;P&gt;On Linux Host: user&lt;A href="mailto:jays1@ubuntu:~$"&gt;1@ubuntu:~$&lt;/A&gt; cat /dev/ttyACM0&lt;/P&gt;&lt;P&gt;Test from EVK&lt;/P&gt;&lt;P&gt;------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;I didn't use the Ethernet. Anyone know what I need for the Driver on Windows? It shows up as a "Multifunction Composite Gadget".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Mar 2012 15:20:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Creating-a-Linux-Gadget-USB-Composite-Device-for-i-MX28/m-p/145814#M92</guid>
      <dc:creator>JayWilliamStubb</dc:creator>
      <dc:date>2012-03-15T15:20:23Z</dc:date>
    </item>
  </channel>
</rss>

