devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V3 00/10] Fix XPU violation during modem metadata authentication
@ 2023-01-11 11:43 Sibi Sankar
  2023-01-11 11:43 ` [PATCH V3 01/10] dt-bindings: remoteproc: qcom,q6v5: Move MSM8996 to schema Sibi Sankar
                   ` (9 more replies)
  0 siblings, 10 replies; 19+ messages in thread
From: Sibi Sankar @ 2023-01-11 11:43 UTC (permalink / raw)
  To: andersson, krzysztof.kozlowski+dt, manivannan.sadhasivam
  Cc: agross, linux-arm-msm, devicetree, linux-kernel, robh+dt,
	konrad.dybcio, amit.pundir, regressions, sumit.semwal, will,
	catalin.marinas, robin.murphy, Sibi Sankar

The memory region allocated using dma_alloc_attr with no kernel mapping
attribute set would still be a part of the linear kernel map. Any access
to this region by the application processor after assigning it to the
remote Q6 will result in a XPU violation. Fix this by replacing the
dynamically allocated memory region with a no-map carveout and unmap the
modem metadata memory region before passing control to the remote Q6.
The addition of the carveout and memunmap is required only on SoCs that
mandate memory protection before transferring control to Q6, hence the
driver falls back to dynamic memory allocation in the absence of the
modem metadata carveout.

V3:
 * remove double space [Krzysztof]
 * Pickup R-bs
 * yaml description rewrite [Krzysztof]
 * fix compatible property [Krzysztof]
 * add blank lines and additionalProperties: false to mba/mpss
   objects
 * add blank lines and additionalProperties: false to mdata
   objects [Krzysztof]
 * Drop revert no_kernel_mapping since it's already on the list [Mani]
 * kfree metadata from the branch for parity

V2:
 * Convert legacy bindings to yaml
 * Revert no_kernel_mapping [Mani/Robin]
 * Pad commit message to explain bindings break [Krzysztof]
 * Split dt/bindings per SoC [Krzysztof] 

Depends on:
[revert no_kernel_mapping]: https://lore.kernel.org/linux-arm-msm/20221223092703.61927-2-hch@lst.de/

Sibi Sankar (10):
  dt-bindings: remoteproc: qcom,q6v5: Move MSM8996 to schema
  dt-bindings: remoteproc: qcom,msm8996-mss-pil: Update memory region
  dt-bindings: remoteproc: qcom,sc7180-mss-pil: Update memory-region
  dt-bindings: remoteproc: qcom,sc7280-mss-pil: Update memory-region
  remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem
    headers
  arm64: dts: qcom: msm8996: Add a carveout for modem metadata
  arm64: dts: qcom: msm8998: Add a carveout for modem metadata
  arm64: dts: qcom: sdm845: Add a carveout for modem metadata
  arm64: dts: qcom: sc7180: Add a carveout for modem metadata
  arm64: dts: qcom: sc7280: Add a carveout for modem metadata

 .../remoteproc/qcom,msm8996-mss-pil.yaml      | 393 ++++++++++++++++++
 .../bindings/remoteproc/qcom,q6v5.txt         | 137 +-----
 .../remoteproc/qcom,sc7180-mss-pil.yaml       |   3 +-
 .../remoteproc/qcom,sc7280-mss-pil.yaml       |   3 +-
 .../boot/dts/qcom/msm8996-xiaomi-common.dtsi  |   6 +
 arch/arm64/boot/dts/qcom/msm8996.dtsi         |   9 +
 arch/arm64/boot/dts/qcom/msm8998.dtsi         |   9 +
 arch/arm64/boot/dts/qcom/sc7180-idp.dts       |   7 +-
 arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  |   7 +-
 .../dts/qcom/sc7280-herobrine-lte-sku.dtsi    |   7 +-
 arch/arm64/boot/dts/qcom/sdm845.dtsi          |   9 +
 drivers/remoteproc/qcom_q6v5_mss.c            |  48 ++-
 12 files changed, 495 insertions(+), 143 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,msm8996-mss-pil.yaml

-- 
2.17.1


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2023-01-12 20:50 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-11 11:43 [PATCH V3 00/10] Fix XPU violation during modem metadata authentication Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 01/10] dt-bindings: remoteproc: qcom,q6v5: Move MSM8996 to schema Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 02/10] dt-bindings: remoteproc: qcom,msm8996-mss-pil: Update memory region Sibi Sankar
2023-01-12  9:18   ` Krzysztof Kozlowski
2023-01-11 11:43 ` [PATCH V3 03/10] dt-bindings: remoteproc: qcom,sc7180-mss-pil: Update memory-region Sibi Sankar
2023-01-11 13:29   ` Rob Herring
2023-01-12 20:17   ` Rob Herring
2023-01-12 20:19     ` Rob Herring
2023-01-11 11:43 ` [PATCH V3 04/10] dt-bindings: remoteproc: qcom,sc7280-mss-pil: " Sibi Sankar
2023-01-11 13:29   ` Rob Herring
2023-01-11 11:43 ` [PATCH V3 05/10] remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers Sibi Sankar
2023-01-11 11:54   ` Manivannan Sadhasivam
2023-01-11 12:28     ` Sibi Sankar
2023-01-11 17:40       ` Manivannan Sadhasivam
2023-01-11 11:43 ` [PATCH V3 06/10] arm64: dts: qcom: msm8996: Add a carveout for modem metadata Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 07/10] arm64: dts: qcom: msm8998: " Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 08/10] arm64: dts: qcom: sdm845: " Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 09/10] arm64: dts: qcom: sc7180: " Sibi Sankar
2023-01-11 11:43 ` [PATCH V3 10/10] arm64: dts: qcom: sc7280: " Sibi Sankar

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).