Merge tag 'soc-drivers-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[sfrench/cifs-2.6.git] / drivers / remoteproc / qcom_wcnss.c
index 68f37296b1516c0b0ea89e1586575f55bd78c731..9d4d04fff8c64e3ad95952c1d0a03ea7bf1a825a 100644 (file)
@@ -19,7 +19,7 @@
 #include <linux/platform_device.h>
 #include <linux/pm_domain.h>
 #include <linux/pm_runtime.h>
-#include <linux/qcom_scm.h>
+#include <linux/firmware/qcom/qcom_scm.h>
 #include <linux/regulator/consumer.h>
 #include <linux/remoteproc.h>
 #include <linux/soc/qcom/mdt_loader.h>
@@ -141,6 +141,17 @@ static const struct wcnss_data pronto_v2_data = {
        .num_vregs = 1,
 };
 
+static const struct wcnss_data pronto_v3_data = {
+       .pmu_offset = 0x1004,
+       .spare_offset = 0x1088,
+
+       .pd_names = { "mx", "cx" },
+       .vregs = (struct wcnss_vreg_info[]) {
+               { "vddpx", 1800000, 1800000, 0 },
+       },
+       .num_vregs = 1,
+};
+
 static int wcnss_load(struct rproc *rproc, const struct firmware *fw)
 {
        struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
@@ -675,6 +686,7 @@ static const struct of_device_id wcnss_of_match[] = {
        { .compatible = "qcom,riva-pil", &riva_data },
        { .compatible = "qcom,pronto-v1-pil", &pronto_v1_data },
        { .compatible = "qcom,pronto-v2-pil", &pronto_v2_data },
+       { .compatible = "qcom,pronto-v3-pil", &pronto_v3_data },
        { },
 };
 MODULE_DEVICE_TABLE(of, wcnss_of_match);