linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* PCI quirks not handled and config space differences on resume from S3
@ 2005-08-16 12:43 Carl-Daniel Hailfinger
  2005-08-16 15:37 ` [linux-usb-devel] " Alan Stern
  0 siblings, 1 reply; 4+ messages in thread
From: Carl-Daniel Hailfinger @ 2005-08-16 12:43 UTC (permalink / raw)
  To: acpi-devel; +Cc: Linux Kernel Mailing List, linux-ide, linux-usb-devel

[-- Attachment #1: Type: text/plain, Size: 3371 bytes --]

Hi,

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

Below is a diff between "lspci -vvvxxx" before and after resume
for my SMBus device which only gets enabled by PCI quirk handling.

-0000:00:1f.3 SMBus: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)
-       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-
-       Interrupt: pin B routed to IRQ 0
-       Region 4: I/O ports at 1100 [size=32]
-00: 86 80 c3 24 01 00 80 02 03 00 05 0c 00 00 00 00
-10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-20: 01 11 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 00 02 00 00
-40: 01 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: 00 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 00 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
-e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
+0000:00:1f.3 Class ffff: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev ff) (prog-if ff)
+       !!! Unknown header type 7f
+00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

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?


Regards,
Carl-Daniel
-- 
http://www.hailfinger.org/

[-- Attachment #2: lspcidiffs.txt --]
[-- Type: text/plain, Size: 14237 bytes --]

--- lspci_beforeS3	2005-08-16 13:23:31.000000000 +0200
+++ lspci_afterS3	2005-08-16 13:23:31.000000000 +0200
@@ -1,353 +1,349 @@
 0000:00:00.0 Host bridge: Intel Corp. 82855PM Processor to I/O Controller (rev 21)
 	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=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
 	Latency: 0
 	Region 0: Memory at e0000000 (32-bit, prefetchable)
 	Capabilities: [e4] #09 [4104]
 	Capabilities: [a0] AGP version 2.0
 		Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3- Rate=x1,x2,x4
-		Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit- FW- Rate=x4
+		Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit- FW- Rate=<none>
 00: 86 80 40 33 06 01 90 20 21 00 00 06 00 00 00 00
 10: 08 00 00 e0 00 00 00 00 00 00 00 00 00 00 00 00
 20: 00 00 00 00 00 00 00 00 00 00 00 00 4d 14 0c c0
 30: 00 00 00 00 e4 00 00 00 00 00 00 00 00 00 00 00
 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 50: 00 02 00 00 00 00 00 00 00 00 00 00 00 27 00 00
 60: 04 08 0c 10 00 00 00 00 00 00 00 00 00 00 00 00
 70: 02 02 00 00 00 00 00 00 00 00 02 2d 71 32 40 30
 80: 71 00 80 05 00 00 00 00 00 10 01 00 00 00 00 00
-90: 10 11 11 00 01 13 11 00 41 19 00 00 00 0a 3d 00
-a0: 02 00 20 00 17 02 00 1f 04 00 00 00 00 00 00 00
+90: 10 11 11 00 01 13 11 00 41 19 00 00 00 1a 3d 00
+a0: 02 00 20 00 17 02 00 1f 00 00 00 00 00 00 00 00
 b0: 00 00 00 00 00 00 00 00 00 00 e0 1b 20 10 00 00
 c0: 44 40 50 11 00 20 05 06 00 00 00 00 00 00 00 00
 d0: 02 28 00 0e 0b 00 00 30 00 00 31 b5 00 00 02 00
 e0: 00 00 00 00 09 a0 04 41 00 00 00 00 00 00 00 00
 f0: 00 00 01 00 74 f8 20 80 38 0f 21 00 04 00 00 00
 
 0000:00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 21) (prog-if 00 [Normal decode])
 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
 	Status: Cap- 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
 	Latency: 96
 	Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
 	I/O behind bridge: 00003000-00003fff
 	Memory behind bridge: d0100000-d01fffff
 	Prefetchable memory behind bridge: d8000000-dfffffff
 	Expansion ROM at 00003000 [disabled] [size=4K]
 	BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-
 00: 86 80 41 33 07 01 a0 00 21 00 04 06 00 60 01 00
-10: 00 00 00 00 00 00 00 00 00 01 01 40 30 30 a0 22
+10: 00 00 00 00 00 00 00 00 00 01 01 40 30 30 a0 02
 20: 10 d0 10 d0 00 d8 f0 df 00 00 00 00 00 00 00 00
 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0c 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: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+60: 00 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 00 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 
 0000:00:1d.0 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
 
 0000:00:1d.1 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (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 B routed to IRQ 11
 	Region 4: I/O ports at 1820 [size=32]
 00: 86 80 c4 24 05 00 80 02 03 00 03 0c 00 00 00 00
 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 20: 21 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 0b 02 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
 
 0000:00:1d.2 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (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 C routed to IRQ 5
 	Region 4: I/O ports at 1840 [size=32]
 00: 86 80 c7 24 05 00 80 02 03 00 03 0c 00 00 00 00
 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 20: 41 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 03 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
 
 0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 83) (prog-if 00 [Normal decode])
 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
 	Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR+
 	Latency: 0
 	Bus: primary=00, secondary=02, subordinate=0a, sec-latency=64
 	I/O behind bridge: 00004000-00004fff
 	Memory behind bridge: d0200000-d02fffff
 	Prefetchable memory behind bridge: 20000000-23ffffff
 	Expansion ROM at 00004000 [disabled] [size=4K]
 	BridgeCtl: Parity- SERR- NoISA+ VGA- MAbort- >Reset- FastB2B-
 00: 86 80 48 24 07 01 80 80 83 00 04 06 00 00 01 00
-10: 00 00 00 00 00 00 00 00 00 02 0a 40 40 40 80 02
+10: 00 00 00 00 00 00 00 00 00 02 0a 40 40 40 80 22
 20: 20 d0 20 d0 00 20 f0 23 00 00 00 00 00 00 00 00
 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00
 40: 02 28 20 00 00 00 00 00 00 00 00 00 00 00 00 00
 50: 02 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 70: 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-80: 00 00 23 00 00 00 00 00 00 00 00 00 00 00 00 00
+80: 00 00 21 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: 10 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
 b0: 01 00 02 00 00 00 c0 00 00 00 00 00 00 00 00 00
 c0: 00 00 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 30 48
 
 0000:00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface Controller (rev 03)
 	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
 00: 86 80 cc 24 0f 00 80 02 03 00 01 06 00 00 80 00
 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 40: 01 10 00 00 10 00 00 00 00 00 00 00 00 00 00 00
 50: 00 00 00 00 00 00 00 00 81 11 00 00 10 00 00 00
 60: 05 05 05 0b 90 00 00 00 80 80 80 0b 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: ff fc 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 a0: 20 02 00 00 01 00 00 00 0d 00 00 00 00 00 00 00
-b0: 00 00 00 00 00 00 00 00 00 80 81 0a 00 00 00 00
+b0: 00 00 00 00 00 00 00 00 00 00 81 0a 00 00 00 00
 c0: 00 00 00 00 80 00 00 fe 00 00 00 08 00 70 00 00
 d0: 06 28 00 00 02 cf 00 00 04 00 00 00 00 00 00 00
 e0: 10 00 00 ff 00 00 00 08 33 22 11 00 00 00 67 45
-f0: 0f 00 01 00 00 00 00 00 60 0f 03 00 00 00 80 00
+f0: 0f 00 09 00 00 00 00 00 60 0f 03 00 00 00 81 00
 
 0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller (rev 03) (prog-if 8a [Master SecP PriP])
 	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 0: I/O ports at <unassigned>
 	Region 1: I/O ports at <unassigned>
 	Region 2: I/O ports at <unassigned>
 	Region 3: I/O ports at <unassigned>
 	Region 4: I/O ports at 1860 [size=16]
 	Region 5: Memory at 24000000 (32-bit, non-prefetchable) [size=1K]
 00: 86 80 ca 24 07 00 80 02 03 8a 01 01 00 00 00 00
 10: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00
 20: 61 18 00 00 00 00 00 24 00 00 00 00 4d 14 0c c0
 30: 00 00 00 00 00 00 00 00 00 00 00 00 ff 01 00 00
-40: 07 a3 07 a3 00 00 00 00 05 00 01 02 00 00 00 00
-50: 00 00 00 00 11 14 00 00 00 00 00 00 00 00 00 00
+40: 07 a3 77 a3 00 00 00 00 0d 00 01 11 00 00 00 00
+50: 00 00 00 00 dd d4 00 00 00 00 00 00 00 00 00 00
 60: 08 00 00 00 00 00 00 00 08 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 00 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
 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
 
-0000:00:1f.3 SMBus: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)
-	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-
-	Interrupt: pin B routed to IRQ 0
-	Region 4: I/O ports at 1100 [size=32]
-00: 86 80 c3 24 01 00 80 02 03 00 05 0c 00 00 00 00
-10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-20: 01 11 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 00 02 00 00
-40: 01 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: 00 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 00 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
-e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-f0: 00 00 00 00 00 00 00 00 60 0f 00 00 00 00 00 00
+0000:00:1f.3 Class ffff: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev ff) (prog-if ff)
+	!!! Unknown header type 7f
+00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-usb-devel] PCI quirks not handled and config space differences on resume from S3
  2005-08-16 12:43 PCI quirks not handled and config space differences on resume from S3 Carl-Daniel Hailfinger
@ 2005-08-16 15:37 ` Alan Stern
  2005-08-16 15:42   ` Erik Slagter
  2005-08-16 15:44   ` Carl-Daniel Hailfinger
  0 siblings, 2 replies; 4+ messages in thread
