The SoC Control Processor (SoCCP) is small RISC-V MCU that controls
USB Type-C, battery charging and various other functions on Qualcomm SoCs.
It provides a solution for control-plane processing, reducing per-subsystem
microcontroller reinvention. Add support for SoCCP PAS loader on Kaanapali
platform.

Signed-off-by: Jingyi Wang <[email protected]>
---
 drivers/remoteproc/qcom_q6v5_pas.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/remoteproc/qcom_q6v5_pas.c 
b/drivers/remoteproc/qcom_q6v5_pas.c
index b667c11aadb5..c470b139afd1 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -1515,7 +1515,25 @@ static const struct qcom_pas_data sm8750_mpss_resource = 
{
        .region_assign_vmid = QCOM_SCM_VMID_MSS_MSA,
 };
 
+static const struct qcom_pas_data kaanapali_soccp_resource = {
+       .crash_reason_smem = 656,
+       .firmware_name = "soccp.mbn",
+       .dtb_firmware_name = "soccp_dtb.mbn",
+       .pas_id = 51,
+       .dtb_pas_id = 0x41,
+       .proxy_pd_names = (char*[]){
+               "cx",
+               "mx",
+               NULL
+       },
+       .ssr_name = "soccp",
+       .sysmon_name = "soccp",
+       .auto_boot = true,
+       .early_boot = true,
+};
+
 static const struct of_device_id qcom_pas_of_match[] = {
+       { .compatible = "qcom,kaanapali-soccp-pas", .data = 
&kaanapali_soccp_resource},
        { .compatible = "qcom,milos-adsp-pas", .data = &sm8550_adsp_resource},
        { .compatible = "qcom,milos-cdsp-pas", .data = &milos_cdsp_resource},
        { .compatible = "qcom,milos-mpss-pas", .data = &sm8450_mpss_resource},

-- 
2.25.1


Reply via email to