Thread (43 messages) 43 messages, 7 authors, 2024-09-19

Re: [PATCH V4 00/12] PCIe TPH and cache direct injection support

From: Bjorn Helgaas <helgaas@kernel.org>
Date: 2024-09-04 20:20:18
Also in: linux-doc, linux-pci, lkml

On Thu, Aug 22, 2024 at 03:41:08PM -0500, Wei Huang wrote:
Hi All,

TPH (TLP Processing Hints) is a PCIe feature that allows endpoint
devices to provide optimization hints for requests that target memory
space. These hints, in a format called steering tag (ST), are provided
in the requester's TLP headers and allow the system hardware, including
the Root Complex, to optimize the utilization of platform resources
for the requests.
Paul Luse (1):
  PCI/TPH: Add save/restore support for TPH

Wei Huang (9):
  PCI: Introduce PCIe TPH support framework
  PCI: Add TPH related register definition
  PCI/TPH: Add pcie_tph_modes() to query TPH modes
  PCI/TPH: Add pcie_enable_tph() to enable TPH
  PCI/TPH: Add pcie_disable_tph() to disable TPH
  PCI/TPH: Add pcie_tph_enabled() to check TPH state
  PCI/TPH: Add pcie_tph_set_st_entry() to set ST tag
  PCI/TPH: Add pcie_tph_get_cpu_st() to get ST tag
  PCI/TPH: Add pci=nostmode to force TPH No ST Mode
To me, this series would make more sense if we squashed these
together:

  PCI: Introduce PCIe TPH support framework
  PCI: Add TPH related register definition
  PCI/TPH: Add pcie_enable_tph() to enable TPH
  PCI/TPH: Add pcie_disable_tph() to disable TPH
  PCI/TPH: Add save/restore support for TPH

These would add the "minimum viable functionality", e.g., enable TPH
just for Processing Hints, with no Steering Tag support at all.  Would
also include "pci=notph".

  PCI/TPH: Add pcie_tph_set_st_entry() to set ST tag
  PCI/TPH: Add pcie_tph_get_cpu_st() to get ST tag

And squash these also to add Steering Tag support in a single commit,
including enhancing the save/restore.

  PCI/TPH: Add pcie_tph_modes() to query TPH modes
  PCI/TPH: Add pcie_tph_enabled() to check TPH state

And maybe we can get away without these altogether.  I mentioned
pcie_tph_modes() elsewhere; seems possibly unnecessary since drivers
can just request the mode they want and we'll fail if it's not
supported.

Drivers should also be able to remember whether they enabled TPH
successfully without us having to remind them.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help