From: Mrinmay Sarkar <quic_msarkar@quicinc.com>
To: andersson@kernel.org, krzysztof.kozlowski+dt@linaro.org,
conor+dt@kernel.org, konrad.dybcio@linaro.org,
manivannan.sadhasivam@linaro.org, robh@kernel.org
Cc: quic_shazhuss@quicinc.com, quic_nitegupt@quicinc.com,
quic_ramkri@quicinc.com, quic_nayiluri@quicinc.com,
dmitry.baryshkov@linaro.org, quic_krichai@quicinc.com,
quic_vbadigan@quicinc.com, quic_schintav@quicinc.com,
"Mrinmay Sarkar" <quic_msarkar@quicinc.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Krzysztof Wilczyński" <kw@linux.com>,
"Bjorn Helgaas" <bhelgaas@google.com>,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org
Subject: [PATCH v5 0/3] arm64: qcom: sa8775p: add cache coherency support for SA8775P
Date: Fri, 23 Feb 2024 19:33:37 +0530 [thread overview]
Message-ID: <1708697021-16877-1-git-send-email-quic_msarkar@quicinc.com> (raw)
Due to some hardware changes, SA8775P has set the NO_SNOOP attribute
in its TLP for all the PCIe controllers. NO_SNOOP attribute when set,
the requester is indicating that there no cache coherency issues exit
for the addressed memory on the host i.e., memory is not cached. But
in reality, requester cannot assume this unless there is a complete
control/visibility over the addressed memory on the host.
And worst case, if the memory is cached on the host, it may lead to
memory corruption issues. It should be noted that the caching of memory
on the host is not solely dependent on the NO_SNOOP attribute in TLP.
So to avoid the corruption, this patch overrides the NO_SNOOP attribute
by setting the PCIE_PARF_NO_SNOOP_OVERIDE register. This patch is not
needed for other upstream supported platforms since they do not set
NO_SNOOP attribute by default.
This series is to enable cache snooping logic in both RC and EP driver
and add the "dma-coherent" property in dtsi to support cache coherency
in SA8775P platform.
Dependency
----------
Depends on:
https://lore.kernel.org/all/1701432377-16899-1-git-send-email-quic_msarkar@quicinc.com/
https://lore.kernel.org/all/20240216-dw-hdma-v2-4-b42329003f43@linaro.org/ [1]
V4 -> V5:
- Updated commit message in both Patch1 and patch2
- change variable name from no_snoop_override to
enable_cache_snoop
- rebased patch2 on top of [1]
v3 -> v4:
- added new cfg(cfg_1_34_0) for SA8775P in both RC and EP driver.
- populated a flag in the data structures instead of doing
of_device_is_compatible() in both RC and EP patch.
- update commit mesaage and added reveiwed-by tag in commit message
in dtsi patch.
v2 -> v3:
- update commit message(8755 -> 8775).
v1 -> v2:
- update cover letter with explanation.
- define each of these bits and ORing at usage time rather than
directly writing value in register.
Mrinmay Sarkar (3):
PCI: qcom: Enable cache coherency for SA8775P RC
PCI: qcom-ep: Enable cache coherency for SA8775P EP
arm64: dts: qcom: sa8775p: Mark PCIe EP controller as cache coherent
arch/arm64/boot/dts/qcom/sa8775p.dtsi | 1 +
drivers/pci/controller/dwc/pcie-qcom-ep.c | 20 +++++++++++++++++---
drivers/pci/controller/dwc/pcie-qcom.c | 20 +++++++++++++++++++-
3 files changed, 37 insertions(+), 4 deletions(-)
--
2.40.1
next reply other threads:[~2024-02-23 14:04 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-23 14:03 Mrinmay Sarkar [this message]
2024-02-23 14:03 ` [PATCH v5 1/3] PCI: qcom: Enable cache coherency for SA8775P RC Mrinmay Sarkar
2024-02-23 22:54 ` Bjorn Helgaas
2024-02-28 13:04 ` Mrinmay Sarkar
2024-02-28 15:02 ` Bjorn Helgaas
2024-02-28 17:14 ` Manivannan Sadhasivam
2024-02-28 17:39 ` Bjorn Helgaas
2024-02-28 18:45 ` Manivannan Sadhasivam
2024-02-28 19:34 ` Bjorn Helgaas
2024-03-04 6:00 ` Manivannan Sadhasivam
2024-03-04 6:07 ` Manivannan Sadhasivam
2024-02-23 14:03 ` [PATCH v5 2/3] PCI: qcom-ep: Enable cache coherency for SA8775P EP Mrinmay Sarkar
2024-02-24 0:07 ` Konrad Dybcio
2024-02-28 13:06 ` Mrinmay Sarkar
2024-02-23 14:03 ` [PATCH v5 3/3] arm64: dts: qcom: sa8775p: Mark PCIe EP controller as cache coherent Mrinmay Sarkar
2024-02-24 10:19 ` [PATCH v5 0/3] arm64: qcom: sa8775p: add cache coherency support for SA8775P Krzysztof Kozlowski
2024-02-28 13:07 ` Mrinmay Sarkar
2024-02-28 14:02 ` Krzysztof Kozlowski
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=1708697021-16877-1-git-send-email-quic_msarkar@quicinc.com \
--to=quic_msarkar@quicinc.com \
--cc=andersson@kernel.org \
--cc=bhelgaas@google.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=kw@linux.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=manivannan.sadhasivam@linaro.org \
--cc=quic_krichai@quicinc.com \
--cc=quic_nayiluri@quicinc.com \
--cc=quic_nitegupt@quicinc.com \
--cc=quic_ramkri@quicinc.com \
--cc=quic_schintav@quicinc.com \
--cc=quic_shazhuss@quicinc.com \
--cc=quic_vbadigan@quicinc.com \
--cc=robh@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).