android_kernel_xiaomi_sm8350/drivers/pci
Rafael J. Wysocki 1ae861e652 PCI/PM: Use per-device D3 delays
It turns out that some PCI devices require extra delays when changing
power state from D3 to D0 (and the other way around).  Although this
is against the PCI specification, we can handle it quite easily by
allowing drivers to define arbitrary D3 delays for devices known to
require extra time for switching power states.

Introduce additional field d3_delay in struct pci_dev and use it to
store the value of the device's D0->D3 delay, in miliseconds.  Make
the PCI PM core code use the per-device d3_delay unless
pci_pm_d3_delay is greater (in which case the latter is used).
[This also allows the driver to specify d3_delay shorter than the
 10 ms required by the PCI standard if the device is known to be able
 to handle that.]

Make the sky2 driver set d3_delay to 150 for devices handled by it.

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=14730 which is a
listed regression from 2.6.30.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-04 15:41:47 -08:00
..
hotplug PCI: change PCI nomenclature in drivers/pci/ (comment changes) 2009-12-16 13:37:53 -08:00
pcie PCI: AER: fix aer inject result in kernel oops 2010-01-04 08:31:46 -08:00
.gitignore
access.c
bus.c
dmar.c Merge git://git.infradead.org/iommu-2.6 2009-12-16 10:11:38 -08:00
hotplug-pci.c
hotplug.c
htirq.c
intel-iommu.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-12-30 13:13:24 -08:00
intr_remapping.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-12-30 13:13:24 -08:00
intr_remapping.h intr-remap: generic support for remapping HPET MSIs 2009-08-27 23:33:20 +02:00
ioapic.c PCI hotplug: move IOAPIC support from acpiphp to ioapic driver 2009-11-04 13:06:39 -08:00
iov.c PCI: use pci_is_pcie() in pci core 2009-11-24 15:25:16 -08:00
iova.c intel-iommu: Remove superfluous iova_alloc_lock from IOVA code 2009-07-15 08:17:02 +01:00
irq.c
Kconfig PCI: remove pci_find_slot from PCI_LEGACY config description 2009-11-04 13:06:42 -08:00
legacy.c PCI: disable pci_find_device warnings when deprecated pci functions are enabled 2009-09-09 13:29:25 -07:00
Makefile PCI hotplug: move IOAPIC support from acpiphp to ioapic driver 2009-11-04 13:06:39 -08:00
msi.c PCI MSI: Style cleanups 2009-09-09 13:29:35 -07:00
msi.h
pci-acpi.c PCI/PM: Propagate wake-up enable for PCIe devices too 2009-12-16 13:37:49 -08:00
pci-driver.c Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-09-16 07:49:54 -07:00
pci-stub.c PCI: pci-stub: add pci_stub.ids parameter 2009-09-09 13:44:34 -07:00
pci-sysfs.c PCI: Check the node argument passed to cpumask_of_node 2010-01-04 15:10:56 -08:00
pci.c PCI/PM: Use per-device D3 delays 2010-01-04 15:41:47 -08:00
pci.h PCI: Fix build if quirks are not enabled 2009-12-31 12:00:45 -08:00
probe.c PCI: add pci_request_acs 2009-12-04 16:19:24 -08:00
proc.c
quirks.c pci: avoid compiler warning in quirks.c 2009-12-31 16:44:43 -08:00
remove.c
rom.c
search.c PCI: change PCI nomenclature in drivers/pci/ (comment changes) 2009-12-16 13:37:53 -08:00
setup-bus.c PCI: Always set prefetchable base/limit upper32 registers 2009-12-04 15:52:43 -08:00
setup-irq.c
setup-res.c PCI: improve discovery/configuration messages 2009-11-04 13:06:44 -08:00
slot.c
syscall.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00