Re: [PATCH V2 RESEND] PCI/TPH: Skip Root Port completer check for RC_END devices

From: Wei Huang

Date: Fri Feb 27 2026 - 02:08:19 EST


On Wed, Feb 18, 2026 at 09:00:59PM +0530, George Abraham P wrote:
> Hi Leon,
>
> On 18-Feb-26 2:12 PM, Leon Romanovsky wrote:
> > On Wed, Feb 18, 2026 at 10:24:28AM +0530, George Abraham P wrote:
> >> [+cc TPH authors that were missed in the previous mail]
> >>
> >> On 09-Jan-26 10:59 AM, George Abraham P wrote:
> >>> Root Complex Integrated Endpoint devices (PCI_EXP_TYPE_RC_END) are
> >>> directly integrated into the root complex and do not have an
> >>> associated Root Port in the traditional PCIe hierarchy. The current
> >>> TPH implementation incorrectly attempts to find and check a Root Port's
> >>> TPH completer capability for these devices.
> >>>
> >>> Add a check to skip Root Port completer type verification for RC_END
> >>> devices, allowing them to use their full TPH requester capability
> >>> without being limited by a non-existent Root Port's completer support.
> >>>
> >>> For RC_END devices, the root complex itself acts as the TPH completer,
> >>> and this relationship is handled differently than the standard
> >>> endpoint-to-Root-Port model.
> >>>
> >>> Fixes: f69767a1ada3 ("PCI: Add TLP Processing Hints (TPH) support")
> >>> Signed-off-by: George Abraham P <george.abraham.p@xxxxxxxxx>
> >>> ---
> >>> v1->v2:
> >>> - Added "Fixes:" tag to link the commit hash that introduced the code
> >
> > I do not have a strong preference; I am fine with adding a Fixes tag or
> > leaving it out. Up to commit 2961f841b025, pcie_enable_tph() is called
> > in two drivers: bnxt and mlx5. Which of these devices is the RC_END
> > device?
> >
> > Thanks
>
> qat_6xxx supports TPH and is a RC_END device. The patches to enable TPH on qat_6xxx is yet to be reviewed. However, it requires this fix for the same to work.
>

The patche looks fine to me - it shouldn't affect regular PCI Express Endpoint (type 0000b) devices.

> Thanks,
> George