LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware > Linux - Embedded & Single-board computer
User Name
Password
Linux - Embedded & Single-board computer This forum is for the discussion of Linux on both embedded devices and single-board computers (such as the Raspberry Pi, BeagleBoard and PandaBoard). Discussions involving Arduino, plug computers and other micro-controller like devices are also welcome.

Notices


Reply
  Search this Thread
Old 08-28-2023, 01:23 AM   #1
smsujan19
LQ Newbie
 
Registered: Aug 2023
Posts: 1

Rep: Reputation: 0
Exclamation Usb device wont enumerate after booting kernel on a custom board : usb 1-1: device descriptor read/64, error -71


I used petalinux 2018.1 for my build

When i plug in my usb device I get the following errors:

usb 1-1: new high-speed USB device number 2 using xhci-hcd
usb 1-1: device descriptor read/64, error -71
usb 1-1: device descriptor read/64, error -71
usb 1-1: new high-speed USB device number 3 using xhci-hcd
usb 1-1: device descriptor read/64, error -71
usb 1-1: device descriptor read/64, error -71
usb 1-1: new high-speed USB device number 4 using xhci-hcd
usb 1-1: Device not responding to setup address.
usb 1-1: Device not responding to setup address.
usb 1-1: device not accepting address 4, error -71
usb 1-1: new high-speed USB device number 5 using xhci-hcd
usb 1-1: Device not responding to setup address.
usb 1-1: Device not responding to setup address.
usb 1-1: device not accepting address 5, error -71
usb usb1-port1: unable to enumerate USB device


NOTE:

But when I fatload image.ub from U-boot command line using the following commands :

Code:
usb start 
    fatload usb 0 0x20000000 image.ub
    bootm 0x20000000
and don't remove my usb after loading image.ub. It works properly upon boot & i am able to read/write to the device.

But after i disconnect and reconnect the usb device i get the same errors -71 as mentioned above.

From the following behavior, i noticed :

1) That the usb drivers have been loaded, otherwise the fatloading image.ub from u-boot wouldn't have been possible

2) The process of flashing image.ub is an interaction between the board and usb, which might have initialized something before kernel boots up. Hence the usb works after that.


I have configured the system-user.dtsi file with :
Code:
    /include/ "system-conf.dtsi"
    / {
    };
    &dwc3_0 { 
            dr_mode = "host";
            phy-names = "usb3-phy";
    };
Also enabled

Code:
xHCI HCD(3.0)
    USB Mass storage support 
    Designware USB3 
          DWC mode -> Dual Role mode
using petalinux-config -c kernel .
 
Old 08-29-2023, 11:04 AM   #2
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,339

Rep: Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331
Greets, V & welcome to LQ.

First of all, the system can address the same device in two ways.
  1. The original IBM PC addressed drive A: on sector 0 and started reading in order to boot. If you don't have uefi, it doesn't check or care, your system just reads and boots. That approach seems to read your usb.
  2. At any other time, it will mount it, have a dialogue with it, etc. Your drive will identify itself with it's usb id, and usb ids gives a one line description.
Here's one of my usb drives.
Code:
Bus 004 Device 002: ID 090c:2000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) Flash Disk
(0x)090c:2000 is the usb id. Error 71 is a protocol error. The 'unable to enumerate usb device' indicates the box can't get your usb device's usb id. That's bad, as these things go.

xhci_hcd is the module for usb-3.x, but it should step down to 2.x or 1.x.

Your most likely cause is a dud drive or port. Try another one of both. Run fsck on the partitions, and Try mounting it in a PC. Give us all relevant information. It could be voltage/current or a wide range of issues. What's the sbc? The drive? Which linux distro? The power supply? etc.

Last edited by business_kid; 08-29-2023 at 11:06 AM.
 
Old 08-31-2023, 04:53 AM   #3
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,339

Rep: Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331
Forgot to mention: If you made a partition on the usb and ran
Code:
dd if=<image> of=/dev/sdX1
your boot will fail. The system will puke on the partition table. Use
Code:
dd if=<image> of=/dev/sdX
with no partition number.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
USB 3.0 Dual-Role OTG device on non-HNP port unable to enumerate USB device gildbg Slackware 4 03-18-2020 02:05 AM
Unable to mount USB, Error: device descriptor read/64, error -71 shredder12 Linux - Hardware 2 02-16-2010 12:45 AM
USB Error: Device Descriptor read/64 error -71 ashraf.qadir Linux - Newbie 1 09-22-2009 08:41 AM
USB error - usb 2-4: device descriptor read/64, error -71 toni_uk Linux - Hardware 2 09-04-2008 09:05 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware > Linux - Embedded & Single-board computer

All times are GMT -5. The time now is 04:14 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration