mbox series

[v3,0/5] remoteproc: qcom_q6v5_pas: add support for SM8550 adsp, cdsp & mpss

Message ID 20221114-narmstrong-sm8550-upstream-remoteproc-v3-0-62162a1df718@linaro.org (mailing list archive)
Headers show
Series remoteproc: qcom_q6v5_pas: add support for SM8550 adsp, cdsp & mpss | expand

Message

Neil Armstrong Dec. 7, 2022, 7:23 p.m. UTC
This patchsets adds support for the aDSP, cDSP and MPSS found in the
SM8550 SoC.

The aDSP, cDSP and MPSS 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".

In order to satisfy the load & authentication order required by the SM8550
SoC, the following is implemented:
- "Devicetree" firmware request & load in dedicated memory
- Q6V5 prepare
- Power Domain & Clocks enable
- "Devicetree" firmware authentication
- Main firmware load in dedicated memory
- Main firmware authentication
- Q6V5 startup
- "Devicetree" firmware metadata release
- Main metadata release

When booting older platforms, the "Devicetree" steps would be
bypassed and the load & authentication order would still be valid.

Bindings changes depends on:
- https://lore.kernel.org/all/20221124184333.133911-1-krzysztof.kozlowski@linaro.org/

To: Andy Gross <agross@kernel.org>
To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konrad.dybcio@somainline.org>
To: Mathieu Poirier <mathieu.poirier@linaro.org>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
To: Manivannan Sadhasivam <mani@kernel.org>
To: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
To: Amol Maheshwari <amahesh@qti.qualcomm.com>
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-remoteproc@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: Abel Vesa <abel.vesa@linaro.org>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>

---
Changes in v3:
- fix mpss matching in bindings, tested against DT
- Link to v2: https://lore.kernel.org/r/20221114-narmstrong-sm8550-upstream-remoteproc-v2-0-12bc22255474@linaro.org

Changes in v2:
- Moved the SM8550 pas bindings on top of "split and reorganize PAS/PIL" v3 patchset 
- Incorporated DSM memory support into pas bindings & driver
- Moved second DTB firmware into second entry of firmware-name
- Dropped applied "qcom,fastrpc: increase allowed iommus entries" patch
- Link to v1: https://lore.kernel.org/r/20221114-narmstrong-sm8550-upstream-remoteproc-v1-0-104c34cb3b91@linaro.org

---
Neil Armstrong (5):
      dt-bindings: remoteproc: qcom: adsp: move memory-region and firmware-name out of pas-common
      dt-bindings: remoteproc: qcom: adsp: document sm8550 adsp, cdsp & mpss compatible
      remoteproc: qcom_q6v5_pas: add support for dtb co-firmware loading
      remoteproc: qcom_q6v5_pas: add support for assigning memory to firmware
      remoteproc: qcom_q6v5_pas: add sm8550 adsp, cdsp & mpss compatible & data

 .../devicetree/bindings/remoteproc/qcom,adsp.yaml  |   4 +
 .../bindings/remoteproc/qcom,pas-common.yaml       |   8 -
 .../bindings/remoteproc/qcom,qcs404-pas.yaml       |   8 +
 .../bindings/remoteproc/qcom,sc7180-pas.yaml       |   8 +
 .../bindings/remoteproc/qcom,sc8180x-pas.yaml      |   8 +
 .../bindings/remoteproc/qcom,sc8280xp-pas.yaml     |   8 +
 .../bindings/remoteproc/qcom,sdx55-pas.yaml        |   8 +
 .../bindings/remoteproc/qcom,sm6350-pas.yaml       |   8 +
 .../bindings/remoteproc/qcom,sm8150-pas.yaml       |   8 +
 .../bindings/remoteproc/qcom,sm8350-pas.yaml       |   8 +
 .../bindings/remoteproc/qcom,sm8550-pas.yaml       | 178 ++++++++++++++
 drivers/remoteproc/qcom_q6v5_pas.c                 | 271 ++++++++++++++++++++-
 12 files changed, 504 insertions(+), 21 deletions(-)
---
base-commit: 268975e1af25cd83994d24c46ad0d95753291f64
change-id: 20221114-narmstrong-sm8550-upstream-remoteproc-804f3fbb34bf

Best regards,

Comments

