From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: Bjorn Helgaas <bhelgaas@google.com>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Len Brown <lenb@kernel.org>,
Mario.Limonciello@dell.com,
Michael Jamet <michael.jamet@intel.com>,
Yehezkel Bernat <yehezkel.bernat@intel.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: [PATCH v2 0/5] PCI: Fixes for native PCIe and ACPI hotplug
Date: Thu, 15 Feb 2018 17:39:54 +0300 [thread overview]
Message-ID: <20180215144000.60456-1-mika.westerberg@linux.intel.com> (raw)
Hi,
When Thunderbolt controller is configured to be in native enumeration mode
it actually includes two slightly different modes. First there is non-RTD3
mode where the Thunderbolt host controller is only present when there is a
device connected. The second one is RTD3 mode where the controller is
always present.
In non-RTD3 mode the Thunderbolt host controller (NHI) and USB host (xHCI)
controller are not hotplugged using native PCIe hotplug but instead they
will be hotplugged via BIOS triggered ACPI Notify() to the root port. This
is done to preserve resources since the NHI and xHCI only need 1 MB of MMIO
space and no additional buses. Currently Linux does not support this very
well and ends up failing the hotplug in one way or another. More detailed
explanation is in changelog of patch [4/5].
This series fixes this issue and in addition includes fixes for few other
issues found during testing on a system that has Thunderbolt controller in
non-RTD3 native PCIe enumeration mode. However, the fixes here are not in
any way Thunderbolt specific and should be applicable to other systems as
well.
The previous version of the patch series can be found here:
https://www.spinics.net/lists/linux-acpi/msg80607.html
Changes from the previous version:
- Drop 'cmax - max ?: 1' and use similar construct than we use in second
pass loop in patch [1/5].
- Drop unnecessary parentheses in patch [1/5].
- Added Rafael's tag to patches [2-5/5].
[ I'm sending this updated patch series now because my vacation starts
tomorrow and I'll be away whole next week. If any further changes are
needed, I'll do those when I'm back. ]
Mika Westerberg (5):
PCI: Make sure all bridges reserve at least one bus number
PCI: Take bridge window alignment into account when distributing resources
PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on resume
ACPI / hotplug / PCI: Do not scan all bridges when native PCIe hotplug is used
ACPI / hotplug / PCI: Mark stale PCI devices disconnected
drivers/pci/hotplug/acpiphp.h | 1 +
drivers/pci/hotplug/acpiphp_glue.c | 78 ++++++++++++++++++++++++++++++--------
drivers/pci/hotplug/pciehp.h | 2 +-
drivers/pci/hotplug/pciehp_core.c | 2 +-
drivers/pci/hotplug/pciehp_hpc.c | 13 ++++++-
drivers/pci/probe.c | 11 ++++--
drivers/pci/setup-bus.c | 41 +++++++++++++++++++-
7 files changed, 126 insertions(+), 22 deletions(-)
--
2.15.1
next reply other threads:[~2018-02-15 14:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-15 14:39 Mika Westerberg [this message]
2018-02-15 14:39 ` [PATCH v2 1/5] PCI: Make sure all bridges reserve at least one bus number Mika Westerberg
2018-02-15 15:51 ` Rafael J. Wysocki
2018-02-23 0:27 ` Bjorn Helgaas
2018-02-23 0:52 ` Mario.Limonciello
2018-02-23 17:25 ` Bjorn Helgaas
2018-02-23 19:06 ` Mario.Limonciello
2018-02-26 10:24 ` Mika Westerberg
2018-02-15 14:39 ` [PATCH v2 2/5] PCI: Take bridge window alignment into account when distributing resources Mika Westerberg
2018-02-15 14:39 ` [PATCH v2 3/5] PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on resume Mika Westerberg
2018-02-15 14:39 ` [PATCH v2 4/5] ACPI / hotplug / PCI: Do not scan all bridges when native PCIe hotplug is used Mika Westerberg
2018-02-15 14:39 ` [PATCH v2 5/5] ACPI / hotplug / PCI: Mark stale PCI devices disconnected Mika Westerberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180215144000.60456-1-mika.westerberg@linux.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=Mario.Limonciello@dell.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=bhelgaas@google.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=michael.jamet@intel.com \
--cc=rjw@rjwysocki.net \
--cc=yehezkel.bernat@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).