USB 2.0 error can’t set config #1, error -71
Issue Overview
The issue discussed involves a USB 2.0 configuration error on the Nvidia Jetson Orin Nano Dev board. Users are experiencing the specific error message: "can’t set config #1, error -71" when attempting to configure a USB hub (USB2534) connected to their custom carrier board. This problem arises during the boot-up process, particularly when the system tries to enumerate the USB hub.
Symptoms
- The device tree configuration appears correct, but the hub fails to configure.
- The dmesg output indicates successful detection of the USB device but fails at configuration.
- The system logs show entries indicating that Linux recognizes the hub but cannot set its configuration.
Context
- The issue occurs during boot-up and is consistent across multiple attempts.
- The hardware setup includes a self-powered USB hub that does not require VBUS from the Nvidia module.
Impact
This problem significantly affects user experience by preventing the use of connected USB devices, thereby limiting functionality and performance of applications reliant on USB connectivity.
Possible Causes
- Hardware Design Problems: There may be issues with the custom carrier board design that affect USB communication.
- Missing Firmware Drivers: The error could stem from missing or incompatible firmware drivers necessary for proper USB operation.
- Device Tree Configuration Errors: Incorrect settings in the device tree could lead to improper recognition and configuration of the USB hub.
- Timing Issues: There may be timing discrepancies between the USB driver and the connected devices, causing configuration failures.
- Power Supply Issues: If the power supply is insufficient or unstable, it could lead to communication errors with USB devices.
Troubleshooting Steps, Solutions & Fixes
Step-by-Step Instructions
-
Verify Device Tree Configuration:
- Ensure that all necessary properties for the USB hub are correctly defined in the device tree.
- Check for missing bits in configuration registers (e.g., EN_FLEX_MODE) as noted by other users.
-
Check dmesg Logs:
- Use
dmesg | grep usb
to filter logs related to USB devices and identify any additional errors or warnings.
- Use
-
Inspect Power Supply:
- Confirm that the power supply to the USB hub is stable and meets required specifications.
-
Test with Different Hardware Configurations:
- If possible, test with another USB hub or different ports on the Orin Nano to isolate whether the issue is hardware-related.
-
Update Firmware and Drivers:
- Ensure that all firmware and driver updates are applied. Check Nvidia’s official documentation for any recent updates related to USB handling.
-
Reconfigure Device Tree:
- Adjust device tree entries based on feedback from other users who resolved similar issues. For instance, ensure that all required properties are set correctly.
-
Use External USB Hub:
- As a workaround, consider using an external powered USB hub which has shown success in similar situations according to user reports.
Recommended Fix
A user reported success by enabling a specific bit (EN_FLEX_MODE) in the USB Hub register, which allowed for proper enumeration of devices connected through the NVIDIA Orin Nano. This fix should be prioritized if similar configurations are present in your setup.
Best Practices for Future Prevention
- Regularly check for firmware updates from Nvidia.
- Maintain documentation of your device tree configurations for easy reference during troubleshooting.
- Consider implementing logging mechanisms to capture errors early in boot processes for quicker diagnosis.
Relevant Commands
To gather system information regarding USB devices, you can use:
dmesg | grep usb
lsusb
usb-devices
Unresolved Aspects
Further investigation may be needed into specific hardware compatibility issues or deeper firmware conflicts that could not be addressed through standard troubleshooting steps.
This document consolidates insights from various users facing similar issues with their Nvidia Jetson Orin Nano setups and provides actionable steps for resolution.