From: Sergey Miroshnichenko <s.miroshnichenko@yadro.com> To: <linux-pci@vger.kernel.org>, <linuxppc-dev@lists.ozlabs.org> Cc: Bjorn Helgaas <helgaas@kernel.org>, <linux@yadro.com>, Sergey Miroshnichenko <s.miroshnichenko@yadro.com> Subject: [PATCH v6 18/30] PCI: hotplug: Configure MPS for hot-added bridges during bus rescan Date: Thu, 24 Oct 2019 20:12:16 +0300 [thread overview] Message-ID: <20191024171228.877974-19-s.miroshnichenko@yadro.com> (raw) In-Reply-To: <20191024171228.877974-1-s.miroshnichenko@yadro.com> Assure that MPS settings are set up for bridges which are discovered during manually triggered rescan via sysfs. This sequence of bridge init (using pci_rescan_bus()) will be used for pciehp hot-add events when BARs are movable. Signed-off-by: Sergey Miroshnichenko <s.miroshnichenko@yadro.com> --- drivers/pci/probe.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index d0d00cb3e965..94bbdf9b9dc1 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -3414,7 +3414,7 @@ static void pci_reassign_root_bus_resources(struct pci_bus *root) unsigned int pci_rescan_bus(struct pci_bus *bus) { unsigned int max; - struct pci_bus *root = bus; + struct pci_bus *root = bus, *child; while (!pci_is_root_bus(root)) root = root->parent; @@ -3435,6 +3435,9 @@ unsigned int pci_rescan_bus(struct pci_bus *bus) pci_assign_unassigned_bus_resources(bus); } + list_for_each_entry(child, &root->children, node) + pcie_bus_configure_settings(child); + pci_bus_add_devices(bus); return max; -- 2.23.0
WARNING: multiple messages have this Message-ID (diff)
From: Sergey Miroshnichenko <s.miroshnichenko@yadro.com> To: <linux-pci@vger.kernel.org>, <linuxppc-dev@lists.ozlabs.org> Cc: Sergey Miroshnichenko <s.miroshnichenko@yadro.com>, Bjorn Helgaas <helgaas@kernel.org>, linux@yadro.com Subject: [PATCH v6 18/30] PCI: hotplug: Configure MPS for hot-added bridges during bus rescan Date: Thu, 24 Oct 2019 20:12:16 +0300 [thread overview] Message-ID: <20191024171228.877974-19-s.miroshnichenko@yadro.com> (raw) In-Reply-To: <20191024171228.877974-1-s.miroshnichenko@yadro.com> Assure that MPS settings are set up for bridges which are discovered during manually triggered rescan via sysfs. This sequence of bridge init (using pci_rescan_bus()) will be used for pciehp hot-add events when BARs are movable. Signed-off-by: Sergey Miroshnichenko <s.miroshnichenko@yadro.com> --- drivers/pci/probe.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index d0d00cb3e965..94bbdf9b9dc1 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -3414,7 +3414,7 @@ static void pci_reassign_root_bus_resources(struct pci_bus *root) unsigned int pci_rescan_bus(struct pci_bus *bus) { unsigned int max; - struct pci_bus *root = bus; + struct pci_bus *root = bus, *child; while (!pci_is_root_bus(root)) root = root->parent; @@ -3435,6 +3435,9 @@ unsigned int pci_rescan_bus(struct pci_bus *bus) pci_assign_unassigned_bus_resources(bus); } + list_for_each_entry(child, &root->children, node) + pcie_bus_configure_settings(child); + pci_bus_add_devices(bus); return max; -- 2.23.0
next prev parent reply other threads:[~2019-10-24 17:12 UTC|newest] Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-10-24 17:11 [PATCH v6 00/30] PCI: Allow BAR movement during hotplug Sergey Miroshnichenko 2019-10-24 17:11 ` Sergey Miroshnichenko 2019-10-24 17:11 ` [PATCH v6 01/30] PCI: Fix race condition in pci_enable/disable_device() Sergey Miroshnichenko 2019-10-24 17:11 ` Sergey Miroshnichenko 2019-10-25 14:33 ` Oxford Semiconductor Ltd OX16PCI954 - weird dmesg Carlo Pisani 2019-10-25 16:37 ` Bjorn Helgaas 2019-10-24 17:12 ` [PATCH v6 02/30] PCI: Enable bridge's I/O and MEM access for hotplugged devices Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 03/30] PCI: hotplug: Add a flag for the movable BARs feature Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-27 18:18 ` kbuild test robot 2019-10-24 17:12 ` [PATCH v6 04/30] PCI: Define PCI-specific version of the release_child_resources() Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 05/30] PCI: hotplug: movable BARs: Fix reassigning the released bridge windows Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 06/30] PCI: hotplug: movable BARs: Recalculate all bridge windows during rescan Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 07/30] PCI: hotplug: movable BARs: Don't disable the released bridge windows Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 08/30] PCI: hotplug: movable BARs: Don't allow added devices to steal resources Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 09/30] PCI: Include fixed and immovable BARs into the bus size calculating Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 10/30] PCI: Prohibit assigning BARs and bridge windows to non-direct parents Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 11/30] PCI: hotplug: movable BARs: Try to assign unassigned resources only once Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 12/30] PCI: hotplug: movable BARs: Calculate immovable parts of bridge windows Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 13/30] PCI: hotplug: movable BARs: Compute limits for relocated " Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 14/30] PCI: Make sure bridge windows include their fixed BARs Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 15/30] PCI: Fix assigning the fixed prefetchable resources Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 16/30] PCI: hotplug: movable BARs: Assign fixed and immovable BARs before others Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 17/30] PCI: hotplug: movable BARs: Don't reserve IO/mem bus space Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko [this message] 2019-10-24 17:12 ` [PATCH v6 18/30] PCI: hotplug: Configure MPS for hot-added bridges during bus rescan Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 19/30] PCI: hotplug: movable BARs: Ignore the MEM BAR offsets from bootloader Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 20/30] powerpc/pci: Fix crash with enabled movable BARs Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-25 1:22 ` Alexey Kardashevskiy 2019-10-25 1:22 ` Alexey Kardashevskiy 2019-10-24 17:12 ` [PATCH v6 21/30] powerpc/pci: Access PCI config space directly w/o pci_dn Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 22/30] powerpc/pci: Create pci_dn on demand Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 23/30] powerpc/pci: hotplug: Add support for movable BARs Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 24/30] powerpc/powernv/pci: Suppress an EEH error when reading an empty slot Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 25/30] PNP: Don't reserve BARs for PCI when enabled movable BARs Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-27 17:40 ` kbuild test robot 2019-10-27 17:40 ` kbuild test robot 2019-10-27 17:40 ` kbuild test robot 2019-10-24 17:12 ` [PATCH v6 26/30] PCI: hotplug: movable BARs: Enable the feature by default Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 27/30] nvme-pci: Handle movable BARs Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 28/30] PCI/portdrv: Declare support of " Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 29/30] PCI: pciehp: movable BARs: Trigger a domain rescan on hp events Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko 2019-10-24 17:12 ` [PATCH v6 30/30] Revert "powerpc/powernv/pci: Work around races in PCI bridge enabling" Sergey Miroshnichenko 2019-10-24 17:12 ` Sergey Miroshnichenko
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=20191024171228.877974-19-s.miroshnichenko@yadro.com \ --to=s.miroshnichenko@yadro.com \ --cc=helgaas@kernel.org \ --cc=linux-pci@vger.kernel.org \ --cc=linux@yadro.com \ --cc=linuxppc-dev@lists.ozlabs.org \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.