wiki-documents icon indicating copy to clipboard operation
wiki-documents copied to clipboard

A603 carrier board USB driver problem

Open boppabu opened this issue 11 months ago • 15 comments

Hi, trying to flash Jetpack on A603 Carrier Board with Jetson Orin Nano 8 GB devkit. Until now, tried all possible versions and exactly described as the tutorial, was hoping that the issue is fixed with 6.1 but that is still not the case. https://wiki.seeedstudio.com/reComputer_A603_Flash_System/ Also followed this post here: https://forum.seeedstudio.com/t/a603-carrier-board-issues-flashing-and-usb/276785/37

I am sure that the driver files are replaced properly in Linux_for_Tegra/ folder, used sudo. Jetpack is flashing correctly, HDMI works, it boots and I see desktop but can't use a keyboard and mouse as USB is not working. Host machine is ubuntu 22.04

Can you please support? Thanks in advance.

boppabu avatar Dec 30 '24 15:12 boppabu

👋 @boppabu

Thank you for raising an issue. We will investigate into the matter and get back to you as soon as possible. Please make sure you have given us as much context as possible.

github-actions[bot] avatar Dec 30 '24 15:12 github-actions[bot]

Thank you for your feedback. We have noted the issue you're experiencing, and the development team is actively investigating it. They will reach out to you with an update once progress is made. We appreciate your patience and understanding!

nfs0619 avatar Dec 31 '24 08:12 nfs0619

Hi there, I'm having what sounds like the same exact issue, and it seems like many other are as well. Any progress on this?

matt-nolan11 avatar Feb 06 '25 21:02 matt-nolan11

Same here

neoscell avatar Feb 07 '25 15:02 neoscell

Hello, we sincerely apologize for the inconvenience caused!
We are aware of the USB driver issue, and our development team is currently investigating it with urgency to find a solution as soon as possible. To help us better diagnose the problem, could you kindly provide the following information if possible?

  1. JetPack Version: The specific JetPack version you are using (e.g., JetPack 5.1.2, 6.0, etc.).
  2. Power Supply Information: The specifications of the power supply you are using (voltage, current, etc.).
  3. SSD Model: The model of the SSD you are using.
  4. Operation Logs: If you could provide your relevant operation logs, it would greatly assist in our analysis.

Thank you again for your patience and support! If you have any further findings or information, please feel free to let us know, and we will continue to follow up.

nfs0619 avatar Feb 08 '25 02:02 nfs0619

Jetson Orin Nano 8 GB Ubuntu 22.04.5

  1. Attempted with JetPack 6.0 & 6.1

  2. Power Supply from Seed Studio - GST90A19-P1M - 19V / 4.75A / 90W Max

  3. GamerKing 256 GB SSD

  4. Code used fo flashing:

