VAR-SOM-MX7 USB OTG: Difference between revisions

From Variscite Wiki
No edit summary
Line 24: Line 24:
== As peripheral ==
== As peripheral ==
In order to use the board as a peripheral, an appropriate module needs to be loaded.<br>
In order to use the board as a peripheral, an appropriate module needs to be loaded.<br>
For example, there is an Ethernet gadget module called g_ether, and a mass storage gadget called g_mass_storage.<br>
For example, there is an Ethernet gadget module called g_ether, a mass storage gadget called g_mass_storage, a serial gadget called g_serial, etc.<br>
<br>
<br>
Example using the g_mass_storage module to expose the BOOT partition on our recovery SD card to a PC:<br>
Example using the g_mass_storage module to expose the BOOT partition on our recovery SD card to a PC:<br>

Revision as of 10:31, 18 October 2016

VAR-SOM-MX7 - USB OTG

Configuring the USB1 port under Linux

By default, the USB1 port is configured as host in the device tree, and a USB type-A receptacle is assembled on the VAR-MX7CustomBoard.
To use it as OTG or peripheral you need to change the value of the dr_mode property, under the usbotg1 node, in the imx7d-var-som.dtsi device tree, and assemble a USB Micro-AB receptacle at J27 on the bottom of the VAR-MX7CustomBoard.
dr_mode: One of "host", "peripheral" or "otg". Defaults to "otg"

For example:

 &usbotg1 {
        vbus-supply = <&reg_usb_otg1_vbus>;
-       dr_mode = "host";
+       dr_mode = "otg";
        status = "okay";
 };
  • Continue following the Build Linux from source code guide to build the device trees only and to copy them to your SD card.

Using the USB1 port under Linux

As host (default)

USB host

As peripheral

In order to use the board as a peripheral, an appropriate module needs to be loaded.
For example, there is an Ethernet gadget module called g_ether, a mass storage gadget called g_mass_storage, a serial gadget called g_serial, etc.

Example using the g_mass_storage module to expose the BOOT partition on our recovery SD card to a PC:
Connect a micro-A plug to Standard-A plug cable between the board and a PC, and run the following on the board:

# umount /dev/mmcblk0p1
# modprobe g_mass_storage file=/dev/mmcblk0p1

The partition should be loaded on the PC as a mass storage device.

As OTG

With OTG, the board can be either a host, or a peripheral.
In order to use it as a host and connect a peripheral (e.g. a USB mouse) to it, an OTG cable is needed (a cable with a micro-A plug on one end and a Standard-A receptacle on the other).
In order to use it as a peripheral and connect it to a PC, for example, a cable with a micro-A plug on one end and a Standard-A plug on the other is needed.