<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-AT">
	<id>https://becomwiki.live.md-websolutions.com/index.php?action=history&amp;feed=atom&amp;title=USB-OTG_%28CM-i.MX27%29</id>
	<title>USB-OTG (CM-i.MX27) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://becomwiki.live.md-websolutions.com/index.php?action=history&amp;feed=atom&amp;title=USB-OTG_%28CM-i.MX27%29"/>
	<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=USB-OTG_(CM-i.MX27)&amp;action=history"/>
	<updated>2026-05-13T14:12:47Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in BECOM Systems Support</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://becomwiki.live.md-websolutions.com/index.php?title=USB-OTG_(CM-i.MX27)&amp;diff=578&amp;oldid=prev</id>
		<title>Peter: 1 Version importiert</title>
		<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=USB-OTG_(CM-i.MX27)&amp;diff=578&amp;oldid=prev"/>
		<updated>2023-10-31T08:03:12Z</updated>

		<summary type="html">&lt;p&gt;1 Version importiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de-AT&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 31. Oktober 2023, 10:03 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de-AT&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Peter</name></author>
	</entry>
	<entry>
		<id>https://becomwiki.live.md-websolutions.com/index.php?title=USB-OTG_(CM-i.MX27)&amp;diff=577&amp;oldid=prev</id>
		<title>en&gt;Peter: 1 Version importiert</title>
		<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=USB-OTG_(CM-i.MX27)&amp;diff=577&amp;oldid=prev"/>
		<updated>2023-08-22T19:35:55Z</updated>

		<summary type="html">&lt;p&gt;1 Version importiert&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The CM-i.MX27 core module features a high-speed USB-OTG PHY (SMSC USB3317). It is connected to the mini-USB jack marked with &amp;#039;&amp;#039;USB-OTG&amp;#039;&amp;#039; on the DEV-i.MX27/35.&lt;br /&gt;
&lt;br /&gt;
== Linux kernel configuration ==&lt;br /&gt;
&lt;br /&gt;
This configuration sets up full OTG mode, support for the Ethernet gadget (USB device mode) and mass storage support (USB host mode).&lt;br /&gt;
&lt;br /&gt;
 Device Drivers  ---&amp;gt;&lt;br /&gt;
   SCSI device support  ---&amp;gt;&lt;br /&gt;
     &amp;lt;*&amp;gt; SCSI device support&lt;br /&gt;
     [*] legacy /proc/scsi/ support&lt;br /&gt;
     &amp;lt;*&amp;gt; SCSI disk support&lt;br /&gt;
     [*] Probe all LUNs on each SCSI device&lt;br /&gt;
   USB support  ---&amp;gt;&lt;br /&gt;
     &amp;lt;*&amp;gt; Support for Host-side USB&lt;br /&gt;
     [*]   USB device filesystem&lt;br /&gt;
     &amp;lt;M&amp;gt;   EHCI HCD (USB 2.0) support&lt;br /&gt;
     [*]     Support for Freescale controller&lt;br /&gt;
     [*]       Support for OTG host port on Freescale controller&lt;br /&gt;
     Select OTG transceiver (Philips ISP1504)  ---&amp;gt;&lt;br /&gt;
     [*]     Root Hub Transaction Translators (EXPERIMENTAL)&lt;br /&gt;
     &amp;lt;*&amp;gt; USB Mass Storage support&lt;br /&gt;
     USB Gadget Support  ---&amp;gt;&lt;br /&gt;
       &amp;lt;M&amp;gt; Support for USB Gadgets&lt;br /&gt;
       USB Peripheral Controller (Freescale USB Device Controller)  ---&amp;gt;&lt;br /&gt;
       [*] OTG Support&lt;br /&gt;
       [*] Support for OTG peripheral port on Freescale controller&lt;br /&gt;
       Select OTG transceiver (Philips ISP1504)  ---&amp;gt;&lt;br /&gt;
       &amp;lt;M&amp;gt;   Ethernet Gadget (with CDC Ethernet support)&lt;br /&gt;