tar xf Jetson_Linux_R36.4.0_aarch64.tbz2
sudo tar xpf Tegra_Linux_Sample-Root-Filesystem_R36.4.0_aarch64.tbz2 -C Linux_for_Tegra/rootfs/
tar xpf 603_jetpack6.1.tar.gz # Unzip the driver package
sudo cp -f -r 603_jetpack6.1/Linux_for_Tegra/* Linux_for_Tegra/ # Replace all files in the Linux_for_Tegra directory with the files from the driver package
cd Linux_for_Tegra/ # Navigate to the Linux_for_Tegra path to run the flashing commands
sudo ./apply_binaries.sh
sudo ./tools/l4t_flash_prerequisites.sh
sudo tools/l4t_create_default_user.sh -u {USERNAME} -p {PASSWORD} -a -n {HOSTNAME} --accept-license
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" --showlogs --network usb0 jetson-orin-nano-devkit internal

Note: I added '-f' to the cp command to force overwrite (even though sudo) as I had noticed the some files were not being replaced/overwritten with the original command. I have checked that files are now being overwritten, but I have not verified everyone.

Flash log attached. flash_1-2_0_20250203-220800.txt

After flashing I am able to successfully boot, but the USB A ports are not powered. The HDMI, Network, and mini USB all seem to be working.

neoscell avatar Feb 08 '25 04:02 neoscell

Jetson Orin Nano 8 GB Ubuntu 22.04.5

  1. Attempted with JetPack 6.0 & 6.1
  2. Power Supply from Seed Studio - GST90A19-P1M - 19V / 4.75A / 90W Max
  3. GamerKing 256 GB SSD
  4. Code used fo flashing:
tar xf Jetson_Linux_R36.4.0_aarch64.tbz2
sudo tar xpf Tegra_Linux_Sample-Root-Filesystem_R36.4.0_aarch64.tbz2 -C Linux_for_Tegra/rootfs/
tar xpf 603_jetpack6.1.tar.gz # Unzip the driver package
sudo cp -f -r 603_jetpack6.1/Linux_for_Tegra/* Linux_for_Tegra/ # Replace all files in the Linux_for_Tegra directory with the files from the driver package
cd Linux_for_Tegra/ # Navigate to the Linux_for_Tegra path to run the flashing commands
sudo ./apply_binaries.sh
sudo ./tools/l4t_flash_prerequisites.sh
sudo tools/l4t_create_default_user.sh -u {USERNAME} -p {PASSWORD} -a -n {HOSTNAME} --accept-license
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" --showlogs --network usb0 jetson-orin-nano-devkit internal

Note: I added '-f' to the cp command to force overwrite (even though sudo) as I had noticed the some files were not being replaced/overwritten with the original command. I have checked that files are now being overwritten, but I have not verified everyone.

Flash log attached. flash_1-2_0_20250203-220800.txt

After flashing I am able to successfully boot, but the USB A ports are not powered. The HDMI, Network, and mini USB all seem to be working.

Thank you for providing the detailed information and logs. We have verified the process using the code you provided, but we did not encounter the same issue, and the USB A ports are functioning as expected.

Image Image Image

We kindly suggest following our tutorial and reflashing the system again. If the problem persists, please feel free to share more details or logs, and we will be happy to assist you further in troubleshooting.

Thank you for your patience and support!

nfs0619 avatar Feb 08 '25 08:02 nfs0619

I wrote a script that checks the hash of the files provided in the driver zip package against the files in the "Linux_for_Tegra" folder.

For me, the wiki provided code changes in "sudo" change the privileges the files were created under and prevent proper copying. Recommend performing all operations as "sudo" to copy all driver files correctly.

Second, after applying the binaries the hashes no longer match between the original provided driver files and what is in the "Linux_for_Tegra" folders. So that script is modifying these files, right or wrong??? I attempted to copy the original drivers back and flash. Although successfully flashed, that still did not fix the issue. No power to USB.

Following this process I was able to verify that the driver files were present in the required "Linux_for_Tegra" folders with matching hashes prior to flashing. Still did not fix USB power.

neoscell avatar Feb 09 '25 17:02 neoscell

I fed the wiki page, this feed, and my flash log into ChatGPT and this is what it gave me. I won't be able to get to this for a little so putting here incase it helps someone troubleshoot before I get to it:

_ Your flashing log suggests that the process was mostly successful, but there are a few potential issues that could be related to your USB power problems.


Key Findings in Your Flashing Log

  1. Missing /dev/mmcblk0boot0

    • The log shows:
      blockdev: cannot open /dev/mmcblk0boot0: No such file or directory
      
    • This means the system couldn't find the eMMC boot partition, which might suggest a missing or incorrect device tree configuration.
  2. Backup GPT Corruption & GPT Fixing

    • The log states:
      Error: The backup GPT table is corrupt, but the primary appears OK, so that will be used.
      
    • The system attempted to fix it:
      Warning: Not all of the space available to /dev/nvme0n1 appears to be used, you can fix the GPT to use all of the space (an extra 380580528 blocks) or continue with the current setting?
      
    • GPT issues could impact device initialization, including USB controllers.
  3. QSPI Flashing Issues

    • Your board's QSPI storage (which contains the bootloader and low-level firmware) was completely rewritten:
      QSPI storage size: 67108864 bytes.
      
    • This suggests a fresh install of UEFI, boot firmware, and power management controllers, which might have impacted USB initialization.
  4. Device Tree (DTB) Used

    • Your log shows:
      --bldtb tegra234-p3768-0000+p3767-0005-nv.dtb
      
    • If this DTB does not correctly define USB power regulators, the ports may remain unpowered.

Possible Causes of USB Power Issues

1. USB Power Rails Not Enabled in the Device Tree

  • If the USB power regulators are disabled or not configured correctly, the ports may not get power.
  • Check your current DTB settings:
    dtc -I fs /proc/device-tree -O dts -o current.dts
    
  • Look for sections like "vbus-supply", "regulator-boot-on", or "usb@" settings.

2. Power Management Controller (PMC) Not Configuring USB Rails

  • The firmware update (QSPI flashing) may have changed power sequencing.
  • Check if USB power is enabled manually:
    sudo cat /sys/kernel/debug/usb/devices | grep -i power
    
  • Try forcing USB power on:
    echo on | sudo tee /sys/bus/usb/devices/*/power/control
    

