7 Replies Latest reply on May 10, 2017 11:52 AM by Intel Corporation

    Joule OTG USB port not operating at SuperSpeed

    andypk

      I have a Joule board and am trying to get the board to act as a SuperSpeed USB-device.

      It works as high-speed, but never at SuperSpeed.

       

      I have tried the Linux corei7 OS that came already installed on the board. 

      I have tried Ubuntu desktop 16.04.

      Same results.

      I use the USB cable that came with the Joule to connect the Joule to a known good TestPC SuperSpeed USB Host port.

      I have tried flipping the Type C end of the cable. Still no SuperSpeed. Just high-speed.

       

      I use functionfs and a script to make the Joule board appear as a Mass Storage USB-device.

      This is the script for Linux intel-corei7-64.4.4.15, which came with the board:

       

      #!/bin/sh

       

      dd if=/dev/zero of=/dev/shm/file bs=1M count=1024

       

      mkdir -p /c

      mount -t configfs none /c

      insmod /lib/modules/4.4.15-yocto-standard/kernel/drivers/usb/gadget/libcomposite.ko

      mkdir /c/usb_gadget/g1

      chmod 666  /c/usb_gadget/g1/idVendor

      chmod 666  /c/usb_gadget/g1/idProduct

      echo 0x0957 > /c/usb_gadget/g1/idVendor

      echo 0x1111 > /c/usb_gadget/g1/idProduct

      mkdir /c/usb_gadget/g1/strings/0x409

      chmod 666 /c/usb_gadget/g1/strings/0x409/*

      echo 123456789012 > /c/usb_gadget/g1/strings/0x409/serialnumber

      echo "Bogus Corporation" > /c/usb_gadget/g1/strings/0x409/manufacturer

      echo "Joule" > /c/usb_gadget/g1/strings/0x409/product

      mkdir /c/usb_gadget/g1/functions/mass_storage.1

      mkdir /c/usb_gadget/g1/configs/b.1

      mkdir /c/usb_gadget/g1/configs/b.1/strings/0x409

      chmod 666 /c/usb_gadget/g1/configs/b.1/MaxPower

      chmod 666 /c/usb_gadget/g1/functions/mass_storage.1/lun.0/file

      echo 500 > /c/usb_gadget/g1/configs/b.1/MaxPower

      echo /dev/shm/file > /c/usb_gadget/g1/functions/mass_storage.1/lun.0/file

      sleep 1

      ln -s /c/usb_gadget/g1/functions/mass_storage.1  /c/usb_gadget/g1/configs/b.1/f1

      sleep 1

      chmod 666 /c/usb_gadget/g1/UDC

      echo dwc3.1.auto > /c/usb_gadget/g1/UDC