remoteproc: qcom: qcom_wcnss: Add support for pronto-v3
authorVladimir Lypak <vladimir.lypak@gmail.com>
Sat, 1 Oct 2022 03:13:40 +0000 (08:43 +0530)
committerBjorn Andersson <andersson@kernel.org>
Tue, 27 Dec 2022 16:04:04 +0000 (10:04 -0600)
Pronto-v3 is similar to pronto-v2. It requires two power domains, one
regulator, and it requires the xo clock. It is used on the MSM8953
platform.

Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Signed-off-by: Sireesh Kodali <sireeshkodali1@gmail.com>
Reviewed-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20221001031345.31293-2-sireeshkodali1@gmail.com
drivers/remoteproc/qcom_wcnss.c

index 68f3729..f599d5d 100644 (file)
@@ -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);