All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frank Li <Frank.li@nxp.com>
To: manivannan.sadhasivam@linaro.org
Cc: "Shuai Xue" <xueshuai@linux.alibaba.com>,
	"Jing Zhang" <renyu.zj@linux.alibaba.com>,
	"Will Deacon" <will@kernel.org>,
	"Mark Rutland" <mark.rutland@arm.com>,
	"Jingoo Han" <jingoohan1@gmail.com>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
	"Krzysztof Wilczyński" <kw@linux.com>,
	"Rob Herring" <robh@kernel.org>,
	"Shradha Todi" <shradha.t@samsung.com>,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-perf-users@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH 0/4] PCI: dwc: Add PTM sysfs support
Date: Tue, 18 Feb 2025 11:17:03 -0500	[thread overview]
Message-ID: <Z7Syf2LXEuKFToV4@lizhi-Precision-Tower-5810> (raw)
In-Reply-To: <20250218-pcie-qcom-ptm-v1-0-16d7e480d73e@linaro.org>

On Tue, Feb 18, 2025 at 08:06:39PM +0530, Manivannan Sadhasivam via B4 Relay wrote:
> Hi,
>
> This series adds sysfs support for PCIe PTM in Synopsys Designware IPs.
>
> First patch moves the common DWC struct definitions (dwc_pcie_vsec_id) to
> include/pci/pcie-dwc.h from dwc-pcie-pmu driver. This allows reusing the same
> definitions in pcie-designware-sysfs driver introduced in this series and also
> in the debugfs series by Shradha [1].
>
> Second patch adds support for searching the Vendor Specific Extended Capability
> (VSEC) in the pcie-designware driver. This patch was originally based on
> Shradha's patch [2], but modified to accept 'struct dwc_pcie_vsec_id' to avoid
> iterating through the vsec_ids in the driver.
>
> Third patch adds the actual sysfs support for PTM in a new file
> pcie-designware-sysfs.c built along with pcie-designware.c.
>
> Finally, fourth patch masks the PTM_UPDATING interrupt in the pcie-qcom-ep
> driver to avoid processing the interrupt for each PTM context update.
>
> Testing
> =======
>
> This series is tested on Qcom SA8775p Ride Mx platform where one SA8775p acts as
> RC and another as EP with following instructions:
>
> RC
> --
>
> $ echo 1 > /sys/devices/platform/1c10000.pcie/dwc/ptm/ptm_context_valid
>
> EP
> --
>
> $ echo auto > /sys/devices/platform/1c10000.pcie-ep/dwc/ptm/ptm_context_update
>
> $ cat /sys/devices/platform/1c10000.pcie-ep/dwc/ptm/ptm_local_clock
> 159612570424
>
> $ cat /sys/devices/platform/1c10000.pcie-ep/dwc/ptm/ptm_master_clock
> 159609466232
>
> $ cat /sys/devices/platform/1c10000.pcie-ep/dwc/ptm/ptm_t1
> 159609466112
>
> $ cat /sys/devices/platform/1c10000.pcie-ep/dwc/ptm/ptm_t4
> 159609466518


I am not sure what real means by only show these number. It is quite
similar to network 1588, ptp. There were already linux-ptp
https://www.kernel.org/doc/html/v5.5/driver-api/ptp.html

Can we use similar method to sync local timer to master? I think it is real
purpuse of PTM.

Frank

