[PATCH v4 0/4] PCI: dwc: Clean up iATU index mess

Niklas Cassel
2026-01-23T18:28:44Z

This series tries to clean up the iATU index mess, by treating
iATU indexing for outbound and inbound address translation in
a consistent way (increment the index after assignment, and only
if the function call succeeded).

Changes since v3:
-The ECAM config space accessors do not support cfg0_io_shared, thus if
running in ECAM mode, and we are out of outbound iATUs, return an error
instead of enabling the cfg0_io_shared feature.

Link to v3:
https://lore.kernel.org/linux-pci/20260123093208.593506-6-cassel@kernel.org/

Link to v2:
https://lore.kernel.org/linux-pci/20260122222914.523238-6-cassel@kernel.org/

Link to v1:
https://lore.kernel.org/linux-pci/20260122145411.453291-4-cassel@kernel.org/

Krishna Chaitanya Chundru (1):
PCI: dwc: Fix missing iATU setup when ECAM is enabled

Niklas Cassel (3):
PCI: dwc: Fix msg_atu_index assignment
PCI: dwc: Improve msg_atu_index error handling
PCI: dwc: Clean up iATU index usage in dw_pcie_iatu_setup()

.../pci/controller/dwc/pcie-designware-host.c | 91 ++++++++++++-------
drivers/pci/controller/dwc/pcie-designware.c | 6 ++
2 files changed, 62 insertions(+), 35 deletions(-)

base-commit: 0ecd890e3cf54a0586247b9a384702703277e4fd
--
2.52.0