diff mbox series

[v7,3/4] remoteproc: qcom: pas: Add SM8650 remoteproc support

Message ID 20240123-topic-sm8650-upstream-remoteproc-v7-3-61283f50162f@linaro.org (mailing list archive)
State Not Applicable
Headers show
Series remoteproc: qcom: Introduce DSP support for SM8650 | expand

Commit Message

Neil Armstrong Jan. 23, 2024, 8:51 a.m. UTC
Add DSP Peripheral Authentication Service support for the SM8650 platform.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_pas.c | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

Comments

Mukesh Ojha Jan. 23, 2024, 9:54 a.m. UTC | #1
On 1/23/2024 2:21 PM, Neil Armstrong wrote:
> Add DSP Peripheral Authentication Service support for the SM8650 platform.
> 
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>   drivers/remoteproc/qcom_q6v5_pas.c | 50 ++++++++++++++++++++++++++++++++++++++
>   1 file changed, 50 insertions(+)
> 
> diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
> index 09e8ad9f08c4..d0b1f0f38347 100644
> --- a/drivers/remoteproc/qcom_q6v5_pas.c
> +++ b/drivers/remoteproc/qcom_q6v5_pas.c
> @@ -1213,6 +1213,53 @@ static const struct adsp_data sc7280_wpss_resource = {
>   	.ssctl_id = 0x19,
>   };
>   
> +static const struct adsp_data sm8650_cdsp_resource = {
> +	.crash_reason_smem = 601,
> +	.firmware_name = "cdsp.mdt",
> +	.dtb_firmware_name = "cdsp_dtb.mdt",
> +	.pas_id = 18,
> +	.dtb_pas_id = 0x25,
> +	.minidump_id = 7,
> +	.auto_boot = true,
> +	.proxy_pd_names = (char*[]){
> +		"cx",
> +		"mxc",
> +		"nsp",
> +		NULL
> +	},
> +	.load_state = "cdsp",
> +	.ssr_name = "cdsp",
> +	.sysmon_name = "cdsp",
> +	.ssctl_id = 0x17,
> +	.region_assign_idx = 2,
> +	.region_assign_count = 1,
> +	.region_assign_shared = true,
> +	.region_assign_vmid = QCOM_SCM_VMID_CDSP,
> +};
> +
> +static const struct adsp_data sm8650_mpss_resource = {
> +	.crash_reason_smem = 421,
> +	.firmware_name = "modem.mdt",
> +	.dtb_firmware_name = "modem_dtb.mdt",
> +	.pas_id = 4,
> +	.dtb_pas_id = 0x26,
> +	.minidump_id = 3,
> +	.auto_boot = false,
> +	.decrypt_shutdown = true,
> +	.proxy_pd_names = (char*[]){
> +		"cx",
> +		"mss",
> +		NULL
> +	},
> +	.load_state = "modem",
> +	.ssr_name = "mpss",
> +	.sysmon_name = "modem",
> +	.ssctl_id = 0x12,
> +	.region_assign_idx = 2,
> +	.region_assign_count = 3,

I see this has changed from 2 to 3 after qlink logging addition;

> +	.region_assign_vmid = QCOM_SCM_VMID_MSS_MSA,
> +};
> +
>   static const struct of_device_id adsp_of_match[] = {
>   	{ .compatible = "qcom,msm8226-adsp-pil", .data = &adsp_resource_init},
>   	{ .compatible = "qcom,msm8953-adsp-pil", .data = &msm8996_adsp_resource},
> @@ -1268,6 +1315,9 @@ static const struct of_device_id adsp_of_match[] = {
>   	{ .compatible = "qcom,sm8550-adsp-pas", .data = &sm8550_adsp_resource},
>   	{ .compatible = "qcom,sm8550-cdsp-pas", .data = &sm8550_cdsp_resource},
>   	{ .compatible = "qcom,sm8550-mpss-pas", .data = &sm8550_mpss_resource},
> +	{ .compatible = "qcom,sm8650-adsp-pas", .data = &sm8550_adsp_resource},

Same as sm8550;
> +	{ .compatible = "qcom,sm8650-cdsp-pas", .data = &sm8650_cdsp_resource},
> +	{ .compatible = "qcom,sm8650-mpss-pas", .data = &sm8650_mpss_resource},

LGTM,

Acked-by: Mukesh Ojha <quic_mojha@quicinc.com>

-Mukesh

>   	{ },
>   };
>   MODULE_DEVICE_TABLE(of, adsp_of_match);
>
diff mbox series

Patch

diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 09e8ad9f08c4..d0b1f0f38347 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -1213,6 +1213,53 @@  static const struct adsp_data sc7280_wpss_resource = {
 	.ssctl_id = 0x19,
 };
 
+static const struct adsp_data sm8650_cdsp_resource = {
+	.crash_reason_smem = 601,
+	.firmware_name = "cdsp.mdt",
+	.dtb_firmware_name = "cdsp_dtb.mdt",
+	.pas_id = 18,
+	.dtb_pas_id = 0x25,
+	.minidump_id = 7,
+	.auto_boot = true,
+	.proxy_pd_names = (char*[]){
+		"cx",
+		"mxc",
+		"nsp",
+		NULL
+	},
+	.load_state = "cdsp",
+	.ssr_name = "cdsp",
+	.sysmon_name = "cdsp",
+	.ssctl_id = 0x17,
+	.region_assign_idx = 2,
+	.region_assign_count = 1,
+	.region_assign_shared = true,
+	.region_assign_vmid = QCOM_SCM_VMID_CDSP,
+};
+
+static const struct adsp_data sm8650_mpss_resource = {
+	.crash_reason_smem = 421,
+	.firmware_name = "modem.mdt",
+	.dtb_firmware_name = "modem_dtb.mdt",
+	.pas_id = 4,
+	.dtb_pas_id = 0x26,
+	.minidump_id = 3,
+	.auto_boot = false,
+	.decrypt_shutdown = true,
+	.proxy_pd_names = (char*[]){
+		"cx",
+		"mss",
+		NULL
+	},
+	.load_state = "modem",
+	.ssr_name = "mpss",
+	.sysmon_name = "modem",
+	.ssctl_id = 0x12,
+	.region_assign_idx = 2,
+	.region_assign_count = 3,
+	.region_assign_vmid = QCOM_SCM_VMID_MSS_MSA,
+};
+
 static const struct of_device_id adsp_of_match[] = {
 	{ .compatible = "qcom,msm8226-adsp-pil", .data = &adsp_resource_init},
 	{ .compatible = "qcom,msm8953-adsp-pil", .data = &msm8996_adsp_resource},
@@ -1268,6 +1315,9 @@  static const struct of_device_id adsp_of_match[] = {
 	{ .compatible = "qcom,sm8550-adsp-pas", .data = &sm8550_adsp_resource},
 	{ .compatible = "qcom,sm8550-cdsp-pas", .data = &sm8550_cdsp_resource},
 	{ .compatible = "qcom,sm8550-mpss-pas", .data = &sm8550_mpss_resource},
+	{ .compatible = "qcom,sm8650-adsp-pas", .data = &sm8550_adsp_resource},
+	{ .compatible = "qcom,sm8650-cdsp-pas", .data = &sm8650_cdsp_resource},
+	{ .compatible = "qcom,sm8650-mpss-pas", .data = &sm8650_mpss_resource},
 	{ },
 };
 MODULE_DEVICE_TABLE(of, adsp_of_match);