[PATCH v3 1/5] soc: qcom: pd-mapper: Add support for Nord

From: Shawn Guo

Date: Wed Nov 11 2026 - 02:35:32 EST


From: Mohammad Rafi Shaik <mohammad.rafi.shaik@xxxxxxxxxxxxxxxx>

Add support for the Qualcomm Nord SoC to the protection domain mapper.

Besides the audio and root domains on ADSP, Nord has two more ADSPs,
each with its own root domain: msm/adsp1/root_pd (instance ID 123) and
msm/adsp2/root_pd (instance ID 124). Nord also has four CDSPs, but they
all share the same instance ID and root domain, so a single
msm/cdsp/root_pd entry covers them.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@xxxxxxxxxxxxxxxx>
Reviewed-by: Abel Vesa <abel.vesa@xxxxxxxxxxxxxxxx>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
Signed-off-by: Shawn Guo <shengchao.guo@xxxxxxxxxxxxxxxx>
---
drivers/soc/qcom/qcom_pd_mapper.c | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

diff --git a/drivers/soc/qcom/qcom_pd_mapper.c b/drivers/soc/qcom/qcom_pd_mapper.c
index e38647f3d7fd..0e2b7f4607da 100644
--- a/drivers/soc/qcom/qcom_pd_mapper.c
+++ b/drivers/soc/qcom/qcom_pd_mapper.c
@@ -277,6 +277,18 @@ static const struct qcom_pdm_domain_data adsp_root_pd = {
.services = { NULL },
};

+static const struct qcom_pdm_domain_data adsp1_root_pd = {
+ .domain = "msm/adsp1/root_pd",
+ .instance_id = 123,
+ .services = { NULL },
+};
+
+static const struct qcom_pdm_domain_data adsp2_root_pd = {
+ .domain = "msm/adsp2/root_pd",
+ .instance_id = 124,
+ .services = { NULL },
+};
+
static const struct qcom_pdm_domain_data adsp_root_pd_pdr = {
.domain = "msm/adsp/root_pd",
.instance_id = 74,
@@ -414,6 +426,15 @@ static const struct qcom_pdm_domain_data *msm8998_domains[] = {
NULL,
};

+static const struct qcom_pdm_domain_data *nord_domains[] = {
+ &adsp_audio_pd,
+ &adsp_root_pd,
+ &adsp1_root_pd,
+ &adsp2_root_pd,
+ &cdsp_root_pd,
+ NULL,
+};
+
static const struct qcom_pdm_domain_data *qcm2290_domains[] = {
&adsp_audio_pd,
&adsp_root_pd,
@@ -641,6 +662,7 @@ static const struct of_device_id qcom_pdm_domains[] __maybe_unused = {
{ .compatible = "qcom,msm8974", .data = NULL, },
{ .compatible = "qcom,msm8996", .data = msm8996_domains, },
{ .compatible = "qcom,msm8998", .data = msm8998_domains, },
+ { .compatible = "qcom,nord", .data = nord_domains, },
{ .compatible = "qcom,qcm2290", .data = qcm2290_domains, },
{ .compatible = "qcom,qcm6490", .data = sc7280_domains, },
{ .compatible = "qcom,qcs404", .data = qcs404_domains, },
--
2.43.0