[PATCH v2 0/5] PCI: Encapsulate pcie_link_speed array access

From: Hans Zhang

Date: Sun Nov 08 2026 - 04:42:39 EST


Hi,

This series finishes encapsulating the pcie_link_speed[] array by
converting the remaining direct users to pcie_get_link_speed() and
making the array private to probe.c.

The pcie_get_link_speed() helper was introduced and accepted in the
v10 "PCI: of: Remove max-link-speed generation validation" series, but
a few users that were added later still index pcie_link_speed[]
directly.

Changes since v1:
- Rebase onto v7.4-rc1.
- Use pcie_get_link_speed(), which is already exported and
bounds-checked, instead of introducing a new to_pcie_link_speed()
helper.
- Split the pci.c change from the other core conversions, mirroring the
split between v1 patches 1 and 2.
- Convert probe.c's max_bus_speed lookup, which v1 missed.
- Convert the Tegra264 and MediaTek controller drivers, which were
added after the v10 series and would otherwise fail to build once the
array is no longer exported.
- Split the two controller conversions into separate patches so each
driver can be reviewed independently.
- Make pcie_link_speed[] static instead of only removing its extern
declaration and export.

v1 series: https://patchwork.kernel.org/project/linux-pci/patch/20260315160057.127639-1-18255117159@xxxxxxx/

Hans Zhang (5):
PCI: Use pcie_get_link_speed() in pci.c
PCI: Convert remaining core pcie_link_speed[] users
PCI: tegra264: Use pcie_get_link_speed()
PCI: mediatek: Use pcie_get_link_speed()
PCI: Make pcie_link_speed[] private to probe.c

drivers/pci/controller/pcie-mediatek.c | 2 +-
drivers/pci/controller/pcie-tegra264.c | 6 +++---
drivers/pci/pci-sysfs.c | 2 +-
drivers/pci/pci.c | 9 ++-------
drivers/pci/pci.h | 3 +--
drivers/pci/probe.c | 5 ++---
6 files changed, 10 insertions(+), 17 deletions(-)


base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
--
2.43.0