On Tue, Oct 17, 2023 at 01:02:15PM +0200, Herve Codina wrote: > Hi, > > This patch series fixes a DT based address translation (translations > using the ranges property). > > The issue is present with a ranges property made of a 3 cells child > address, a 3 cells parent address and a 2 cells child size. > This can happen with the recent addition of of_pci_prop_ranges() in > commit 407d1a51921e ("PCI: Create device tree node for bridge") > > The issue description is fully described in the first patch commit log. > > In this series, > - The first patch fixes the issue. > - The second patch avoids duplicated code. > - The third patch adds unit tests related address translations. > > I previously sent the first patch alone: > https://lore.kernel.org/linux-kernel/20231003065236.121987-1-herve.codina@xxxxxxxxxxx/ > This series v2 has to be considered as the next iteration based on the > review done on my previous patch sent alone. > > Best regards, > Hervé > > Changes v1 -> v2 > > - Patch 1 > Simplify of_bus_default_flags_map(). > Fix the commit log (pci-ep-bus ranges[0] size is 0x200_0000 instead > of 0x2000_0000). > > - Patch 2 (new in v2) > Remove duplicated code. > > - Patch 3 (new in v2) > Add unit tests. > > Herve Codina (3): > of: address: Fix address translation when address-size is greater than > 2 > of: address: Remove duplicated functions > of: unittest: Add tests for address translations > > drivers/of/address.c | 43 ++++++--- > drivers/of/unittest-data/tests-address.dtsi | 101 ++++++++++++++++++++ > drivers/of/unittest.c | 74 ++++++++++++++ > 3 files changed, 205 insertions(+), 13 deletions(-) I've applied this. I sent out this series[1] of clean-ups to apply on top. Rob [1] https://lore.kernel.org/all/20231026135358.3564307-2-robh@xxxxxxxxxx/