>
> NOTE: To make use of the PTM feature, the host PCIe client driver has to call
> 'pci_enable_ptm()' API during probe. This series was tested with enabling PTM in
> the MHI host driver with a local change (which will be upstreamed later).
> Technically, PTM could also be enabled in the pci_endpoint_test driver, but I
> didn't add the change as I'm not sure we'd want to add random PCIe features in
> the test driver without corresponding code in pci-epf-test driver.
>
> Merging Strategy
> ================
>
> I'd like to have an ACK from the perf maintainers to take the whole series
> through PCI tree.
>
> [1] https://lore.kernel.org/linux-pci/20250214105007.97582-1-shradha.t@samsung.com
> [2] https://lore.kernel.org/linux-pci/20250214105007.97582-2-shradha.t@samsung.com
>
> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> ---
> Manivannan Sadhasivam (4):
>       perf/dwc_pcie: Move common DWC struct definitions to 'pcie-dwc.h'
>       PCI: dwc: Add helper to find the Vendor Specific Extended Capability (VSEC)
>       PCI: dwc: Add sysfs support for PTM
>       PCI: qcom-ep: Mask PTM_UPDATING interrupt
>
>  Documentation/ABI/testing/sysfs-platform-dwc-pcie  |  70 ++++++
>  MAINTAINERS                                        |   2 +
>  drivers/pci/controller/dwc/Makefile                |   2 +-
>  drivers/pci/controller/dwc/pcie-designware-ep.c    |   3 +
>  drivers/pci/controller/dwc/pcie-designware-host.c  |   4 +
>  drivers/pci/controller/dwc/pcie-designware-sysfs.c | 278 +++++++++++++++++++++
>  drivers/pci/controller/dwc/pcie-designware.c       |  46 ++++
>  drivers/pci/controller/dwc/pcie-designware.h       |  22 ++
>  drivers/pci/controller/dwc/pcie-qcom-ep.c          |   8 +
>  drivers/perf/dwc_pcie_pmu.c                        |  23 +-
>  include/linux/pcie-dwc.h                           |  42 ++++
>  11 files changed, 478 insertions(+), 22 deletions(-)
> ---
> base-commit: 2014c95afecee3e76ca4a56956a936e23283f05b
> change-id: 20250218-pcie-qcom-ptm-bf6952f5c4e5
>
> Best regards,
> --
> Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
>
>


  parent reply	other threads:[~2025-02-18 16:24 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-18 14:36 [PATCH 0/4] PCI: dwc: Add PTM sysfs support Manivannan Sadhasivam
2025-02-18 14:36 ` Manivannan Sadhasivam via B4 Relay
2025-02-18 14:36 ` [PATCH 1/4] perf/dwc_pcie: Move common DWC struct definitions to 'pcie-dwc.h' Manivannan Sadhasivam
2025-02-18 14:36   ` Manivannan Sadhasivam via B4 Relay
2025-02-18 16:31   ` Dmitry Baryshkov
2025-02-19  7:55     ` Manivannan Sadhasivam
2025-02-20  6:01   ` Shradha Todi
2025-02-20  7:27     ` Manivannan Sadhasivam
2025-02-18 14:36 ` [PATCH 2/4] PCI: dwc: Add helper to find the Vendor Specific Extended Capability (VSEC) Manivannan Sadhasivam
2025-02-18 14:36   ` Manivannan Sadhasivam via B4 Relay
2025-02-18 14:36 ` [PATCH 3/4] PCI: dwc: Add sysfs support for PTM Manivannan Sadhasivam
2025-02-18 14:36   ` Manivannan Sadhasivam via B4 Relay
2025-02-18 17:54   ` Dmitry Baryshkov
2025-02-19  8:14     ` Manivannan Sadhasivam
2025-02-18 14:36 ` [PATCH 4/4] PCI: qcom-ep: Mask PTM_UPDATING interrupt Manivannan Sadhasivam
2025-02-18 14:36   ` Manivannan Sadhasivam via B4 Relay
2025-02-18 16:17 ` Frank Li [this message]
2025-02-19  7:49   ` [PATCH 0/4] PCI: dwc: Add PTM sysfs support Manivannan Sadhasivam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z7Syf2LXEuKFToV4@lizhi-Precision-Tower-5810 \
    --to=frank.li@nxp.com \
    --cc=bhelgaas@google.com \
    --cc=jingoohan1@gmail.com \
    --cc=kw@linux.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=mark.rutland@arm.com \
    --cc=renyu.zj@linux.alibaba.com \
    --cc=robh@kernel.org \
    --cc=shradha.t@samsung.com \
    --cc=will@kernel.org \
    --cc=xueshuai@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.