On Tue, Mar 18, 2025 at 10:01:48AM +0100, Niklas Cassel wrote: > On Mon, Mar 17, 2025 at 12:54:19PM -0500, Bjorn Helgaas wrote: > > On Mon, Mar 10, 2025 at 05:47:03PM +0100, Jesper Nilsson wrote: > > > I've now tested this patch-set together with your v9 on-top of the > > > next-branch of the pci tree, and seems to be working good on my > > > ARTPEC-6 set as RC: > > > > > > # lspci > > > 00:00.0 PCI bridge: Renesas Technology Corp. Device 0024 > > > 01:00.0 PCI bridge: Pericom Semiconductor PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch (rev 05) > > > 02:01.0 PCI bridge: Pericom Semiconductor PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch (rev 05) > > > 02:02.0 PCI bridge: Pericom Semiconductor PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch (rev 05) > > > 03:00.0 Non-Volatile memory controller: Phison Electronics Corporation E18 PCIe4 NVMe Controller (rev 01) > > > > > > However, when running as EP, I found that the DT setup for pcie_ep > > > wasn't correct: > > > > > > diff --git a/arch/arm/boot/dts/axis/artpec6.dtsi b/arch/arm/boot/dts/axis/artpec6.dtsi > > > index 399e87f72865..6d52f60d402d 100644 > > > --- a/arch/arm/boot/dts/axis/artpec6.dtsi > > > +++ b/arch/arm/boot/dts/axis/artpec6.dtsi > > > @@ -195,8 +195,8 @@ pcie: pcie@f8050000 { > > > > > > pcie_ep: pcie_ep@f8050000 { > > > compatible = "axis,artpec6-pcie-ep", "snps,dw-pcie"; > > > - reg = <0xf8050000 0x2000 > > > - 0xf8051000 0x2000 > > > + reg = <0xf8050000 0x1000 > > > + 0xf8051000 0x1000 > > > 0xf8040000 0x1000 > > > 0x00000000 0x20000000>; > > > reg-names = "dbi", "dbi2", "phy", "addr_space"; > > > > > > Even with this fix, I get a panic in dw_pcie_read_dbi() in EP-setup, > > > both with and without: > > Your fix looks correct to me. > > You should even be able keep dbi as 0x2000, and simply remove the dbi2 > from "reg" and "reg-names", as the driver should be able to infer dbi2 > automatically: > https://github.com/torvalds/linux/blob/v6.14-rc7/drivers/pci/controller/dwc/pcie-designware.c#L119-L128 > > But your fix seems more correct. > You should probably also change the size of "dbi" to 0x1000 in the RC node. Just a ping to see if there's any chance of getting this into v6.15? To do that, I think we'd need to confirm that: - the endpoint issue is fixed - artpec6 is only used in-house - the DTBs are either already OK or OK after [PATCH 1/2] - everybody in-house is OK with updating to the new DTB. I haven't seen anything about the endpoint part, and haven't seen confirmation of the others. Bjorn