3. Kernel USB Drivers Missing

  • If the new firmware has incorrect USB driver settings, the ports may not function.
  • Run:
    lsusb -t
    dmesg | grep -i usb
    
  • This will help check if USB controllers are detected.

4. Issue with UEFI USB Initialization

  • Since UEFI was updated, check if USB devices appear in the UEFI boot menu.
  • Try accessing UEFI by pressing ESC during boot and looking for USB options.

Potential Fixes

1. Reflash QSPI Bootloader (Safe Mode)

  • If the QSPI firmware is causing issues, try reflashing only QSPI:
    sudo ./flash.sh --no-systemimg jetson-xavier-nx-devkit qspi
    
  • Replace jetson-xavier-nx-devkit with the correct board config.

2. Use a Different Device Tree

  • If USB is not working due to DTB issues, try another compatible DTB:
    sudo dtc -I fs /proc/device-tree -O dts -o backup.dts
    
  • Compare with an older working version.

3. Re-enable USB in Kernel

  • If USB drivers are missing, try forcing them to reload:
    sudo modprobe -r xhci_hcd
    sudo modprobe xhci_hcd
    
  • If the module is missing, you may need to recompile the kernel with USB support.

Final Recommendation

Since this issue affects multiple users, consider reaching out on the Seeed Studio forums or NVIDIA forums to check if an updated DTB or firmware fix is available. If you're comfortable with debugging, focus on device tree USB power settings and QSPI bootloader configurations.

Would you like help checking DTB settings or kernel logs?_

neoscell avatar Feb 09 '25 19:02 neoscell

Hello,

Thank you for your feedback! Regarding the issue you're encountering, we have updated the Jetson Usage FAQ documentation. You can refer to the following link to resolve the issue with the USB port:

FAQs for Jetson Usage - Seeed Wiki

If the issue persists after following the steps in the document, please feel free to contact our technical support team by emailing [email protected], and we will be happy to assist you further.

Thank you for your support, and we hope the issue is resolved soon!

nfs0619 avatar Feb 11 '25 10:02 nfs0619

I am having the same issue. I have tried with sudo cp -f -r but its not working. (did all the commands the same as in the wiki) USB ports are not showing anything with lsusb once i boot.

Orin NX 16GB, JP 6.0, A603 board followed the wiki for flashing.

2 months ago i have done exactly the same procedure and it worked. Since one of the flashing steps is actually getting deb packages, could it be that some deb package got updated and is corrupting USB port somehow?

jodusan avatar Feb 12 '25 09:02 jodusan

Hi there!

We have recorded an operation video that might help you resolve the issue. You can check it out here: Video Link.

If the problem persists, feel free to contact our technical support team at [email protected]. We'll be happy to assist you further.

Best regards!

nfs0619 avatar Feb 27 '25 02:02 nfs0619

~~I am having the same issue Ubuntu 24 a host with Jetpack 6.2 and Jetson Orin Nano module.~~

Edit 1: Just kidding, the usb drivers weren't in the right directory when I attempted the overwrite step. ~~I would encourage you to update your docs to make this more clear.~~

Edit 2: In the spirit of solving my own problems, I opened a PR with changes to the docs on that page to maybe help other folks from getting stuck the way I did.

PR HERE

johnmckenna-snd avatar Mar 03 '25 20:03 johnmckenna-snd

@johnmckenna-snd Thank you for sharing! We will review your PR as soon as possible. We appreciate your improvements and contributions to the documentation!

nfs0619 avatar Mar 06 '25 01:03 nfs0619

JP6.2, flashed via instructions. USB-A not working at all

UPD: WHAT F ***** G I *** T DECIDED TO PUT PERIPHERAL DRIVERS SEPARATELY ON ONEDRIVE GUYS?! WHAT THE HELL IS WRONG WITH YOU?!

IGR2014 avatar Mar 20 '25 11:03 IGR2014