On 9/4/24 15:20, Bjorn Helgaas wrote: > 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". Will do > > 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. Can you elaborate on save/restore enhancement? Assuming that the first combined patch will have save/restore support as suggested. Are you talking about the ST entries save/restore as the enhancements (see below), because the second combined patch deals with ST? st_entry = (u16 *)cap; offset = PCI_TPH_BASE_SIZEOF; num_entries = get_st_table_size(pdev); for (i = 0; i < num_entries; i++) { pci_write_config_word(pdev, pdev->tph_cap + offset, *st_entry++); offset += sizeof(u16); } > > 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.