Re: [linux-usb-devel] PCI quirks not handled and config space differences on resume from S3

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

 



On Tue, 16 Aug 2005, Carl-Daniel Hailfinger wrote:

> Hi,
> 
> it seems that PCI quirks are not handled on resume which results
> in all kinds of strange effects, like disappeared PCI devices.

> Besides that, a number of drivers do not restore the pci config
> space of their associated devices properly on resume from S3.
> 
> These drivers (and associated devices) are:
> - intel_agp (Host bridge: Intel Corp. 82855PM Processor to I/O Controller)
> - ? (PCI bridge: Intel Corp. 82855PM Processor to AGP Controller)
> - uhci_hcd (USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller)
> - ? (PCI bridge: Intel Corp. 82801 PCI Bridge)
> - ? (ISA bridge: Intel Corp. 82801DBM LPC Interface Controller)
> - piix_ide (IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller)
> 
> Diff between "lspci -vvvxxx" before and after resume for all
> problematic devices on my machine is attached.
> 
> Are there any patches I can try?

The uhci-hcd driver _does_ restore the config space for its devices 
properly.


> USB UHCI Controller #1 (rev 03) (prog-if 00 [UHCI])
>         Subsystem: Samsung Electronics Co Ltd: Unknown device c00c
>         Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-Stepping- SERR- FastB2B-
>         Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-<TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin A routed to IRQ 5
>         Region 4: I/O ports at 1800 [size=32]
>  00: 86 80 c2 24 05 00 80 02 03 00 03 0c 00 00 80 00
>  10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  20: 01 18 00 00 00 00 00 00 00 00 00 00 4d 14 0c c0
>  30: 00 00 00 00 00 00 00 00 00 00 00 00 05 01 00 00
>  40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  60: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> -c0: 00 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> +c0: 00 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>  d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Just because the before and after values are different doesn't mean 
anything is wrong.  Those particular bits are set by the hardware in 
response to various events.  They are used only by the BIOS, to provide 
USB keyboard and mouse services.  They don't affect the device's function 
or the Linux driver at all.

Alan Stern

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux