From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
Dominik Brodowski <linux@dominikbrodowski.net>
Cc: linux-kernel@vger.kernel.org,
"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Subject: [PATCH 00/23] PCI: Resource code fixes (supercedes earlier series) & cleanups
Date: Fri, 19 Dec 2025 19:40:13 +0200 [thread overview]
Message-ID: <20251219174036.16738-1-ilpo.jarvinen@linux.intel.com> (raw)
Hi all,
Here's the resource code fixes and cleanups series. The 6 patches (the
first 5 + 1 cleanup) have been submitted earlier (not yet applied, I've
closed the patchwork entries for them) but due to a number conflicts
that could easily ensue if these are applied independently, I had to
put all these into the same series.
The series consists of:
1. The first 5 are the most important changes as they relate to
regressions. These may case shrinkage of bridge windows that
previous had surplus space beyond the HP reservation size (due to
sizes inherited from FW). In some HP scenarios the smaller bridge
window could cause a regression, but this seems a case the pci=hpmm*
parameters are meant to address.
2. Followed by cleanups (no functional change intended, excluding the
extra debug logging added).
3. Introduction of pbus_mem_size_optional() to avoid the need to handle
optional resource in a deeply nested loop (rebar awareness changes
will have to add some code there). Doing all optional calculations
in one place feels more logical and consistent anyway. There's a
minor functional change in this change related to bridge windows
with only optional resources (I don't expect issues because of it).
4. Separating CardBus bridge setup code to own file + compile it only
when CONFIG_CARDBUS is set (I'd have wanted to send this separately
but it seems impractical given that I need to rename the
pci_dev_resource handling functions when exposing them to another
file).
Any comments are welcome.
Ilpo Järvinen (23):
PCI: Fix bridge window alignment with optional resources
PCI: Rewrite bridge window head alignment function
PCI: Stop over-estimating bridge window size
resource: Increase MAX_IORES_LEVEL to 8
PCI: Remove old_size limit from bridge window sizing
PCI: Push realloc check into pbus_size_mem()
PCI: Pass bridge window resource to pbus_size_mem()
PCI: Use res_to_dev_res() in reassign_resources_sorted()
PCI: Fetch dev_res to local var in __assign_resources_sorted()
PCI: Add pci_resource_is_bridge_win()
PCI: Log reset and restore of resources
PCI: Check invalid align earlier in pbus_size_mem()
PCI: Add pbus_mem_size_optional() to handle optional sizes
resource: Mark res given to resource_assigned() as const
PCI: Use resource_assigned() in setup-bus.c algorithm
PCI: Properly prefix struct pci_dev_resource handling functions
PCI: Separate cardbus setup & build it only with CONFIG_CARDBUS
PCI: Handle CardBus specific params in setup-cardbus.c
PCI: Use scnprintf() instead of sprintf()
PCI: Add Bus Number + Secondary Latency Timer as dword fields
PCI: Convert to use Bus Number field defines
PCI: Add pbus_validate_busn() for Bus Number validation
PCI: Move scanbus bridge scanning to setup-cardbus.c
drivers/pci/Makefile | 1 +
drivers/pci/pci-sysfs.c | 2 +-
drivers/pci/pci.c | 14 +-
drivers/pci/pci.h | 49 ++-
drivers/pci/probe.c | 128 +++----
drivers/pci/setup-bus.c | 644 ++++++++++++----------------------
drivers/pci/setup-cardbus.c | 306 ++++++++++++++++
drivers/pci/setup-res.c | 2 +-
drivers/pcmcia/yenta_socket.c | 2 +-
include/linux/ioport.h | 2 +-
include/linux/pci.h | 6 +-
include/uapi/linux/pci_regs.h | 5 +
kernel/resource.c | 2 +-
13 files changed, 648 insertions(+), 515 deletions(-)
create mode 100644 drivers/pci/setup-cardbus.c
base-commit: 8f0b4cce4481fb22653697cced8d0d04027cb1e8
--
2.39.5
next reply other threads:[~2025-12-19 17:40 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-19 17:40 Ilpo Järvinen [this message]
2025-12-19 17:40 ` [PATCH 01/23] PCI: Fix bridge window alignment with optional resources Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 02/23] PCI: Rewrite bridge window head alignment function Ilpo Järvinen
2026-01-26 22:17 ` Bjorn Helgaas
2026-01-27 11:22 ` Ilpo Järvinen
2026-01-27 22:39 ` Bjorn Helgaas
2025-12-19 17:40 ` [PATCH 03/23] PCI: Stop over-estimating bridge window size Ilpo Järvinen
2026-03-05 15:13 ` Guenter Roeck
2026-03-05 16:28 ` Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 04/23] resource: Increase MAX_IORES_LEVEL to 8 Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 05/23] PCI: Remove old_size limit from bridge window sizing Ilpo Järvinen
2026-01-26 17:16 ` Bjorn Helgaas
2026-01-26 20:09 ` Bjorn Helgaas
2026-01-27 11:39 ` Ilpo Järvinen
2026-01-27 22:42 ` Bjorn Helgaas
2026-01-27 10:16 ` Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 06/23] PCI: Push realloc check into pbus_size_mem() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 07/23] PCI: Pass bridge window resource to pbus_size_mem() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 08/23] PCI: Use res_to_dev_res() in reassign_resources_sorted() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 09/23] PCI: Fetch dev_res to local var in __assign_resources_sorted() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 10/23] PCI: Add pci_resource_is_bridge_win() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 11/23] PCI: Log reset and restore of resources Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 12/23] PCI: Check invalid align earlier in pbus_size_mem() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 13/23] PCI: Add pbus_mem_size_optional() to handle optional sizes Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 14/23] resource: Mark res given to resource_assigned() as const Ilpo Järvinen
2025-12-19 17:47 ` Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 15/23] PCI: Use resource_assigned() in setup-bus.c algorithm Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 16/23] PCI: Properly prefix struct pci_dev_resource handling functions Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 17/23] PCI: Separate cardbus setup & build it only with CONFIG_CARDBUS Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 18/23] PCI: Handle CardBus specific params in setup-cardbus.c Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 19/23] PCI: Use scnprintf() instead of sprintf() Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 20/23] PCI: Add Bus Number + Secondary Latency Timer as dword fields Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 21/23] PCI: Convert to use Bus Number field defines Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 22/23] PCI: Add pbus_validate_busn() for Bus Number validation Ilpo Järvinen
2025-12-19 17:40 ` [PATCH 23/23] PCI: Move scanbus bridge scanning to setup-cardbus.c Ilpo Järvinen
2026-01-26 17:39 ` [PATCH 00/23] PCI: Resource code fixes (supercedes earlier series) & cleanups Bjorn Helgaas
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=20251219174036.16738-1-ilpo.jarvinen@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=bhelgaas@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@dominikbrodowski.net \
/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