&lt;br /&gt;
== Test in Linux ==&lt;br /&gt;
&lt;br /&gt;
After startup of the kernel, we will load the required kernel modules, test the USB HOST mode with a USB flash disk, &lt;br /&gt;
and test the USB DEVICE mode with the Ethernet gadget. You will need a PC featuring the Ethernet gadget driver&lt;br /&gt;
(a Linux PC typically includes this driver).&lt;br /&gt;
&lt;br /&gt;
*Boot Linux on the CM-i.MX27&lt;br /&gt;
&lt;br /&gt;
*Load the kernel modules&lt;br /&gt;
 root@btmxc27:~# modprobe isp1504_arc&lt;br /&gt;
 driver fsl_arc, Revision: 1.0&lt;br /&gt;
 root@btmxc27:~# modprobe ehci-hcd&lt;br /&gt;
 fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller&lt;br /&gt;
 fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1&lt;br /&gt;
 fsl-ehci fsl-ehci.0: irq 56, io mem 0x10024000&lt;br /&gt;
 fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004&lt;br /&gt;
 usb usb1: Product: Freescale On-Chip EHCI Host Controller&lt;br /&gt;
 usb usb1: Manufacturer: Linux 2.6.22-btmxc27-v1.0 ehci_hcd&lt;br /&gt;
 usb usb1: SerialNumber: fsl-ehci.0&lt;br /&gt;
 usb usb1: configuration #1 chosen from 1 choice&lt;br /&gt;
 hub 1-0:1.0: USB hub found&lt;br /&gt;
 hub 1-0:1.0: 1 port detected&lt;br /&gt;
 root@btmxc27:~# modprobe arcotg_udc&lt;br /&gt;
 ARC USBOTG Device Controller driver version 1 August 2005 init &lt;br /&gt;
 ARC USBOTG h/w ID=0x5  revision=0x42&lt;br /&gt;
 root@btmxc27:~# modprobe g_ether&lt;br /&gt;
 ether gadget: using random self ethernet address&lt;br /&gt;
 ether gadget: using random host ethernet address&lt;br /&gt;
 usb0: Ethernet Gadget, version: May Day 2005&lt;br /&gt;
 usb0: using arc_udc, OUT ep1out IN ep1in STATUS ep2in&lt;br /&gt;
 usb0: MAC 72:ec:9b:ab:9b:5d&lt;br /&gt;
 usb0: HOST MAC ea:21:c9:08:58:39&lt;br /&gt;
 arcotg_udc: gadget arc_udc bound to driver ether&lt;br /&gt;
 root@btmxc27:~# &lt;br /&gt;
&lt;br /&gt;
*Now connect a USB flash disk to the USB-OTG plug. You need a cable mini-USB-A plug to USB-A-jack. We will mount and unmount it:&lt;br /&gt;
 usb 1-1: new high speed USB device using fsl-ehci and address 2&lt;br /&gt;
 usb 1-1: Product: USB Mass Storage Device&lt;br /&gt;
 usb 1-1: Manufacturer: P Technology&lt;br /&gt;
 usb 1-1: SerialNumber: 200707a41934fc&lt;br /&gt;
 usb 1-1: device v1307 p0163 is not supported&lt;br /&gt;
 usb 1-1: configuration #1 chosen from 1 choice&lt;br /&gt;
 scsi0 : SCSI emulation for USB Mass Storage devices&lt;br /&gt;
 scsi 0:0:0:0: Direct-Access     UT163    USB Flash Disk   0.00 PQ: 0 ANSI: 2&lt;br /&gt;
 sd 0:0:0:0: [sda] 1974271 512-byte hardware sectors (1011 MB)&lt;br /&gt;
 sd 0:0:0:0: [sda] Write Protect is off&lt;br /&gt;
 sd 0:0:0:0: [sda] Assuming drive cache: write through&lt;br /&gt;
 sd 0:0:0:0: [sda] 1974271 512-byte hardware sectors (1011 MB)&lt;br /&gt;
 sd 0:0:0:0: [sda] Write Protect is off&lt;br /&gt;
 sd 0:0:0:0: [sda] Assuming drive cache: write through&lt;br /&gt;
  sda: sda1&lt;br /&gt;
 sd 0:0:0:0: [sda] Attached SCSI removable disk&lt;br /&gt;
 FAT: invalid media value (0x01)&lt;br /&gt;
 VFS: Can&amp;#039;t find a valid FAT filesystem on dev sda.&lt;br /&gt;
 mount /dev/sda1 /mnt/card&lt;br /&gt;
 root@btmxc27:~# ls /mnt/card&lt;br /&gt;
 testfile&lt;br /&gt;
 root@btmxc27:~# umount /mnt/card/&lt;br /&gt;
 root@btmxc27:~# &lt;br /&gt;
&lt;br /&gt;
*Unplug the cable from the OTG port.&lt;br /&gt;
 usb 1-1: USB disconnect, address 2&lt;br /&gt;
&lt;br /&gt;
*Now we will connect the i.MX board to your local PC. You need a cable mini-USB-B plug to USB-A plug.&lt;br /&gt;
 usb0: high speed config #1: 8 mA, Ethernet Gadget, using CDC Ethernet&lt;br /&gt;
