From: Christian Bruel <christian.bruel@foss.st.com>
To: Koichiro Den <den@valinux.co.jp>, <jingoohan1@gmail.com>,
<mani@kernel.org>, <lpieralisi@kernel.org>,
<kwilczynski@kernel.org>, <robh@kernel.org>,
<bhelgaas@google.com>, <cassel@kernel.org>, <Frank.Li@nxp.com>
Cc: <vigneshr@ti.com>, <s-vadapalli@ti.com>, <hongxing.zhu@nxp.com>,
<l.stach@pengutronix.de>, <shawnguo@kernel.org>,
<s.hauer@pengutronix.de>, <kernel@pengutronix.de>,
<festevam@gmail.com>, <minghuan.Lian@nxp.com>,
<mingkai.hu@nxp.com>, <roy.zang@nxp.com>,
<jesper.nilsson@axis.com>, <heiko@sntech.de>,
<srikanth.thokala@intel.com>, <marek.vasut+renesas@gmail.com>,
<yoshihiro.shimoda.uh@renesas.com>, <geert+renesas@glider.be>,
<magnus.damm@gmail.com>, <mcoquelin.stm32@gmail.com>,
<alexandre.torgue@foss.st.com>, <thierry.reding@gmail.com>,
<jonathanh@nvidia.com>, <hayashi.kunihiko@socionext.com>,
<mhiramat@kernel.org>, <kishon@kernel.org>,
<jirislaby@kernel.org>, <rongqianfeng@vivo.com>,
<18255117159@163.com>, <shawn.lin@rock-chips.com>,
<nicolas.frattaroli@collabora.com>, <linux.amoon@gmail.com>,
<vidyas@nvidia.com>, <shuah@kernel.org>,
<linux-omap@vger.kernel.org>, <linux-pci@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>, <imx@lists.linux.dev>,
<linuxppc-dev@lists.ozlabs.org>, <linux-arm-kernel@axis.com>,
<linux-rockchip@lists.infradead.org>,
<linux-arm-msm@vger.kernel.org>,
<linux-renesas-soc@vger.kernel.org>,
<linux-stm32@st-md-mailman.stormreply.com>,
<linux-tegra@vger.kernel.org>, <linux-kselftest@vger.kernel.org>
Subject: Re: [PATCH v10 3/8] PCI: dwc: Advertise dynamic inbound mapping support
Date: Fri, 13 Mar 2026 16:59:26 +0100 [thread overview]
Message-ID: <b2b03ebe-9482-4a13-b22f-7b44da096eed@foss.st.com> (raw)
In-Reply-To: <20260124145012.2794108-4-den@valinux.co.jp>
Hello,
While testing after this series, I encountered regressions on the
STM32MP2, which I am unsure how to fix. The failures depend on the order
in which the tests are run.
The STM32 ATU has 4 inbound entries. After enumeration, the first 4 ATU
entries are allocated within ib_window_map.
On the first run of ./pci_endpoint_test -v BAR3(for example),
SUBRRANGE_SETUP calls dw_pcie_ep_ib_atu_addr(), which frees only one ATU
entry (BAR3), because we were in the bar_to_atu case, for the first
submap but fails to allocate the second submap. So the test FAILs.
On the second run with a different BAR, SUBRRANGE_SETUP test calls
dw_pcie_ep_ib_atu_addr() again, freeing the required ATU entry (BAR1)
and successfully using the second ATU entry (3), which was left
unallocated by the first test. then now the test PASSes
Therefore, the first invocation of ./pci_endpoint_test on any BAR always
fails. Other invocations are fine because the first one has left the
missing necessary ATU entry free. Whatever initial BAR number is used
I am unsure how to fix this. Always freeing all BARs before calling
set_bar() in the epf-test seems overkill, but safe.
I am also considering modifying dw_pcie_ep_clear_ib_maps() to clear N
num_submap entries even if ib_atu_indexes was not used yet, since only
the full BAR is used during the first invocation from bar_to_atu. But
the question is which ATU entry to select ? BAR+1 ?. This seems empirical.
I am not bothered by test failures due to an insufficient number of BARs
(this is already the case for BAR5,6), but the fact that the failures
depend on the test order is frustrating and show a regression.
But I'm not satisfied with either of the 2 possible fixes mentioned above.
Do you have any other thought ?
thank you
Christian
next prev parent reply other threads:[~2026-03-13 23:23 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-24 14:50 [PATCH v10 0/8] PCI: endpoint: BAR subrange mapping support Koichiro Den
2026-01-24 14:50 ` [PATCH v10 1/8] PCI: endpoint: Add dynamic_inbound_mapping EPC feature Koichiro Den
2026-01-24 14:50 ` [PATCH v10 2/8] PCI: endpoint: Add BAR subrange mapping support Koichiro Den
2026-01-24 14:50 ` [PATCH v10 3/8] PCI: dwc: Advertise dynamic inbound " Koichiro Den
2026-03-13 15:59 ` Christian Bruel [this message]
2026-03-13 18:18 ` Bjorn Helgaas
2026-03-16 12:26 ` Christian Bruel
2026-03-14 4:33 ` Koichiro Den
2026-03-16 12:41 ` Christian Bruel
2026-03-16 12:57 ` Niklas Cassel
2026-03-16 13:29 ` Christian Bruel
2026-03-16 13:50 ` Koichiro Den
2026-01-24 14:50 ` [PATCH v10 4/8] PCI: dwc: ep: Support BAR subrange inbound mapping via Address Match Mode iATU Koichiro Den
2026-01-26 10:25 ` Niklas Cassel
2026-01-24 14:50 ` [PATCH v10 5/8] Documentation: PCI: endpoint: Clarify pci_epc_set_bar() usage Koichiro Den
2026-01-24 14:50 ` [PATCH v10 6/8] PCI: endpoint: pci-epf-test: Add BAR subrange mapping test support Koichiro Den
2026-01-24 14:50 ` [PATCH v10 7/8] misc: pci_endpoint_test: Add BAR subrange mapping test case Koichiro Den
2026-01-24 14:50 ` [PATCH v10 8/8] selftests: pci_endpoint: " Koichiro Den
2026-01-28 13:47 ` [PATCH v10 0/8] PCI: endpoint: BAR subrange mapping support Manivannan Sadhasivam
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=b2b03ebe-9482-4a13-b22f-7b44da096eed@foss.st.com \
--to=christian.bruel@foss.st.com \
--cc=18255117159@163.com \
--cc=Frank.Li@nxp.com \
--cc=alexandre.torgue@foss.st.com \
--cc=bhelgaas@google.com \
--cc=cassel@kernel.org \
--cc=den@valinux.co.jp \
--cc=festevam@gmail.com \
--cc=geert+renesas@glider.be \
--cc=hayashi.kunihiko@socionext.com \
--cc=heiko@sntech.de \
--cc=hongxing.zhu@nxp.com \
--cc=imx@lists.linux.dev \
--cc=jesper.nilsson@axis.com \
--cc=jingoohan1@gmail.com \
--cc=jirislaby@kernel.org \
--cc=jonathanh@nvidia.com \
--cc=kernel@pengutronix.de \
--cc=kishon@kernel.org \
--cc=kwilczynski@kernel.org \
--cc=l.stach@pengutronix.de \
--cc=linux-arm-kernel@axis.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux-tegra@vger.kernel.org \
--cc=linux.amoon@gmail.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lpieralisi@kernel.org \
--cc=magnus.damm@gmail.com \
--cc=mani@kernel.org \
--cc=marek.vasut+renesas@gmail.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=mhiramat@kernel.org \
--cc=minghuan.Lian@nxp.com \
--cc=mingkai.hu@nxp.com \
--cc=nicolas.frattaroli@collabora.com \
--cc=robh@kernel.org \
--cc=rongqianfeng@vivo.com \
--cc=roy.zang@nxp.com \
--cc=s-vadapalli@ti.com \
--cc=s.hauer@pengutronix.de \
--cc=shawn.lin@rock-chips.com \
--cc=shawnguo@kernel.org \
--cc=shuah@kernel.org \
--cc=srikanth.thokala@intel.com \
--cc=thierry.reding@gmail.com \
--cc=vidyas@nvidia.com \
--cc=vigneshr@ti.com \
--cc=yoshihiro.shimoda.uh@renesas.com \
/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