From: Alan Stern @ 2005-08-16 15:37 UTC (permalink / raw)
  To: Carl-Daniel Hailfinger
  Cc: acpi-devel, Linux Kernel Mailing List, linux-ide, linux-usb-devel

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


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-usb-devel] PCI quirks not handled and config space differences on resume from S3
  2005-08-16 15:37 ` [linux-usb-devel] " Alan Stern
@ 2005-08-16 15:42   ` Erik Slagter
  2005-08-16 15:44   ` Carl-Daniel Hailfinger
  1 sibling, 0 replies; 4+ messages in thread
From: Erik Slagter @ 2005-08-16 15:42 UTC (permalink / raw)
  To: Alan Stern
  Cc: Carl-Daniel Hailfinger, acpi-devel, Linux Kernel Mailing List,
	linux-ide, linux-usb-devel

[-- Attachment #1: Type: text/plain, Size: 450 bytes --]

On Tue, 2005-08-16 at 11:37 -0400, Alan Stern wrote:
> > 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.

Apparently something is sort of wrong though, because I need to rmmod
uhci_hcd and hci_usb before suspending, otherwise nasty things happen.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-usb-devel] PCI quirks not handled and config space differences on resume from S3
  2005-08-16 15:37 ` [linux-usb-devel] " Alan Stern
  2005-08-16 15:42   ` Erik Slagter
@ 2005-08-16 15:44   ` Carl-Daniel Hailfinger
  1 sibling, 0 replies; 4+ messages in thread
From: Carl-Daniel Hailfinger @ 2005-08-16 15:44 UTC (permalink / raw)
  To: Alan Stern
  Cc: acpi-devel, Linux Kernel Mailing List, linux-ide, linux-usb-devel

Alan Stern schrieb:
> On Tue, 16 Aug 2005, Carl-Daniel Hailfinger wrote:
> 
> 
>>Hi,
>>[...]
>>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:
>>- uhci_hcd (USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI 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.
> 
>> [lspci dump]
> 
> 
> 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.

Thanks for the information and sorry for bothering you.

> Alan Stern

Regards,
Carl-Daniel
-- 
http://www.hailfinger.org/

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-08-16 15:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-08-16 12:43 PCI quirks not handled and config space differences on resume from S3 Carl-Daniel Hailfinger
2005-08-16 15:37 ` [linux-usb-devel] " Alan Stern
2005-08-16 15:42   ` Erik Slagter
2005-08-16 15:44   ` Carl-Daniel Hailfinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).