[PATCH v2 0/3] PCI: qcom: Program T_POWER_ON value for L1.2 exit timing

Krishna Chaitanya Chundru posted 3 patches 1 month, 3 weeks ago
There is a newer version of this series
drivers/pci/controller/dwc/pcie-designware.c | 27 +++++++++++++++++
drivers/pci/controller/dwc/pcie-designware.h |  1 +
drivers/pci/controller/dwc/pcie-qcom.c       | 15 ++++++++++
drivers/pci/pcie/aspm.c                      | 43 ++++++++++++++++++++++++++++
include/linux/pci.h                          |  2 ++
5 files changed, 88 insertions(+)
[PATCH v2 0/3] PCI: qcom: Program T_POWER_ON value for L1.2 exit timing
Posted by Krishna Chaitanya Chundru 1 month, 3 weeks ago
The T_POWER_ON indicates the time (in μs) that a Port requires the port
on the opposite side of Link to wait in L1.2.Exit after sampling CLKREQ#
asserted before actively driving the interface. This value is used by
the ASPM driver to compute the LTR_L1.2_THRESHOLD.

Currently, qcom root port exposes T_POWER_ON value of zero in the L1SS
capability registers, leading to incorrect LTR_L1.2_THRESHOLD calculations,
which can result in improper L1.2 exit behavior and can trigger AER's.

In this series, qcom controller drivers read the devicetree property
"t-power-on" which got merged recently[1], and use that value to over
write default/wrong value.

To convert T_POWER_ON in to T_POWER_ON_SCALE & T_POWER_ON_VALUE created
a pcie_encode_t_power_on() helper in aspm.c and also created
dw_pcie_program_t_power_on() helper for other drivers to use these
helpers.

Link [1]: https://lore.kernel.org/all/20260205093346.667898-1-krishna.chundru@oss.qualcomm.com/

Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
---
Changes in v2:
- Instead of hard coding the values in the driver, created a devicetree
  property "t-power-on" to program it (Bjorn & Mani).
- Link to v1: https://lore.kernel.org/r/20251104-t_power_on_fux-v1-1-eb5916e47fd7@oss.qualcomm.com

---
Krishna Chaitanya Chundru (3):
      PCI/ASPM: Add helper to encode L1SS T_POWER_ON fields
      PCI: dwc: Add helper to Program T_POWER_ON
      PCI: qcom: Program T_POWER_ON

 drivers/pci/controller/dwc/pcie-designware.c | 27 +++++++++++++++++
 drivers/pci/controller/dwc/pcie-designware.h |  1 +
 drivers/pci/controller/dwc/pcie-qcom.c       | 15 ++++++++++
 drivers/pci/pcie/aspm.c                      | 43 ++++++++++++++++++++++++++++
 include/linux/pci.h                          |  2 ++
 5 files changed, 88 insertions(+)
---
base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
change-id: 20251104-t_power_on_fux-70dc68377941

Best regards,
-- 
Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>