Message ID | 1710166298-27144-1-git-send-email-quic_msarkar@quicinc.com (mailing list archive) |
---|---|
Headers | show |
Series | arm64: qcom: sa8775p: add cache coherency support for SA8775P | expand |
Hello, > 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 no cache coherency issues exist 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/20240306-dw-hdma-v4-4-9fed506e95be@linaro.org/ [1] Applied to qcom, thank you! [01/02] PCI: qcom: Override NO_SNOOP attribute for SA8775P RC https://git.kernel.org/pci/pci/c/a51da87be9db [02/02] PCI: qcom-ep: Override NO_SNOOP attribute for SA8775P EP https://git.kernel.org/pci/pci/c/ce38ead6a0ed Krzysztof
On Mon, 11 Mar 2024 19:41:34 +0530, Mrinmay Sarkar wrote: > 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 no cache coherency issues exist 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. > > [...] Applied, thanks! [3/3] arm64: dts: qcom: sa8775p: Mark PCIe EP controller as cache coherent commit: 4b220c6fa9f379cb8803dbca73ae1f4128dfa5c8 Best regards,