selftests: pidfd: skip test if unshare fails with EPERM
[linux-2.6-microblaze.git] / drivers / remoteproc / qcom_q6v5_pas.c
index 7a63efb..61791a0 100644 (file)
@@ -398,6 +398,7 @@ static int adsp_probe(struct platform_device *pdev)
        }
 
        rproc->auto_boot = desc->auto_boot;
+       rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
 
        adsp = (struct qcom_adsp *)rproc->priv;
        adsp->dev = &pdev->dev;
@@ -406,6 +407,8 @@ static int adsp_probe(struct platform_device *pdev)
        adsp->has_aggre2_clk = desc->has_aggre2_clk;
        platform_set_drvdata(pdev, adsp);
 
+       device_wakeup_enable(adsp->dev);
+
        ret = adsp_alloc_memory_region(adsp);
        if (ret)
                goto free_rproc;
@@ -435,7 +438,7 @@ static int adsp_probe(struct platform_device *pdev)
        if (ret)
                goto detach_proxy_pds;
 
-       qcom_add_glink_subdev(rproc, &adsp->glink_subdev);
+       qcom_add_glink_subdev(rproc, &adsp->glink_subdev, desc->ssr_name);
        qcom_add_smd_subdev(rproc, &adsp->smd_subdev);
        qcom_add_ssr_subdev(rproc, &adsp->ssr_subdev, desc->ssr_name);
        adsp->sysmon = qcom_add_sysmon_subdev(rproc,
@@ -507,6 +510,26 @@ static const struct adsp_data sm8150_adsp_resource = {
                .ssctl_id = 0x14,
 };
 
+static const struct adsp_data sm8250_adsp_resource = {
+       .crash_reason_smem = 423,
+       .firmware_name = "adsp.mdt",
+       .pas_id = 1,
+       .has_aggre2_clk = false,
+       .auto_boot = true,
+       .active_pd_names = (char*[]){
+               "load_state",
+               NULL
+       },
+       .proxy_pd_names = (char*[]){
+               "lcx",
+               "lmx",
+               NULL
+       },
+       .ssr_name = "lpass",
+       .sysmon_name = "adsp",
+       .ssctl_id = 0x14,
+};
+
 static const struct adsp_data msm8998_adsp_resource = {
                .crash_reason_smem = 423,
                .firmware_name = "adsp.mdt",
@@ -552,6 +575,25 @@ static const struct adsp_data sm8150_cdsp_resource = {
        .ssctl_id = 0x17,
 };
 
+static const struct adsp_data sm8250_cdsp_resource = {
+       .crash_reason_smem = 601,
+       .firmware_name = "cdsp.mdt",
+       .pas_id = 18,
+       .has_aggre2_clk = false,
+       .auto_boot = true,
+       .active_pd_names = (char*[]){
+               "load_state",
+               NULL
+       },
+       .proxy_pd_names = (char*[]){
+               "cx",
+               NULL
+       },
+       .ssr_name = "cdsp",
+       .sysmon_name = "cdsp",
+       .ssctl_id = 0x17,
+};
+
 static const struct adsp_data mpss_resource_init = {
        .crash_reason_smem = 421,
        .firmware_name = "modem.mdt",
@@ -603,6 +645,26 @@ static const struct adsp_data sm8150_slpi_resource = {
                .ssctl_id = 0x16,
 };
 
+static const struct adsp_data sm8250_slpi_resource = {
+       .crash_reason_smem = 424,
+       .firmware_name = "slpi.mdt",
+       .pas_id = 12,
+       .has_aggre2_clk = false,
+       .auto_boot = true,
+       .active_pd_names = (char*[]){
+               "load_state",
+               NULL
+       },
+       .proxy_pd_names = (char*[]){
+               "lcx",
+               "lmx",
+               NULL
+       },
+       .ssr_name = "dsps",
+       .sysmon_name = "slpi",
+       .ssctl_id = 0x16,
+};
+
 static const struct adsp_data msm8998_slpi_resource = {
                .crash_reason_smem = 424,
                .firmware_name = "slpi.mdt",
@@ -637,12 +699,16 @@ static const struct of_device_id adsp_of_match[] = {
        { .compatible = "qcom,qcs404-adsp-pas", .data = &adsp_resource_init },
        { .compatible = "qcom,qcs404-cdsp-pas", .data = &cdsp_resource_init },
        { .compatible = "qcom,qcs404-wcss-pas", .data = &wcss_resource_init },
+       { .compatible = "qcom,sc7180-mpss-pas", .data = &mpss_resource_init},
        { .compatible = "qcom,sdm845-adsp-pas", .data = &adsp_resource_init},
        { .compatible = "qcom,sdm845-cdsp-pas", .data = &cdsp_resource_init},
        { .compatible = "qcom,sm8150-adsp-pas", .data = &sm8150_adsp_resource},
        { .compatible = "qcom,sm8150-cdsp-pas", .data = &sm8150_cdsp_resource},
        { .compatible = "qcom,sm8150-mpss-pas", .data = &mpss_resource_init},
        { .compatible = "qcom,sm8150-slpi-pas", .data = &sm8150_slpi_resource},
+       { .compatible = "qcom,sm8250-adsp-pas", .data = &sm8250_adsp_resource},
+       { .compatible = "qcom,sm8250-cdsp-pas", .data = &sm8250_cdsp_resource},
+       { .compatible = "qcom,sm8250-slpi-pas", .data = &sm8250_slpi_resource},
        { },
 };
 MODULE_DEVICE_TABLE(of, adsp_of_match);