interconnect: qcom: qcm2290: Enable keep_alive on all buses
authorKonrad Dybcio <konrad.dybcio@linaro.org>
Mon, 24 Jul 2023 10:49:21 +0000 (12:49 +0200)
committerGeorgi Djakov <djakov@kernel.org>
Fri, 4 Aug 2023 10:44:05 +0000 (13:44 +0300)
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: 1a14b1ac3935 ("interconnect: qcom: Add QCM2290 driver support")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20230720-topic-qcm2290_icc-v2-1-a2ceb9d3e713@linaro.org
Signed-off-by: Georgi Djakov <djakov@kernel.org>
drivers/interconnect/qcom/qcm2290.c

index a29cdb4..b9a6330 100644 (file)
@@ -1198,6 +1198,7 @@ static const struct qcom_icc_desc qcm2290_bimc = {
        .nodes = qcm2290_bimc_nodes,
        .num_nodes = ARRAY_SIZE(qcm2290_bimc_nodes),
        .regmap_cfg = &qcm2290_bimc_regmap_config,
+       .keep_alive = true,
        /* M_REG_BASE() in vendor msm_bus_bimc_adhoc driver */
        .qos_offset = 0x8000,
 };
@@ -1253,6 +1254,7 @@ static const struct qcom_icc_desc qcm2290_cnoc = {
        .nodes = qcm2290_cnoc_nodes,
        .num_nodes = ARRAY_SIZE(qcm2290_cnoc_nodes),
        .regmap_cfg = &qcm2290_cnoc_regmap_config,
+       .keep_alive = true,
 };
 
 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,
        .num_nodes = ARRAY_SIZE(qcm2290_snoc_nodes),
        .regmap_cfg = &qcm2290_snoc_regmap_config,
+       .keep_alive = true,
        /* Vendor DT node fab-sys_noc property 'qcom,base-offset' */
        .qos_offset = 0x15000,
 };
@@ -1307,6 +1310,7 @@ static const struct qcom_icc_desc qcm2290_qup_virt = {
        .type = QCOM_ICC_QNOC,
        .nodes = 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[] = {
@@ -1321,6 +1325,7 @@ static const struct qcom_icc_desc qcm2290_mmnrt_virt = {
        .nodes = qcm2290_mmnrt_virt_nodes,
        .num_nodes = ARRAY_SIZE(qcm2290_mmnrt_virt_nodes),
        .regmap_cfg = &qcm2290_snoc_regmap_config,
+       .keep_alive = true,
        .qos_offset = 0x15000,
 };
 
@@ -1335,6 +1340,7 @@ static const struct qcom_icc_desc qcm2290_mmrt_virt = {
        .nodes = qcm2290_mmrt_virt_nodes,
        .num_nodes = ARRAY_SIZE(qcm2290_mmrt_virt_nodes),
        .regmap_cfg = &qcm2290_snoc_regmap_config,
+       .keep_alive = true,
        .qos_offset = 0x15000,
 };