Jetson-TK1 USB3 issue

Can anyone confirm that Jetson TK1 blue USB port runs as USB3?
See below. Detected as USB2 only :-(((

lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=tegra-ehci/1p, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=tegra-ehci/1p, 480M

uname -a
Linux tegra-ubuntu 3.10.24-g6a2d13a #1 SMP PREEMPT Fri Apr 18 15:56:45 PDT 2014 armv7l armv7l armv7l GNU/Linux


USB device mode is not supported. USB 3.0 is supported in this release, but is turned off by

To enable USB 3.0
Modify odmdata settings in jetson-tk1.conf.
Flash and boot the system.
The jetson-tk1.conf file includes information on correct odmdata settings for USB
3.0 and USB 2.0.

So conf file update/reflash fixed it, getting good USB3 speed now with HD video capture.

Hi dessat, you were faster finding the answer :D
Can you name the brand and model of the HD video capture device you are using?
Did you had to compile drivers or did it work out of the box?

I have the same problem.
I changed the file jetson-tk1.conf found on the Jetson in
I also executed in that directory.

I thought, this will update the flash. But it does not.

How do i really modify the flash?

I’m thinking parts of your description are missing. My reason for asking is that it sounds like and the L4T scripts were being run on the Jetson itself, which cannot work…but assuming you ran this on a separate host, the first thing required which many people miss is that everything has to be done as root or sudo, even unpacking files. The second “gotcha” hitting people is that for a full flash the script is hard wired to use /dev/loop0…if you are on a system which dynamically generates loop0, it’ll fail to create system.img. If you are on a system already using /dev/loop0, it’ll fail to create system.img. Then of course the mini-B USB cable has to be plugged into Jetson and the host, powering up with the recover button held down. Then you can flash.

One thing to note is that the ODMDATA setting may be only part of the USB 3 requirement, at least when running in recovery mode. Firmware may need to be added as well, which may or may not be present already. I don’t have any USB 3 hubs or devices, so I have not made this change personally.

More information on what you want to accomplish would help, e.g., if trying to upgrade all to L4T R19.3, or just kernel, or just USB 3.

I have the same problem. I changed the ODMDATA variable appropriately, did the apply_binaries, but still no USB3 after running ./ . I also added the -o 0x6209C000 argument to the flash command to hardwire it to take that ODMDATA value, still no luck. I wish nVidia had set it up as USB3 to begin with. I’m out of things to try at this point, any suggestions would be great. Maybe I can hardwire the u-boot kernel command line to what it should be for USB3 (if someone has USB3 working w/ u-boot).

I believe there is a requirement for firmware to be available in an initrd for USB3 at boot, but I have not set this up myself (I have no USB 3 to worry about). ODMDATA merely tells it to look for USB 3…which it can’t do unless actual firmware is there at the time it looks.

Thanks linuxdev! This is the undocumented “secret”, basically we have to find a usb3 driver and magically get it into the kernel (as it is not loaded as a module).

It took me a while to figure out that in addition to the firmware requirement, you also need to have usb_port_owner_info=2 in your kernel boot parameters.

Hello! I am trying to integrate a USB3.0 camera. Following the steps above, I am first trying to modify the odmdata; however, when I look for the jetson-tk1.conf, I find that Linux_for_Tegra folder is not under NVIDIA-INSTALLER. I then tried to run sudo ./ to extract the Tegra124_Linux_R19.2.0_armhf.tbz2, but no folder is created. What is wrong? Note that I am relatively new to Ubuntu. Thanks!