PCI/PM: Rename pci_dev.d3_delay to d3hot_delay
PCI devices support two variants of the D3 power state: D3hot (main power present) D3cold (main power removed). Previously struct pci_dev contained: unsigned int d3_delay; /* D3->D0 transition time in ms */ unsigned int d3cold_delay; /* D3cold->D0 transition time in ms */ "d3_delay" refers specifically to the D3hot state. Rename it to "d3hot_delay" to avoid ambiguity and align with the ACPI "_DSM for Specifying Device Readiness Durations" in the PCI Firmware spec r3.2, sec 4.6.9. There is no change to the functionality. Link: https://lore.kernel.org/r/20200730210848.1578826-1-kw@linux.com Signed-off-by: Krzysztof Wilczyński <kw@linux.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:

committed by
Bjorn Helgaas

parent
a5d02e901e
commit
3789af9a13
@@ -49,7 +49,7 @@ EXPORT_SYMBOL(isa_dma_bridge_buggy);
|
||||
int pci_pci_problems;
|
||||
EXPORT_SYMBOL(pci_pci_problems);
|
||||
|
||||
unsigned int pci_pm_d3_delay;
|
||||
unsigned int pci_pm_d3hot_delay;
|
||||
|
||||
static void pci_pme_list_scan(struct work_struct *work);
|
||||
|
||||
@@ -66,10 +66,10 @@ struct pci_pme_device {
|
||||
|
||||
static void pci_dev_d3_sleep(struct pci_dev *dev)
|
||||
{
|
||||
unsigned int delay = dev->d3_delay;
|
||||
unsigned int delay = dev->d3hot_delay;
|
||||
|
||||
if (delay < pci_pm_d3_delay)
|
||||
delay = pci_pm_d3_delay;
|
||||
if (delay < pci_pm_d3hot_delay)
|
||||
delay = pci_pm_d3hot_delay;
|
||||
|
||||
if (delay)
|
||||
msleep(delay);
|
||||
@@ -3013,7 +3013,7 @@ void pci_pm_init(struct pci_dev *dev)
|
||||
}
|
||||
|
||||
dev->pm_cap = pm;
|
||||
dev->d3_delay = PCI_PM_D3_WAIT;
|
||||
dev->d3hot_delay = PCI_PM_D3HOT_WAIT;
|
||||
dev->d3cold_delay = PCI_PM_D3COLD_WAIT;
|
||||
dev->bridge_d3 = pci_bridge_d3_possible(dev);
|
||||
dev->d3cold_allowed = true;
|
||||
@@ -3038,7 +3038,7 @@ void pci_pm_init(struct pci_dev *dev)
|
||||
(pmc & PCI_PM_CAP_PME_D0) ? " D0" : "",
|
||||
(pmc & PCI_PM_CAP_PME_D1) ? " D1" : "",
|
||||
(pmc & PCI_PM_CAP_PME_D2) ? " D2" : "",
|
||||
(pmc & PCI_PM_CAP_PME_D3) ? " D3hot" : "",
|
||||
(pmc & PCI_PM_CAP_PME_D3hot) ? " D3hot" : "",
|
||||
(pmc & PCI_PM_CAP_PME_D3cold) ? " D3cold" : "");
|
||||
dev->pme_support = pmc >> PCI_PM_CAP_PME_SHIFT;
|
||||
dev->pme_poll = true;
|
||||
@@ -4621,7 +4621,7 @@ static int pci_af_flr(struct pci_dev *dev, int probe)
|
||||
*
|
||||
* NOTE: This causes the caller to sleep for twice the device power transition
|
||||
* cooldown period, which for the D0->D3hot and D3hot->D0 transitions is 10 ms
|
||||
* by default (i.e. unless the @dev's d3_delay field has a different value).
|
||||
* by default (i.e. unless the @dev's d3hot_delay field has a different value).
|
||||
* Moreover, only devices in D0 can be reset by this function.
|
||||
*/
|
||||
static int pci_pm_reset(struct pci_dev *dev, int probe)
|
||||
|
Reference in New Issue
Block a user