[PATCH v4 00/16] PCI: dwc: Cache PCIe capability offset

Hans Zhang 18255117159 at 163.com
Tue Oct 27 19:10:33 PDT 2026



On 10/28/26 07:15, Bjorn Helgaas wrote:
> On Tue, Oct 27, 2026 at 08:28:11PM +0800, Hans Zhang wrote:
>> Hi,
>>
>> The DWC PCIe core and its platform drivers repeatedly call
>> dw_pcie_find_capability(pci, PCI_CAP_ID_EXP) to obtain the offset of the
>> PCI Express Capability structure, including in paths that run more than
>> once such as link polling, suspend/resume and interrupt handlers.
>>
>> Add a cached pcie_cap field to struct dw_pcie and a
>> dw_pcie_get_pcie_cap() helper that performs the lookup on first use and
>> caches the result, then convert the core and the 14 platform drivers
>> that use PCI_CAP_ID_EXP.
>>
>> After this series, dw_pcie_find_capability(..., PCI_CAP_ID_EXP) no
>> longer appears in drivers/pci/controller/dwc/ outside of the helper
>> itself.
>> ...
> 
>> base-commit: 4352b8aee98005853aa63f57d6377282de17a33f
> 
> This does indeed apply cleanly on 4352b8aee980 ("Merge tag
> 'i3c/for-7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux"),
> but that's pretty old and not really useful any more.
> 
> PCI topic branches are typically based on -rc1, but of course v7.4-rc1
> hasn't been tagged.  Until it is, you can use pci/main as a good base.
> It's currently 17bb0e2f6c80 ("Merge tag 'pci-v7.4-changes' of
> git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci"), so
> drivers/pci/ in v7.4-rc1 will be pretty close to that.

Hello Bjorn,

Will rebase on pci/main.

Best regards,
Hans





More information about the linux-amlogic mailing list