Re: [PATCH 1/4] dt-bindings: remoteproc: qcom: adsp: document sm8550 adsp, cdsp & mpss compatible

From: Neil Armstrong
Date: Thu Nov 17 2022 - 04:22:36 EST


On 16/11/2022 13:28, Krzysztof Kozlowski wrote:
On 16/11/2022 11:20, Neil Armstrong wrote:
This documents the compatible for the component used to boot the
aDSP, cDSP and MPSS on the SM8550 SoC.

The SM8550 boot process on SM8550 now requires a secondary "Devicetree"
firmware to be passed along the main Firmware, and the cDSP a new power
domain named "NSP".

Signed-off-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
---
.../devicetree/bindings/remoteproc/qcom,adsp.yaml | 60 +++++++++++++++++++++-
1 file changed, 59 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index db9e0f0c2bea..678cb73f10de 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -55,6 +55,9 @@ properties:
- qcom,sm8450-cdsp-pas
- qcom,sm8450-mpss-pas
- qcom,sm8450-slpi-pas
+ - qcom,sm8550-adsp-pas
+ - qcom,sm8550-cdsp-pas
+ - qcom,sm8550-mpss-pas
reg:
maxItems: 1
@@ -116,8 +119,13 @@ properties:
$ref: /schemas/types.yaml#/definitions/string
description: Firmware name for the Hexagon core
+ qcom,dtb-firmware-name:
+ $ref: /schemas/types.yaml#/definitions/string
+ description: Devicetree Firmware name for the Hexagon core

Not sure about this one.

Rob,
Don't we want rather to have multiple items in firmware-name?


+
memory-region:
- maxItems: 1
+ minItems: 1
+ maxItems: 2
description: Reference to the reserved-memory for the Hexagon core
qcom,qmp:
@@ -212,6 +220,9 @@ allOf:
- qcom,sm8450-cdsp-pas
- qcom,sm8450-slpi-pas
- qcom,sm8450-mpss-pas
+ - qcom,sm8550-adsp-pas
+ - qcom,sm8550-cdsp-pas
+ - qcom,sm8550-mpss-pas
then:
properties:
clocks:
@@ -327,6 +338,8 @@ allOf:
- qcom,sm8450-adsp-pas
- qcom,sm8450-cdsp-pas
- qcom,sm8450-slpi-pas
+ - qcom,sm8550-adsp-pas
+ - qcom,sm8550-cdsp-pas
then:
properties:
interrupts:
@@ -347,6 +360,7 @@ allOf:
- qcom,sm8150-mpss-pas
- qcom,sm8350-mpss-pas
- qcom,sm8450-mpss-pas
+ - qcom,sm8550-mpss-pas
then:
properties:
interrupts:
@@ -448,6 +462,7 @@ allOf:
- qcom,sm8150-mpss-pas
- qcom,sm8350-mpss-pas
- qcom,sm8450-mpss-pas
+ - qcom,sm8550-mpss-pas
then:
properties:
power-domains:
@@ -475,6 +490,7 @@ allOf:
- qcom,sm8350-slpi-pas
- qcom,sm8450-adsp-pas
- qcom,sm8450-slpi-pas
+ - qcom,sm8550-adsp-pas
then:
properties:
power-domains:
@@ -504,6 +520,25 @@ allOf:
- const: cx
- const: mxc
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - qcom,sm8550-cdsp-pas
+ then:
+ properties:
+ power-domains:
+ items:
+ - description: CX power domain
+ - description: MXC power domain
+ - description: NSP power domain
+ power-domain-names:
+ items:
+ - const: cx
+ - const: mxc
+ - const: nsp
+

You also need to update entry for resets. I think it is missing.

Hmm no, no resets needed for sm8550.


- if:
properties:
compatible:
@@ -573,6 +608,29 @@ allOf:
properties:
qcom,qmp: false
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - qcom,sm8550-adsp-pas
+ - qcom,sm8550-cdsp-pas
+ - qcom,sm8550-mpss-pas
+ then:
+ properties:
+ memory-region:
+ minItems: 2
+ description:
+ First entry is a phandle for a reserved memory area that holds
+ the main Firmware for authentication, and second entry a phandle for a
+ reserved memory area that holds the Devicetree Firmware for authentication.

Instead of minItems and description:
items:
- description: Main Firmware for auth....
- description: Devicetree Firmware....

Ack


+ else:
+ properties:
+ qcom,dtb-firmware-name: false
+
+ memory-region:
+ maxItems: 1
+

I'll rebase on top of 20221116155416.164239-1-krzysztof.kozlowski@xxxxxxxxxx.

Seems I should perhaps add a separate qcom,sm8550-pas.yaml right, or adding the qcom,sm6350-pas.yam would be ok ?


Best regards,
Krzysztof


Thanks,
Neil