&lt;br /&gt;
*Establish an Ethernet-over-USB connection to your PC. On the target, we assign the IP address &amp;#039;&amp;#039;192.168.1.2&amp;#039;&amp;#039;:&lt;br /&gt;
 root@btmxc27:~# ifconfig usb0 up 192.168.1.2&lt;br /&gt;
 root@btmxc27:~# ifconfig usb0&lt;br /&gt;
 usb0      Link encap:Ethernet  HWaddr 72:EC:9B:AB:9B:5D  &lt;br /&gt;
           inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0&lt;br /&gt;
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
           RX packets:11 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
           TX packets:15 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
           collisions:0 txqueuelen:1000 &lt;br /&gt;
           RX bytes:2024 (1.9 KiB)  TX bytes:3390 (3.3 KiB)&lt;br /&gt;
&lt;br /&gt;
*Your Linux PC should have detected the connection of the Ethernet gadget. The output of &amp;#039;&amp;#039;dmesg&amp;#039;&amp;#039; should contain:&lt;br /&gt;
 [24772.520051] usb 1-6: new high speed USB device using ehci_hcd and address 7&lt;br /&gt;
 [24772.663767] usb 1-6: configuration #1 chosen from 1 choice&lt;br /&gt;
 [24772.676846] usb0: register &amp;#039;cdc_ether&amp;#039; at usb-0000:00:1a.7-6, CDC Ethernet Device, ea:21:c9:08:58:39&lt;br /&gt;
&lt;br /&gt;
*On your Linux PC, assign the IP address &amp;#039;&amp;#039;192.168.5.1&amp;#039;&amp;#039; to network device &amp;#039;&amp;#039;usb0&amp;#039;&amp;#039;. We use &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039; because we need root privileges for this.&lt;br /&gt;
 harald@WS-HP4600-35:~/imx/oe/btmxc$ sudo ifconfig usb0 up 192.168.1.1&lt;br /&gt;
 harald@WS-HP4600-35:~/imx/oe/btmxc$ ifconfig usb0&lt;br /&gt;
 usb0      Link encap:Ethernet  HWaddr ea:21:c9:08:58:39  &lt;br /&gt;
           inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0&lt;br /&gt;
           inet6 addr: fe80::e821:c9ff:fe08:5839/64 Scope:Link&lt;br /&gt;
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
           RX packets:16 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
           TX packets:21 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
           collisions:0 txqueuelen:1000 &lt;br /&gt;
           RX bytes:3513 (3.5 KB)  TX bytes:4935 (4.9 KB)&lt;br /&gt;
&lt;br /&gt;
*Now ping the target from your PC:&lt;br /&gt;
 harald@WS-HP4600-35:~/imx/oe/btmxc$ ping -c 10 192.168.1.2&lt;br /&gt;
 PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=2.00 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.334 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=0.374 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=0.339 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=5 ttl=64 time=0.345 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=6 ttl=64 time=0.331 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=7 ttl=64 time=0.337 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=8 ttl=64 time=0.337 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=9 ttl=64 time=0.339 ms&lt;br /&gt;
 64 bytes from 192.168.1.2: icmp_seq=10 ttl=64 time=0.335 ms&lt;br /&gt;
 &lt;br /&gt;
 --- 192.168.1.2 ping statistics ---&lt;br /&gt;
 10 packets transmitted, 10 received, 0% packet loss, time 9002ms&lt;br /&gt;
 rtt min/avg/max/mdev = 0.331/0.507/2.005/0.499 ms&lt;br /&gt;
&lt;br /&gt;
*and vice versa:&lt;br /&gt;
 root@btmxc27:~# ping -c 10 192.168.1.1&lt;br /&gt;
 PING 192.168.1.1 (192.168.1.1): 56 data bytes&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=0 ttl=64 time=1.475 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=1 ttl=64 time=1.319 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=2 ttl=64 time=1.243 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=3 ttl=64 time=1.312 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=4 ttl=64 time=1.223 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=5 ttl=64 time=1.242 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=6 ttl=64 time=1.287 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=7 ttl=64 time=1.403 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=8 ttl=64 time=1.254 ms&lt;br /&gt;
 64 bytes from 192.168.1.1: seq=9 ttl=64 time=1.287 ms&lt;br /&gt;
 &lt;br /&gt;
 --- 192.168.1.1 ping statistics ---&lt;br /&gt;
 10 packets transmitted, 10 packets received, 0% packet loss&lt;br /&gt;
 round-trip min/avg/max = 1.223/1.304/1.475 ms&lt;br /&gt;
 root@btmxc27:~# &lt;br /&gt;
&lt;br /&gt;
*Disconnect the cable. You have successfully tested USB-OTG functionality!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:i.MX27]]&lt;/div&gt;</summary>
		<author><name>en&gt;Peter</name></author>
	</entry>
</feed>