Neil Armstrong Jan. 9, 2023, 10:08 a.m. UTC | #1
On 07/12/2022 20:23, Neil Armstrong wrote:
> This patchsets adds support for the aDSP, cDSP and MPSS found in the
> SM8550 SoC.
> 
> The aDSP, cDSP and MPSS 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".
> 
> In order to satisfy the load & authentication order required by the SM8550
> SoC, the following is implemented:
> - "Devicetree" firmware request & load in dedicated memory
> - Q6V5 prepare
> - Power Domain & Clocks enable
> - "Devicetree" firmware authentication
> - Main firmware load in dedicated memory
> - Main firmware authentication
> - Q6V5 startup
> - "Devicetree" firmware metadata release
> - Main metadata release
> 
> When booting older platforms, the "Devicetree" steps would be
> bypassed and the load & authentication order would still be valid.
> 
> Bindings changes depends on:
> - https://lore.kernel.org/all/20221124184333.133911-1-krzysztof.kozlowski@linaro.org/
> 
> To: Andy Gross <agross@kernel.org>
> To: Bjorn Andersson <andersson@kernel.org>
> To: Konrad Dybcio <konrad.dybcio@somainline.org>
> To: Mathieu Poirier <mathieu.poirier@linaro.org>
> To: Rob Herring <robh+dt@kernel.org>
> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> To: Manivannan Sadhasivam <mani@kernel.org>
> To: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
> To: Amol Maheshwari <amahesh@qti.qualcomm.com>
> Cc: linux-arm-msm@vger.kernel.org
> Cc: linux-remoteproc@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Cc: Abel Vesa <abel.vesa@linaro.org>
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> 
> ---
> Changes in v3:
> - fix mpss matching in bindings, tested against DT
> - Link to v2: https://lore.kernel.org/r/20221114-narmstrong-sm8550-upstream-remoteproc-v2-0-12bc22255474@linaro.org
> 
> Changes in v2:
> - Moved the SM8550 pas bindings on top of "split and reorganize PAS/PIL" v3 patchset
> - Incorporated DSM memory support into pas bindings & driver
> - Moved second DTB firmware into second entry of firmware-name
> - Dropped applied "qcom,fastrpc: increase allowed iommus entries" patch
> - Link to v1: https://lore.kernel.org/r/20221114-narmstrong-sm8550-upstream-remoteproc-v1-0-104c34cb3b91@linaro.org
> 
> ---
> Neil Armstrong (5):
>        dt-bindings: remoteproc: qcom: adsp: move memory-region and firmware-name out of pas-common
>        dt-bindings: remoteproc: qcom: adsp: document sm8550 adsp, cdsp & mpss compatible
>        remoteproc: qcom_q6v5_pas: add support for dtb co-firmware loading
>        remoteproc: qcom_q6v5_pas: add support for assigning memory to firmware
>        remoteproc: qcom_q6v5_pas: add sm8550 adsp, cdsp & mpss compatible & data
> 
>   .../devicetree/bindings/remoteproc/qcom,adsp.yaml  |   4 +
>   .../bindings/remoteproc/qcom,pas-common.yaml       |   8 -
>   .../bindings/remoteproc/qcom,qcs404-pas.yaml       |   8 +
>   .../bindings/remoteproc/qcom,sc7180-pas.yaml       |   8 +
>   .../bindings/remoteproc/qcom,sc8180x-pas.yaml      |   8 +
>   .../bindings/remoteproc/qcom,sc8280xp-pas.yaml     |   8 +
>   .../bindings/remoteproc/qcom,sdx55-pas.yaml        |   8 +
>   .../bindings/remoteproc/qcom,sm6350-pas.yaml       |   8 +
>   .../bindings/remoteproc/qcom,sm8150-pas.yaml       |   8 +
>   .../bindings/remoteproc/qcom,sm8350-pas.yaml       |   8 +
>   .../bindings/remoteproc/qcom,sm8550-pas.yaml       | 178 ++++++++++++++
>   drivers/remoteproc/qcom_q6v5_pas.c                 | 271 ++++++++++++++++++++-
>   12 files changed, 504 insertions(+), 21 deletions(-)
> ---
> base-commit: 268975e1af25cd83994d24c46ad0d95753291f64
> change-id: 20221114-narmstrong-sm8550-upstream-remoteproc-804f3fbb34bf
> 
> Best regards,

Gentle ping,

Thanks,
Neil