|
@@ -1,4 +1,4 @@
|
|
|
-From 7f1392f57f486b6da6d30aa1855182d8b0ee4554 Mon Sep 17 00:00:00 2001
|
|
|
+From 0486334746b9ca6affd92c974eace8aa960032bc Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Tue, 31 Jul 2018 07:50:37 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Differentiate between surprise and safe removal
|
|
@@ -197,7 +197,7 @@ index 5c58c22e0c08..18f83e554c73 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 9978388437255d9c087b4b90030357579716f08c Mon Sep 17 00:00:00 2001
|
|
|
+From ccb8bab5799aff9d8cd94de30341cc77785acf51 Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sun, 19 Aug 2018 16:29:00 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Drop unnecessary includes
|
|
@@ -336,7 +336,7 @@ index 18f83e554c73..c512b2ed85ed 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 9cf8ee7f0877de63a0ea43c29cbea58b17edb496 Mon Sep 17 00:00:00 2001
|
|
|
+From fc2cf7ca45c6e94e8a845cf23bcdf73ded3b451a Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sun, 19 Aug 2018 16:29:00 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Drop hotplug_slot_ops wrappers
|
|
@@ -549,7 +549,7 @@ index d4b7049cbc70..576362d0b1cd 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 3005f60c6f632592bf8b52ea8fd18d64a416e5b9 Mon Sep 17 00:00:00 2001
|
|
|
+From aa4d8f63fbbfd6e903f5f1b6c9b8938fb49be0fe Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sat, 8 Sep 2018 09:59:01 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Tolerate Presence Detect hardwired to zero
|
|
@@ -747,7 +747,7 @@ index 576362d0b1cd..7f4173d6771a 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 01716e9157f6cdab67529d0a68944ac5f6972ba2 Mon Sep 17 00:00:00 2001
|
|
|
+From 18231377b5f4ccac2a0adc0aadb7b79c30090d9a Mon Sep 17 00:00:00 2001
|
|
|
From: Patrick Talbert <ptalbert@redhat.com>
|
|
|
Date: Wed, 5 Sep 2018 09:12:53 +0200
|
|
|
Subject: [PATCH] PCI/ASPM: Do not initialize link state when aspm_disabled is
|
|
@@ -792,7 +792,7 @@ index cb474338f39d..18aa830e79e4 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 959ad298fe4c469ed82b77bb30f6e6895cb614fe Mon Sep 17 00:00:00 2001
|
|
|
+From a2564044fb837d7276e9ac26c6f4be0f910fe606 Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sun, 19 Aug 2018 16:29:00 +0200
|
|
|
Subject: [PATCH] PCI: Simplify disconnected marking
|
|
@@ -878,7 +878,7 @@ index 2c3b5bd59b18..dee5a7507403 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From f23ed7e62814c9c22bc07f0a0dfde6bcc7d85316 Mon Sep 17 00:00:00 2001
|
|
|
+From 345216bbf5af741739bc37700c9bc3bc60832910 Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Tue, 18 Sep 2018 21:46:17 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Unify controller and slot structs
|
|
@@ -2070,7 +2070,7 @@ index 8da87931bd45..b9c1396db6fe 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 79f0d98adaffdb7866d7d4ec6cb763e45cdd0f30 Mon Sep 17 00:00:00 2001
|
|
|
+From e6f20005f285c7ad15e030890c48d65bc38a4b38 Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sat, 8 Sep 2018 09:59:01 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Rename controller struct members for clarity
|
|
@@ -2377,7 +2377,7 @@ index 4a17d71e15d3..e4d6ec960630 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From a42ee42f7eaa6b84b0a3f8171e2c110e864a256e Mon Sep 17 00:00:00 2001
|
|
|
+From 70eaba3b48fb55e7f5b359b6bf98842e1322a965 Mon Sep 17 00:00:00 2001
|
|
|
From: Lukas Wunner <lukas@wunner.de>
|
|
|
Date: Sat, 8 Sep 2018 09:59:01 +0200
|
|
|
Subject: [PATCH] PCI: pciehp: Reshuffle controller struct for clarity
|
|
@@ -2508,7 +2508,7 @@ index 2499489158cc..df82a0335515 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 3ad6e826bbbb1f3aa3ab965715924e8463b2ae88 Mon Sep 17 00:00:00 2001
|
|
|
+From 139436ff3f31a4824a9961ef0919fb6639da6223 Mon Sep 17 00:00:00 2001
|
|
|
From: Keith Busch <keith.busch@intel.com>
|
|
|
Date: Thu, 20 Sep 2018 10:27:17 -0600
|
|
|
Subject: [PATCH] PCI: Make link active reporting detection generic
|
|
@@ -2608,10 +2608,10 @@ index e4d6ec960630..0693870a9e24 100644
|
|
|
/* Clear all remaining event bits in Slot Status register. */
|
|
|
pcie_capability_write_word(pdev, PCI_EXP_SLTSTA,
|
|
|
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
|
|
|
-index 9ebf32de8575..2d437c40f83b 100644
|
|
|
+index 3d59bbe4a5d5..07d4a00131bc 100644
|
|
|
--- a/drivers/pci/pci.c
|
|
|
+++ b/drivers/pci/pci.c
|
|
|
-@@ -4536,21 +4536,42 @@ bool pcie_wait_for_link(struct pci_dev *pdev, bool active)
|
|
|
+@@ -4526,21 +4526,42 @@ bool pcie_wait_for_link(struct pci_dev *pdev, bool active)
|
|
|
bool ret;
|
|
|
u16 lnk_status;
|
|
|
|
|
@@ -2679,7 +2679,7 @@ index 118b5bcae42e..87f8d8628d94 100644
|
|
|
{
|
|
|
struct device *dev = &dpc->dev->device;
|
|
|
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
|
|
|
-index 9a5b6a8e2502..6fc19c35582f 100644
|
|
|
+index 113b7bdf86dd..79ca1a28b991 100644
|
|
|
--- a/drivers/pci/probe.c
|
|
|
+++ b/drivers/pci/probe.c
|
|
|
@@ -769,6 +769,7 @@ static void pci_set_bus_speed(struct pci_bus *bus)
|
|
@@ -2705,7 +2705,7 @@ index ec6c48ecd7d5..74c8e9190fed 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 9c9950a2f451a6db00874761891dd8703720e122 Mon Sep 17 00:00:00 2001
|
|
|
+From c50fb35076f22f25ed8fec7745189d8705f711fc Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:53:53 -0500
|
|
|
Subject: [PATCH] PCI: Do not skip power-managed bridges in pci_enable_wake()
|
|
@@ -2733,10 +2733,10 @@ Patchset: surface-hotplug
|
|
|
1 file changed, 6 insertions(+), 3 deletions(-)
|
|
|
|
|
|
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
|
|
|
-index 2d437c40f83b..4a874e8fa1d5 100644
|
|
|
+index 07d4a00131bc..77ba4f65e18b 100644
|
|
|
--- a/drivers/pci/pci.c
|
|
|
+++ b/drivers/pci/pci.c
|
|
|
-@@ -2151,10 +2151,13 @@ static int __pci_enable_wake(struct pci_dev *dev, pci_power_t state, bool enable
|
|
|
+@@ -2141,10 +2141,13 @@ static int __pci_enable_wake(struct pci_dev *dev, pci_power_t state, bool enable
|
|
|
int ret = 0;
|
|
|
|
|
|
/*
|
|
@@ -2756,7 +2756,7 @@ index 2d437c40f83b..4a874e8fa1d5 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 026f13025b0cb5e02b34db45365202f4c50cc699 Mon Sep 17 00:00:00 2001
|
|
|
+From 9ff99b5d5c9b5c04fcdafdace5d7030d2b619cc7 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:38:19 -0500
|
|
|
Subject: [PATCH] PCI: pciehp: Disable hotplug interrupt during suspend
|
|
@@ -2870,7 +2870,7 @@ index 0693870a9e24..b5c7f5ef597a 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From ce5b8ae8fed74dc5f723b985dbb374939202d82d Mon Sep 17 00:00:00 2001
|
|
|
+From d6dfc22634bfbf27e1e316ca1df40077fd5a4d48 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:41:46 -0500
|
|
|
Subject: [PATCH] PCI: pciehp: Do not handle events if interrupts are masked
|
|
@@ -2912,7 +2912,7 @@ index b5c7f5ef597a..242b9f30210a 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From d7375f26df64148a5c07318ac6213321929efd94 Mon Sep 17 00:00:00 2001
|
|
|
+From 183e1412a3627a1912554ea8aaca28117c85fe25 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:41:47 -0500
|
|
|
Subject: [PATCH] PCI/portdrv: Resume upon exit from system suspend if left
|
|
@@ -2965,7 +2965,7 @@ index 23a5a0c2c3fe..5badf8a1ce0a 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From ae0dc7530b59afbaeb6ee0852626d675aaa6dbf7 Mon Sep 17 00:00:00 2001
|
|
|
+From a3162dc30caaea5b348efbeea2af507fa88b6592 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:41:48 -0500
|
|
|
Subject: [PATCH] PCI/portdrv: Add runtime PM hooks for port service drivers
|
|
@@ -3077,7 +3077,7 @@ index 5badf8a1ce0a..59d2567e2db2 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 0cc021f21a8631f41cba5fc60d23c45e469c9e01 Mon Sep 17 00:00:00 2001
|
|
|
+From 225f9fee393926543b28d41a2d19d49acd77f155 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:41:49 -0500
|
|
|
Subject: [PATCH] PCI: pciehp: Implement runtime PM callbacks
|
|
@@ -3134,7 +3134,7 @@ index 8e6e4ce869fb..e5de25ebc4cf 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 7acaae54f4a46413e14b0e9a661bf3dca7d05e53 Mon Sep 17 00:00:00 2001
|
|
|
+From 432488d67b691c3d4726e1a708a7aabb6b6bb052 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:57:05 -0500
|
|
|
Subject: [PATCH] ACPI / property: Allow multiple property compatible _DSD
|
|
@@ -3372,7 +3372,7 @@ index 51b4cf9f25da..130df1c8ed7d 100644
|
|
|
out_free:
|
|
|
ACPI_FREE(props);
|
|
|
diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
|
|
|
-index 4ad34c6803ad..721048243d6d 100644
|
|
|
+index b018909a4e46..ebe5245ed6c3 100644
|
|
|
--- a/drivers/gpio/gpiolib-acpi.c
|
|
|
+++ b/drivers/gpio/gpiolib-acpi.c
|
|
|
@@ -1300,7 +1300,7 @@ int acpi_gpio_count(struct device *dev, const char *con_id)
|
|
@@ -3429,7 +3429,7 @@ index 1a37748766b7..50a09003bb43 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 90f1a7399ec2115bf59363b56da838e2db0d4edb Mon Sep 17 00:00:00 2001
|
|
|
+From 11330347945d1855a457e4675699519794b8860f Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 27 Sep 2018 16:57:14 -0500
|
|
|
Subject: [PATCH] PCI / ACPI: Whitelist D3 for more PCIe hotplug ports
|
|
@@ -3544,7 +3544,7 @@ index 2c46f7dcd2f5..1516327a8459 100644
|
|
|
.set_state = acpi_pci_set_power_state,
|
|
|
.get_state = acpi_pci_get_power_state,
|
|
|
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
|
|
|
-index 4a874e8fa1d5..a60eb5780cc0 100644
|
|
|
+index 77ba4f65e18b..ab930e5994dd 100644
|
|
|
--- a/drivers/pci/pci.c
|
|
|
+++ b/drivers/pci/pci.c
|
|
|
@@ -793,6 +793,11 @@ static inline bool platform_pci_need_resume(struct pci_dev *dev)
|
|
@@ -3559,7 +3559,7 @@ index 4a874e8fa1d5..a60eb5780cc0 100644
|
|
|
/**
|
|
|
* pci_raw_set_power_state - Use PCI PM registers to set the power state of
|
|
|
* given PCI device
|
|
|
-@@ -2551,6 +2556,10 @@ bool pci_bridge_d3_possible(struct pci_dev *bridge)
|
|
|
+@@ -2541,6 +2546,10 @@ bool pci_bridge_d3_possible(struct pci_dev *bridge)
|
|
|
if (bridge->is_thunderbolt)
|
|
|
return true;
|
|
|
|
|
@@ -3571,7 +3571,7 @@ index 4a874e8fa1d5..a60eb5780cc0 100644
|
|
|
* Hotplug ports handled natively by the OS were not validated
|
|
|
* by vendors for runtime D3 at least until 2018 because there
|
|
|
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
|
|
|
-index e9ede82ee2c2..0a5efc437bd1 100644
|
|
|
+index 39725b71300f..ee3e94c6ea6c 100644
|
|
|
--- a/drivers/pci/pci.h
|
|
|
+++ b/drivers/pci/pci.h
|
|
|
@@ -40,6 +40,8 @@ int pci_bus_error_reset(struct pci_dev *dev);
|
|
@@ -3594,7 +3594,7 @@ index e9ede82ee2c2..0a5efc437bd1 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From 6b1698067f8110c64b68ccf27a3fc5c0192bb841 Mon Sep 17 00:00:00 2001
|
|
|
+From 5231cf349159f15515b37728adb7c6cb797e8ba1 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Mon, 7 Jan 2019 16:09:40 +0300
|
|
|
Subject: [PATCH] PCI: pciehp: Assign ctrl->slot_ctrl before writing it to
|
|
@@ -3648,7 +3648,7 @@ index 242b9f30210a..7074d4923811 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From bacc523e363477ca65e567538ded9f24971c9b96 Mon Sep 17 00:00:00 2001
|
|
|
+From 5a0143e949e2106640a9f536ce64a704f92da362 Mon Sep 17 00:00:00 2001
|
|
|
From: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
Date: Thu, 31 Jan 2019 20:07:46 +0300
|
|
|
Subject: [PATCH] PCI: pciehp: Disable Data Link Layer State Changed event on
|
|
@@ -3737,7 +3737,7 @@ index 7074d4923811..a37ff79a6e9e 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From bbac4d693578338a93819e8e998e12ec92d8f278 Mon Sep 17 00:00:00 2001
|
|
|
+From e1d6999d6e69a864e032c0e0933a52f1f35d9e57 Mon Sep 17 00:00:00 2001
|
|
|
From: Maximilian Luz <luzmaximilian@gmail.com>
|
|
|
Date: Thu, 29 Oct 2020 22:04:38 +0100
|
|
|
Subject: [PATCH] PCI: Allow D3cold for hot-plug ports on Surface Books
|
|
@@ -3769,10 +3769,10 @@ Patchset: surface-hotplug
|
|
|
1 file changed, 29 insertions(+), 2 deletions(-)
|
|
|
|
|
|
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
|
|
|
-index a60eb5780cc0..65bb9c2c1a5b 100644
|
|
|
+index ab930e5994dd..5f3f35d314c3 100644
|
|
|
--- a/drivers/pci/pci.c
|
|
|
+++ b/drivers/pci/pci.c
|
|
|
-@@ -2523,6 +2523,32 @@ static const struct dmi_system_id bridge_d3_blacklist[] = {
|
|
|
+@@ -2513,6 +2513,32 @@ static const struct dmi_system_id bridge_d3_blacklist[] = {
|
|
|
{ }
|
|
|
};
|
|
|
|
|
@@ -3805,7 +3805,7 @@ index a60eb5780cc0..65bb9c2c1a5b 100644
|
|
|
/**
|
|
|
* pci_bridge_d3_possible - Is it possible to put the bridge into D3
|
|
|
* @bridge: Bridge to check
|
|
|
-@@ -2563,10 +2589,11 @@ bool pci_bridge_d3_possible(struct pci_dev *bridge)
|
|
|
+@@ -2553,10 +2579,11 @@ bool pci_bridge_d3_possible(struct pci_dev *bridge)
|
|
|
/*
|
|
|
* Hotplug ports handled natively by the OS were not validated
|
|
|
* by vendors for runtime D3 at least until 2018 because there
|
|
@@ -3822,7 +3822,7 @@ index a60eb5780cc0..65bb9c2c1a5b 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From c132d118a2dedb310f3eb288c3c7fe3d0ee9619b Mon Sep 17 00:00:00 2001
|
|
|
+From 87e0edf3e49a04f91ac6ba0e78e98aa23b88a591 Mon Sep 17 00:00:00 2001
|
|
|
From: Maximilian Luz <luzmaximilian@gmail.com>
|
|
|
Date: Sat, 31 Oct 2020 20:46:33 +0100
|
|
|
Subject: [PATCH] PCI: Add sysfs attribute for PCI device power state
|
|
@@ -3895,75 +3895,7 @@ index 1edf5a1836ea..ee1518650d55 100644
|
|
|
--
|
|
|
2.31.1
|
|
|
|
|
|
-From c75b103a99540d1393562a94eda01ea9b1c4726e Mon Sep 17 00:00:00 2001
|
|
|
-From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
|
|
|
-Date: Tue, 16 Mar 2021 16:51:40 +0100
|
|
|
-Subject: [PATCH] PCI: PM: Do not read power state in pci_enable_device_flags()
|
|
|
-
|
|
|
-It should not be necessary to update the current_state field of
|
|
|
-struct pci_dev in pci_enable_device_flags() before calling
|
|
|
-do_pci_enable_device() for the device, because none of the
|
|
|
-code between that point and the pci_set_power_state() call in
|
|
|
-do_pci_enable_device() invoked later depends on it.
|
|
|
-
|
|
|
-Moreover, doing that is actively harmful in some cases. For example,
|
|
|
-if the given PCI device depends on an ACPI power resource whose _STA
|
|
|
-method initially returns 0 ("off"), but the config space of the PCI
|
|
|
-device is accessible and the power state retrieved from the
|
|
|
-PCI_PM_CTRL register is D0, the current_state field in the struct
|
|
|
-pci_dev representing that device will get out of sync with the
|
|
|
-power.state of its ACPI companion object and that will lead to
|
|
|
-power management issues going forward.
|
|
|
-
|
|
|
-To avoid such issues it is better to leave the current_state value
|
|
|
-as is until it is changed to PCI_D0 by do_pci_enable_device() as
|
|
|
-appropriate. However, the power state of the device is not changed
|
|
|
-to PCI_D0 if it is already enabled when pci_enable_device_flags()
|
|
|
-gets called for it, so update its current_state in that case, but
|
|
|
-use pci_update_current_state() covering platform PM too for that.
|
|
|
-
|
|
|
-Link: https://lore.kernel.org/lkml/20210314000439.3138941-1-luzmaximilian@gmail.com/
|
|
|
-Reported-by: Maximilian Luz <luzmaximilian@gmail.com>
|
|
|
-Tested-by: Maximilian Luz <luzmaximilian@gmail.com>
|
|
|
-Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
|
|
|
-Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
|
|
|
-Patchset: surface-hotplug
|
|
|
----
|
|
|
- drivers/pci/pci.c | 16 +++-------------
|
|
|
- 1 file changed, 3 insertions(+), 13 deletions(-)
|
|
|
-
|
|
|
-diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
|
|
|
-index 65bb9c2c1a5b..5f3f35d314c3 100644
|
|
|
---- a/drivers/pci/pci.c
|
|
|
-+++ b/drivers/pci/pci.c
|
|
|
-@@ -1590,20 +1590,10 @@ static int pci_enable_device_flags(struct pci_dev *dev, unsigned long flags)
|
|
|
- int err;
|
|
|
- int i, bars = 0;
|
|
|
-
|
|
|
-- /*
|
|
|
-- * Power state could be unknown at this point, either due to a fresh
|
|
|
-- * boot or a device removal call. So get the current power state
|
|
|
-- * so that things like MSI message writing will behave as expected
|
|
|
-- * (e.g. if the device really is in D0 at enable time).
|
|
|
-- */
|
|
|
-- if (dev->pm_cap) {
|
|
|
-- u16 pmcsr;
|
|
|
-- pci_read_config_word(dev, dev->pm_cap + PCI_PM_CTRL, &pmcsr);
|
|
|
-- dev->current_state = (pmcsr & PCI_PM_CTRL_STATE_MASK);
|
|
|
-- }
|
|
|
--
|
|
|
-- if (atomic_inc_return(&dev->enable_cnt) > 1)
|
|
|
-+ if (atomic_inc_return(&dev->enable_cnt) > 1) {
|
|
|
-+ pci_update_current_state(dev, dev->current_state);
|
|
|
- return 0; /* already enabled */
|
|
|
-+ }
|
|
|
-
|
|
|
- bridge = pci_upstream_bridge(dev);
|
|
|
- if (bridge)
|
|
|
---
|
|
|
-2.31.1
|
|
|
-
|
|
|
-From f8a4456caf6417db8cdd7d54a64cea077db06669 Mon Sep 17 00:00:00 2001
|
|
|
+From 4b509dae4c9ecba9de632b17eb80c5312ae998f8 Mon Sep 17 00:00:00 2001
|
|
|
From: Maximilian Luz <luzmaximilian@gmail.com>
|
|
|
Date: Mon, 14 Dec 2020 20:50:59 +0100
|
|
|
Subject: [PATCH] platform/x86: Add Surface Hotplug driver
|