Commit ba86de8a authored by Konrad Dybcio's avatar Konrad Dybcio Committed by Georgi Djakov
Browse files

interconnect: qcom: qcm2290: Enable keep_alive on all buses



QCM2290 expects all buses to be up at all times when the CPU is
active. Enable keep_alive on all of them to achieve that.

Fixes: 1a14b1ac ("interconnect: qcom: Add QCM2290 driver support")
Signed-off-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20230720-topic-qcm2290_icc-v2-1-a2ceb9d3e713@linaro.org


Signed-off-by: default avatarGeorgi Djakov <djakov@kernel.org>
parent 06c2afb8
Loading
Loading
Loading
Loading
+6 −0
Original line number Original line Diff line number Diff line
@@ -1198,6 +1198,7 @@ static const struct qcom_icc_desc qcm2290_bimc = {
	.nodes = qcm2290_bimc_nodes,
	.nodes = qcm2290_bimc_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_bimc_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_bimc_nodes),
	.regmap_cfg = &qcm2290_bimc_regmap_config,
	.regmap_cfg = &qcm2290_bimc_regmap_config,
	.keep_alive = true,
	/* M_REG_BASE() in vendor msm_bus_bimc_adhoc driver */
	/* M_REG_BASE() in vendor msm_bus_bimc_adhoc driver */
	.qos_offset = 0x8000,
	.qos_offset = 0x8000,
};
};
@@ -1253,6 +1254,7 @@ static const struct qcom_icc_desc qcm2290_cnoc = {
	.nodes = qcm2290_cnoc_nodes,
	.nodes = qcm2290_cnoc_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_cnoc_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_cnoc_nodes),
	.regmap_cfg = &qcm2290_cnoc_regmap_config,
	.regmap_cfg = &qcm2290_cnoc_regmap_config,
	.keep_alive = true,
};
};


static struct qcom_icc_node * const qcm2290_snoc_nodes[] = {
static struct qcom_icc_node * const qcm2290_snoc_nodes[] = {
@@ -1294,6 +1296,7 @@ static const struct qcom_icc_desc qcm2290_snoc = {
	.nodes = qcm2290_snoc_nodes,
	.nodes = qcm2290_snoc_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_snoc_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_snoc_nodes),
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.keep_alive = true,
	/* Vendor DT node fab-sys_noc property 'qcom,base-offset' */
	/* Vendor DT node fab-sys_noc property 'qcom,base-offset' */
	.qos_offset = 0x15000,
	.qos_offset = 0x15000,
};
};
@@ -1307,6 +1310,7 @@ static const struct qcom_icc_desc qcm2290_qup_virt = {
	.type = QCOM_ICC_QNOC,
	.type = QCOM_ICC_QNOC,
	.nodes = qcm2290_qup_virt_nodes,
	.nodes = qcm2290_qup_virt_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_qup_virt_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_qup_virt_nodes),
+	.keep_alive = true,
};
};


static struct qcom_icc_node * const qcm2290_mmnrt_virt_nodes[] = {
static struct qcom_icc_node * const qcm2290_mmnrt_virt_nodes[] = {
@@ -1321,6 +1325,7 @@ static const struct qcom_icc_desc qcm2290_mmnrt_virt = {
	.nodes = qcm2290_mmnrt_virt_nodes,
	.nodes = qcm2290_mmnrt_virt_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_mmnrt_virt_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_mmnrt_virt_nodes),
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.keep_alive = true,
	.qos_offset = 0x15000,
	.qos_offset = 0x15000,
};
};


@@ -1335,6 +1340,7 @@ static const struct qcom_icc_desc qcm2290_mmrt_virt = {
	.nodes = qcm2290_mmrt_virt_nodes,
	.nodes = qcm2290_mmrt_virt_nodes,
	.num_nodes = ARRAY_SIZE(qcm2290_mmrt_virt_nodes),
	.num_nodes = ARRAY_SIZE(qcm2290_mmrt_virt_nodes),
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.regmap_cfg = &qcm2290_snoc_regmap_config,
	.keep_alive = true,
	.qos_offset = 0x15000,
	.qos_offset = 0x15000,
};
};