Message ID | 20230111114337.24782-4-quic_sibis@quicinc.com |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | Fix XPU violation during modem metadata authentication | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success | |
robh/patch-applied | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On Wed, 11 Jan 2023 17:13:30 +0530, Sibi Sankar wrote: > The dynamic memory region used for metadata authentication would still > be a part of the kernel mapping and any access to this region by the > application processor after assigning it to the remote Q6 will result > in a XPU violation. This is fixed by using a no-map carveout instead. > Update the bindings to reflect the addition of the new modem metadata > carveout on SC7180 SoC. > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> > --- > > v3: > * remove double space [Krzysztof] > * Pickup R-b > > v2: > * Pad commit message to explain bindings break [Krzysztof] > * Split dt/bindings per SoC [Krzysztof] > > .../devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > Running 'make dtbs_check' with the schema in this patch gives the following warnings. Consider if they are expected or the schema is incorrect. These may not be new warnings. Note that it is not yet a requirement to have 0 warnings for dtbs_check. This will change in the future. Full log is available here: https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230111114337.24782-4-quic_sibis@quicinc.com remoteproc@4080000: memory-region: [[105], [106]] is too short arch/arm64/boot/dts/qcom/sc7180-idp.dtb remoteproc@4080000: memory-region: [[122], [123]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-quackingstick-r0-lte.dtb remoteproc@4080000: memory-region: [[123], [124]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev0-auo.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev0-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev1-auo.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev1-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-quackingstick-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev0-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev0-inx.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-boe-rt5682s.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-inx.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-inx-rt5682s.dtb remoteproc@4080000: memory-region: [[128], [129]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel360-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel360-wifi.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-lte-parade.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-parade.dtb remoteproc@4080000: memory-region: [[129], [130]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-lte-ti.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-ti.dtb remoteproc@4080000: memory-region: [[130], [131]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r5.dtb remoteproc@4080000: memory-region: [[131], [132]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r2.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-kingoftown-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9-lte.dtb remoteproc@4080000: memory-region: [[132], [133]] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-kingoftown-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-r1-lte.dtb remoteproc@4080000: qcom,halt-regs:0: [110] is too short arch/arm64/boot/dts/qcom/sc7180-idp.dtb remoteproc@4080000: qcom,halt-regs:0: [127] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-quackingstick-r0-lte.dtb remoteproc@4080000: qcom,halt-regs:0: [128] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev0-auo.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev0-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev1-auo.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-mrbland-rev1-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-quackingstick-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev0-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev0-inx.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-boe.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-boe-rt5682s.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-inx.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-wormdingler-rev1-inx-rt5682s.dtb remoteproc@4080000: qcom,halt-regs:0: [133] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel360-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel360-wifi.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-lte-parade.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-parade.dtb remoteproc@4080000: qcom,halt-regs:0: [134] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-lte-ti.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pazquel-ti.dtb remoteproc@4080000: qcom,halt-regs:0: [135] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r5.dtb remoteproc@4080000: qcom,halt-regs:0: [136] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r2.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-kingoftown-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9-lte.dtb remoteproc@4080000: qcom,halt-regs:0: [137] is too short arch/arm64/boot/dts/qcom/sc7180-trogdor-homestar-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-kingoftown-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-r4.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3-lte.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dtb arch/arm64/boot/dts/qcom/sc7180-trogdor-r1-lte.dtb
On Wed, Jan 11, 2023 at 05:13:30PM +0530, Sibi Sankar wrote: > The dynamic memory region used for metadata authentication would still > be a part of the kernel mapping and any access to this region by the > application processor after assigning it to the remote Q6 will result > in a XPU violation. This is fixed by using a no-map carveout instead. > Update the bindings to reflect the addition of the new modem metadata > carveout on SC7180 SoC. > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> > --- > > v3: > * remove double space [Krzysztof] > * Pickup R-b > > v2: > * Pad commit message to explain bindings break [Krzysztof] > * Split dt/bindings per SoC [Krzysztof] > > .../devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > index e4a7da8020f4..b1402bef0ebe 100644 > --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > @@ -95,6 +95,7 @@ properties: > items: > - description: MBA reserved region > - description: modem reserved region > + - description: metadata reserved region Based on dtbs_check, looks like you need 'minItems: 2'. > > firmware-name: > $ref: /schemas/types.yaml#/definitions/string-array > @@ -223,7 +224,7 @@ examples: > <&rpmhpd SC7180_MSS>; > power-domain-names = "cx", "mx", "mss"; > > - memory-region = <&mba_mem>, <&mpss_mem>; > + memory-region = <&mba_mem>, <&mpss_mem>, <&mdata_mem>; > > qcom,qmp = <&aoss_qmp>; > > -- > 2.17.1 >
On Thu, Jan 12, 2023 at 2:17 PM Rob Herring <robh@kernel.org> wrote: > > On Wed, Jan 11, 2023 at 05:13:30PM +0530, Sibi Sankar wrote: > > The dynamic memory region used for metadata authentication would still > > be a part of the kernel mapping and any access to this region by the > > application processor after assigning it to the remote Q6 will result > > in a XPU violation. This is fixed by using a no-map carveout instead. > > Update the bindings to reflect the addition of the new modem metadata > > carveout on SC7180 SoC. > > > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com> > > --- > > > > v3: > > * remove double space [Krzysztof] > > * Pickup R-b > > > > v2: > > * Pad commit message to explain bindings break [Krzysztof] > > * Split dt/bindings per SoC [Krzysztof] > > > > .../devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > > index e4a7da8020f4..b1402bef0ebe 100644 > > --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > > +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml > > @@ -95,6 +95,7 @@ properties: > > items: > > - description: MBA reserved region > > - description: modem reserved region > > + - description: metadata reserved region > > Based on dtbs_check, looks like you need 'minItems: 2'. NM, I see those are all sc7180. Acked-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml index e4a7da8020f4..b1402bef0ebe 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml @@ -95,6 +95,7 @@ properties: items: - description: MBA reserved region - description: modem reserved region + - description: metadata reserved region firmware-name: $ref: /schemas/types.yaml#/definitions/string-array @@ -223,7 +224,7 @@ examples: <&rpmhpd SC7180_MSS>; power-domain-names = "cx", "mx", "mss"; - memory-region = <&mba_mem>, <&mpss_mem>; + memory-region = <&mba_mem>, <&mpss_mem>, <&mdata_mem>; qcom,qmp = <&aoss_qmp>;