summaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/parallel-perf.py
diff options
context:
space:
mode:
authorDamien Le Moal <dlemoal@kernel.org>2024-10-17 10:58:47 +0900
committerBjorn Helgaas <bhelgaas@google.com>2024-11-25 13:18:36 -0600
commitbd6e61df4b2e69985daa312ce28b6af629b30870 (patch)
treef89148e5991349585da495373c28a63b4c5077ed /tools/perf/scripts/python/parallel-perf.py
parent00080d0887df8c197c5b89e38215c14980eae544 (diff)
downloadlinux-stable-bd6e61df4b2e69985daa312ce28b6af629b30870.tar.gz
linux-stable-bd6e61df4b2e69985daa312ce28b6af629b30870.tar.bz2
linux-stable-bd6e61df4b2e69985daa312ce28b6af629b30870.zip
PCI: rockchip-ep: Improve link training
The Rockchip RK3399 TRM V1.3 Part2, Section 17.5.8.1.2, step 7, describes the endpoint mode link training process clearly and states that: Insure link training completion and success by observing link_st field in PCIe Client BASIC_STATUS1 register change to 2'b11. If both side support PCIe Gen2 speed, re-train can be Initiated by asserting the Retrain Link field in Link Control and Status Register. The software should insure the BASIC_STATUS0[negotiated_speed] changes to "1", that indicates re-train to Gen2 successfully. This procedure is very similar to what is done for the root-port mode in rockchip_pcie_host_init_port(). Implement this link training procedure for the endpoint mode as well. Given that the RK3399 SoC does not have an interrupt signaling link status changes, training is implemented as a delayed work which is rescheduled until the link training completes or the endpoint controller is stopped. The link training work is first scheduled in rockchip_pcie_ep_start() when the endpoint function is started. Link training completion is signaled to the function using pci_epc_linkup(). Accordingly, the linkup_notifier field of the Rockchip pci_epc_features structure is changed to true. Link: https://lore.kernel.org/r/20241017015849.190271-13-dlemoal@kernel.org Signed-off-by: Damien Le Moal <dlemoal@kernel.org> [kwilczynski: update log messages to make them consistent] Signed-off-by: Krzysztof WilczyƄski <kwilczynski@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'tools/perf/scripts/python/parallel-perf.py')
0 files changed, 0 insertions, 0 deletions