Open main menu

DAVE Developer's Wiki β

DESK-MX6UL-L/Peripherals/USB Host

< DESK-MX6UL-L
Revision as of 18:17, 27 February 2022 by U0026 (talk | contribs) (USB Host section update for DESK-MX6UL-L release)

History
Version Issue Date Notes
1.0.0 Jul 2021 First DESK release
3.0.0 Feb 2022 3.0.0 DESK release


Contents

Peripheral USB HostEdit

The USB Host port requires to configure the USB VBUS regulator and the gpio used for enabling the 5V USB power switch.

Device tree configurationEdit

Here below an example of device tree configuration used on standard DAVE's kit for the AXEL ULite SOM:

From imx6ul-axelulite-cb003a.dts:

        reg_usb_otg1_vbus: regulator@2 {
                compatible = "regulator-fixed";
                reg = <2>;
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_usb_otg1>;
                regulator-name = "usb_otg1_vbus";
                regulator-min-microvolt = <5000000>;
                regulator-max-microvolt = <5000000>;
                gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>;
                enable-active-high;
        };
...
...
&usbotg1 {
        vbus-supply = <&reg_usb_otg1_vbus>;
        disable-over-current;
        dr_mode = "host";
        status = "okay";
};
...
...
&iomuxc {
        pinctrl-0 = <&pinctrl_hog_gpios>;
        imx6ul-axelulite {
...
...
                pinctrl_usb_otg1: usbotg1grp {
                        fsl,pins = <
                                MX6UL_PAD_UART1_CTS_B__GPIO1_IO18       0x10b0          /* HOST PWR */
                                MX6UL_PAD_GPIO1_IO03__GPIO1_IO03        0x10b0          /* HOST OC */
                        >;
                };
};


Accessing the peripheralEdit

Linux messages at boot timeEdit

When a USB peripheral is inserted, in the following example a memory mass storage device, the kernel recognizes the device (i.e. xlass, vendor id, product id, etc.)

[   39.935600] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[   40.138049] usb 1-1: New USB device found, idVendor=0781, idProduct=5591, bcdDevice= 1.00
[   40.146476] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   40.153786] usb 1-1: Product:  SanDisk 3.2Gen1
[   40.165109] usb 1-1: Manufacturer:  USB
[   40.172245] usb 1-1: SerialNumber: 03017128082020175157
[   40.189949] usb-storage 1-1:1.0: USB Mass Storage device detected
[   40.209663] scsi host0: usb-storage 1-1:1.0
[   41.297685] scsi 0:0:0:0: Direct-Access      USB      SanDisk 3.2Gen1 1.00 PQ: 0 ANSI: 6
[   41.321918] sd 0:0:0:0: [sda] 30031872 512-byte logical blocks: (15.4 GB/14.3 GiB)
[   41.337048] sd 0:0:0:0: [sda] Write Protect is off
[   41.341891] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[   41.355746] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[   41.443001]  sda: sda1
[   41.464325] sd 0:0:0:0: [sda] Attached SCSI removable disk
[   43.344264] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)

Additional informationEdit

If the root file system configuration does not automatically mount the partition, it is possible to mount the device using the following command:

root@desk-mx6ul-axelulite:~# mkdir -p /mnt/usb
root@desk-mx6ul-axelulite:~# mount /dev/sda1 /mnt/usb/
root@desk-mx6ul-axelulite:~# ls -la /mnt/usb/
total 24
drwxr-xr-x 3 root root    4096 Feb 24 14:16 .
drwxr-xr-x 4 root root    4096 Feb 27 18:15 ..
drwx------ 2 root root   16384 Feb 24 14:16 lost+found
-rwxr-xr-x 1 root root 6881192 Feb 24 14:16 uImage