Re: xhci: suspend/resume issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 11, 2010 at 05:24:26PM +0800, Xu, Andiry wrote:
> From what I can tell, it seems the port status is wrong after resume. 
> 
> xhci_hcd 0000:04:00.0: get port status, actual port 1 status  = 0x280
> xhci_hcd 0000:04:00.0: Get port status returned 0x100
> usb 6-2: USB disconnect, address 3
> 
> 0x280 means the port is disabled. For USB3 port, it should automatically
> transition to Enabled state. As the port is disabled, the host downgrade
> it to USB2 port (port 3), and the following initialization fails.
> Perhaps core driver disable the port somewhere.
> 
> One more thing: you are doing system suspend, but the xhci_resume()
> re-initialize the host controller, which means your xHC failed to
> restore state (STS_SRE is set) during resume. Perhaps it's a HW/BIOS
> issue of your platform, normally the restore process should succeed.
> I've encountered similar issue when I was using old BIOS.

I upgraded my BIOS, well relatively speaking 2005 -> 2006. :-)  It did not
change the behaviour.  I uploaded the dmesg log to:

http://people.redhat.com/dzickus/logs/dmesg2.log

in case you wanted to see.

I'll try and look for another machine to plug my pci-e card into to see if
I get better luck.

Thanks,
Don

> 
> Thanks & Best regards,
> Andiry
>  
> 
> > -----Original Message-----
> > From: Don Zickus [mailto:dzickus@xxxxxxxxxx]
> > Sent: Thursday, November 11, 2010 3:54 AM
> > To: Sarah Sharp
> > Cc: Xu, Andiry; linux-usb@xxxxxxxxxxxxxxx
> > Subject: Re: xhci: suspend/resume issues
> > 
> > On Tue, Nov 09, 2010 at 01:54:15PM -0800, Sarah Sharp wrote:
> > 
> > Hi Sarah,
> > 
> > Thanks for the quick response!
> > 
> > > > scsi 4:0:0:0: Direct-Access     BUFFALO  External HDD     0100 PQ:
> 0
> > ANSI: 5
> > > > sd 4:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/931
> GiB)
> > > ...
> > > > EXT4-fs (sdb2): recovery complete
> > > > EXT4-fs (sdb2): mounted filesystem with ordered data mode. Opts:
> (null)
> > > > SELinux: initialized (dev sdb2, type ext4), uses xattr
> > > > SELinux: initialized (dev sdb1, type vfat), uses genfs_contexts
> > >
> > > Your device is very unhappy after this point.  Perhaps because of
> > > SELinux?  Some process is doing *something* with the hard drive that
> the
> > > device doesn't like, even though you say it's not mounted.  I've
> never
> > > tried enabling SELinux with a USB 3.0 hard drive, so it's possible
> the
> > > device doesn't like some SCSI command SELinux issues.
> > 
> > Ok, I turned SELinux off.  It did not seem to make a difference.
> > 
> > >
> > > > xhci_hcd 0000:04:00.0: Can't reset device (slot ID 1) in
> > enabled/disabled state
> > > > xhci_hcd 0000:04:00.0: Not freeing device rings.
> > > > usb 6-4: new high speed USB device using xhci_hcd and address 4
> > > > xhci_hcd 0000:04:00.0: WARN: transfer error on endpoint
> > > > xhci_hcd 0000:04:00.0: WARN: transfer error on endpoint
> > > > xhci_hcd 0000:04:00.0: WARN: transfer error on endpoint
> > > > usb 6-4: device descriptor read/8, error -71
> > >
> > > And then there's bus noise or the device spewing bad data.
> > >
> > > So, first step is to use the same kernel with more xHCI debugging,
> so I
> > > can see what's up with the device being reset right before the
> suspend.
> > > Then once that's fixed, you can see if turning off SELinux causes
> the
> > > issue to go away.
> > 
> > The log was over 2MB in size, so I won't post it here.  I also didn't
> know
> > what to cut out for posting, so I stuck it here:
> > 
> > http://people.redhat.com/dzickus/logs/dmesg.log
> > 
> > Let me know if you need more info.
> > 
> > Cheers,
> > Don
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux