* [PATCH 0/6] Assorted fixes for icc-rpm
@ 2026-09-09 16:41 Konrad Dybcio
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
` (6 more replies)
0 siblings, 7 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
This series brings multi-port QoS programming and squashes some
minor existing issues. No dependencies.
Compile-tested only.
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
Konrad Dybcio (6):
interconnect: qcom: Move bcm_div() to common code
interconnect: qcom: icc-rpm: Don't skip small votes
interconnect: qcom: icc-rpm: Handle icc_link_create() failures
interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports
interconnect: qcom: msm8996: Configure auxiliary Venus QoS port
interconnect: qcom: msm8976: Configure auxiliary GPU QoS port
drivers/interconnect/qcom/bcm-voter.c | 21 ++-----
drivers/interconnect/qcom/icc-common.h | 9 +++
drivers/interconnect/qcom/icc-rpm.c | 101 +++++++++++++++++++++++++++------
drivers/interconnect/qcom/icc-rpm.h | 2 +
drivers/interconnect/qcom/msm8976.c | 3 +-
drivers/interconnect/qcom/msm8996.c | 1 +
6 files changed, 103 insertions(+), 34 deletions(-)
---
base-commit: 9d80aa4617b32f5054c5aa471d06b66704854935
change-id: 20260909-topic-icc_rpm_smd_qol-452dce87cbc5
Best regards,
--
Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 18:37 ` Dmitry Baryshkov
2026-09-10 7:29 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes Konrad Dybcio
` (5 subsequent siblings)
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
This helper is useful for both SMD_RPM and RPMH code, extract it.
Assisted-by: LLM
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/bcm-voter.c | 21 +++++----------------
drivers/interconnect/qcom/icc-common.h | 9 +++++++++
2 files changed, 14 insertions(+), 16 deletions(-)
diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/qcom/bcm-voter.c
index a2d437a05a11..cdb0c5ee5cbc 100644
--- a/drivers/interconnect/qcom/bcm-voter.c
+++ b/drivers/interconnect/qcom/bcm-voter.c
@@ -3,7 +3,6 @@
* Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
*/
-#include <asm/div64.h>
#include <linux/interconnect-provider.h>
#include <linux/list_sort.h>
#include <linux/module.h>
@@ -14,6 +13,7 @@
#include <soc/qcom/tcs.h>
#include "bcm-voter.h"
+#include "icc-common.h"
#include "icc-rpmh.h"
static LIST_HEAD(bcm_voters);
@@ -47,17 +47,6 @@ static int cmp_vcd(void *priv, const struct list_head *a, const struct list_head
return bcm_a->aux_data.vcd - bcm_b->aux_data.vcd;
}
-static u64 bcm_div(u64 num, u32 base)
-{
- /* Ensure that small votes aren't lost. */
- if (num && num < base)
- return 1;
-
- do_div(num, base);
-
- return num;
-}
-
/* BCMs with enable_mask use one-hot-encoding for on/off signaling */
static void bcm_aggregate_mask(struct qcom_icc_bcm *bcm)
{
@@ -99,20 +88,20 @@ static void bcm_aggregate(struct qcom_icc_bcm *bcm)
for (bucket = 0; bucket < QCOM_ICC_NUM_BUCKETS; bucket++) {
for (i = 0; i < bcm->num_nodes; i++) {
node = bcm->nodes[i];
- temp = bcm_div(node->sum_avg[bucket] * bcm->aux_data.width,
+ temp = qcom_bw_div(node->sum_avg[bucket] * bcm->aux_data.width,
node->buswidth * node->channels);
agg_avg[bucket] = max(agg_avg[bucket], temp);
- temp = bcm_div(node->max_peak[bucket] * bcm->aux_data.width,
+ temp = qcom_bw_div(node->max_peak[bucket] * bcm->aux_data.width,
node->buswidth);
agg_peak[bucket] = max(agg_peak[bucket], temp);
}
temp = agg_avg[bucket] * bcm->vote_scale;
- bcm->vote_x[bucket] = bcm_div(temp, bcm->aux_data.unit);
+ bcm->vote_x[bucket] = qcom_bw_div(temp, bcm->aux_data.unit);
temp = agg_peak[bucket] * bcm->vote_scale;
- bcm->vote_y[bucket] = bcm_div(temp, bcm->aux_data.unit);
+ bcm->vote_y[bucket] = qcom_bw_div(temp, bcm->aux_data.unit);
}
if (bcm->keepalive && bcm->vote_x[QCOM_ICC_BUCKET_AMC] == 0 &&
diff --git a/drivers/interconnect/qcom/icc-common.h b/drivers/interconnect/qcom/icc-common.h
index 21c39b163948..af4b5a6f30b7 100644
--- a/drivers/interconnect/qcom/icc-common.h
+++ b/drivers/interconnect/qcom/icc-common.h
@@ -7,6 +7,15 @@
#define __DRIVERS_INTERCONNECT_QCOM_ICC_COMMON_H__
#include <linux/interconnect-provider.h>
+#include <linux/math64.h>
+
+static inline u64 qcom_bw_div(u64 num, u32 base)
+{
+ if (num && num < base)
+ return 1;
+
+ return div_u64(num, base);
+}
struct icc_node_data *qcom_icc_xlate_extended(const struct of_phandle_args *spec,
void *data);
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 18:38 ` Dmitry Baryshkov
2026-09-10 7:30 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures Konrad Dybcio
` (4 subsequent siblings)
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Small votes (such as 1 or 100) can end up being rounded down to 0
midway through the calculations. Use qcom_bw_div() when dividing to
prevent that.
Assisted-by: LLM
Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/icc-rpm.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
index ca4c8a944755..f571f002ccbd 100644
--- a/drivers/interconnect/qcom/icc-rpm.c
+++ b/drivers/interconnect/qcom/icc-rpm.c
@@ -298,25 +298,25 @@ static u64 qcom_icc_calc_rate(struct qcom_icc_provider *qp, struct qcom_icc_node
u64 agg_avg_rate, agg_peak_rate, agg_rate;
if (qn->channels)
- agg_avg_rate = div_u64(qn->sum_avg[ctx], qn->channels);
+ agg_avg_rate = qcom_bw_div(qn->sum_avg[ctx], qn->channels);
else
agg_avg_rate = qn->sum_avg[ctx];
if (qn->ab_coeff) {
agg_avg_rate = agg_avg_rate * qn->ab_coeff;
- agg_avg_rate = div_u64(agg_avg_rate, 100);
+ agg_avg_rate = qcom_bw_div(agg_avg_rate, 100);
}
if (qn->ib_coeff) {
agg_peak_rate = qn->max_peak[ctx] * 100;
- agg_peak_rate = div_u64(agg_peak_rate, qn->ib_coeff);
+ agg_peak_rate = qcom_bw_div(agg_peak_rate, qn->ib_coeff);
} else {
agg_peak_rate = qn->max_peak[ctx];
}
agg_rate = max_t(u64, agg_avg_rate, agg_peak_rate);
- return div_u64(agg_rate, qn->buswidth);
+ return qcom_bw_div(agg_rate, qn->buswidth);
}
/**
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
2026-09-09 16:41 ` [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 18:39 ` Dmitry Baryshkov
2026-09-10 7:30 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports Konrad Dybcio
` (3 subsequent siblings)
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
icc_link_create() can return errors. Don't ignore them.
Assisted-by: LLM
Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/icc-rpm.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
index f571f002ccbd..5d8a41aede8b 100644
--- a/drivers/interconnect/qcom/icc-rpm.c
+++ b/drivers/interconnect/qcom/icc-rpm.c
@@ -583,8 +583,15 @@ int qnoc_probe(struct platform_device *pdev)
node->data = qnodes[i];
icc_node_add(node, provider);
- for (j = 0; j < qnodes[i]->num_links; j++)
- icc_link_create(node, qnodes[i]->links[j]);
+ for (j = 0; j < qnodes[i]->num_links; j++) {
+ ret = icc_link_create(node, qnodes[i]->links[j]);
+ if (ret) {
+ icc_nodes_remove(provider);
+ clk_bulk_disable_unprepare(qp->num_intf_clks,
+ qp->intf_clks);
+ goto err_disable_unprepare_clk;
+ }
+ }
/* Set QoS registers (we only need to do it once, generally) */
if (qnodes[i]->qos.ap_owned &&
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
` (2 preceding siblings ...)
2026-09-09 16:41 ` [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:31 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port Konrad Dybcio
` (2 subsequent siblings)
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Some SMD RPM interconnect nodes own two QoS ports. Currently, the code
only takes care of one, leaving some endpoints partially unconfigured.
Keep qos_port as the primary port and describe the optional second port
with aux_qos_port.
Assisted-by: LLM
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/icc-rpm.c | 82 ++++++++++++++++++++++++++++++++-----
drivers/interconnect/qcom/icc-rpm.h | 2 +
2 files changed, 73 insertions(+), 11 deletions(-)
diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
index 5d8a41aede8b..12387de98318 100644
--- a/drivers/interconnect/qcom/icc-rpm.c
+++ b/drivers/interconnect/qcom/icc-rpm.c
@@ -58,15 +58,32 @@ static int qcom_icc_set_qnoc_qos(struct icc_node *src)
struct qcom_icc_qos *qos = &qn->qos;
int rc;
+ rc = regmap_update_bits(qp->regmap,
+ qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port),
+ QNOC_QOS_MCTL_DFLT_PRIO_MASK,
+ qos->areq_prio << QNOC_QOS_MCTL_DFLT_PRIO_SHIFT);
+ if (rc)
+ return rc;
+
rc = regmap_update_bits(qp->regmap,
qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port),
- QNOC_QOS_MCTL_DFLT_PRIO_MASK,
- qos->areq_prio << QNOC_QOS_MCTL_DFLT_PRIO_SHIFT);
+ QNOC_QOS_MCTL_URGFWD_EN_MASK,
+ !!qos->urg_fwd_en << QNOC_QOS_MCTL_URGFWD_EN_SHIFT);
+ if (rc)
+ return rc;
+
+ if (!qos->aux_qos_port)
+ return 0;
+
+ rc = regmap_update_bits(qp->regmap,
+ qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->aux_qos_port),
+ QNOC_QOS_MCTL_DFLT_PRIO_MASK,
+ qos->areq_prio << QNOC_QOS_MCTL_DFLT_PRIO_SHIFT);
if (rc)
return rc;
return regmap_update_bits(qp->regmap,
- qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port),
+ qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->aux_qos_port),
QNOC_QOS_MCTL_URGFWD_EN_MASK,
!!qos->urg_fwd_en << QNOC_QOS_MCTL_URGFWD_EN_SHIFT);
}
@@ -75,8 +92,9 @@ static int qcom_icc_bimc_set_qos_health(struct qcom_icc_provider *qp,
struct qcom_icc_qos *qos,
int regnum)
{
- u32 val;
u32 mask;
+ u32 val;
+ int ret;
val = qos->prio_level;
mask = M_BKE_HEALTH_CFG_PRIOLVL_MASK;
@@ -90,8 +108,17 @@ static int qcom_icc_bimc_set_qos_health(struct qcom_icc_provider *qp,
mask |= M_BKE_HEALTH_CFG_LIMITCMDS_MASK;
}
+ ret = regmap_update_bits(qp->regmap,
+ qp->qos_offset + M_BKE_HEALTH_CFG_ADDR(regnum, qos->qos_port),
+ mask, val);
+ if (ret)
+ return ret;
+
+ if (!qos->aux_qos_port)
+ return 0;
+
return regmap_update_bits(qp->regmap,
- qp->qos_offset + M_BKE_HEALTH_CFG_ADDR(regnum, qos->qos_port),
+ qp->qos_offset + M_BKE_HEALTH_CFG_ADDR(regnum, qos->aux_qos_port),
mask, val);
}
@@ -102,7 +129,7 @@ static int qcom_icc_set_bimc_qos(struct icc_node *src)
struct icc_provider *provider;
u32 mode = NOC_QOS_MODE_BYPASS;
u32 val = 0;
- int i, rc = 0;
+ int i, rc;
qn = src->data;
provider = src->provider;
@@ -116,8 +143,7 @@ static int qcom_icc_set_bimc_qos(struct icc_node *src)
*/
if (mode != NOC_QOS_MODE_BYPASS) {
for (i = 3; i >= 0; i--) {
- rc = qcom_icc_bimc_set_qos_health(qp,
- &qn->qos, i);
+ rc = qcom_icc_bimc_set_qos_health(qp, &qn->qos, i);
if (rc)
return rc;
}
@@ -126,8 +152,17 @@ static int qcom_icc_set_bimc_qos(struct icc_node *src)
val = 1;
}
+ rc = regmap_update_bits(qp->regmap,
+ qp->qos_offset + M_BKE_EN_ADDR(qn->qos.qos_port),
+ M_BKE_EN_EN_BMASK, val);
+ if (rc)
+ return rc;
+
+ if (!qn->qos.aux_qos_port)
+ return 0;
+
return regmap_update_bits(qp->regmap,
- qp->qos_offset + M_BKE_EN_ADDR(qn->qos.qos_port),
+ qp->qos_offset + M_BKE_EN_ADDR(qn->qos.aux_qos_port),
M_BKE_EN_EN_BMASK, val);
}
@@ -145,9 +180,25 @@ static int qcom_icc_noc_set_qos_priority(struct qcom_icc_provider *qp,
if (rc)
return rc;
- return regmap_update_bits(qp->regmap,
+ rc = regmap_update_bits(qp->regmap,
qp->qos_offset + NOC_QOS_PRIORITYn_ADDR(qos->qos_port),
NOC_QOS_PRIORITY_P0_MASK, qos->prio_level);
+ if (rc)
+ return rc;
+
+ if (!qos->aux_qos_port)
+ return 0;
+
+ val = qos->areq_prio << NOC_QOS_PRIORITY_P1_SHIFT;
+ rc = regmap_update_bits(qp->regmap,
+ qp->qos_offset + NOC_QOS_PRIORITYn_ADDR(qos->aux_qos_port),
+ NOC_QOS_PRIORITY_P1_MASK, val);
+ if (rc)
+ return rc;
+
+ return regmap_update_bits(qp->regmap,
+ qp->qos_offset + NOC_QOS_PRIORITYn_ADDR(qos->aux_qos_port),
+ NOC_QOS_PRIORITY_P0_MASK, qos->prio_level);
}
static int qcom_icc_set_noc_qos(struct icc_node *src)
@@ -182,9 +233,18 @@ static int qcom_icc_set_noc_qos(struct icc_node *src)
/* How did we get here? */
}
- return regmap_update_bits(qp->regmap,
+ rc = regmap_update_bits(qp->regmap,
qp->qos_offset + NOC_QOS_MODEn_ADDR(qn->qos.qos_port),
NOC_QOS_MODEn_MASK, mode);
+ if (rc)
+ return rc;
+
+ if (!qn->qos.aux_qos_port)
+ return 0;
+
+ return regmap_update_bits(qp->regmap,
+ qp->qos_offset + NOC_QOS_MODEn_ADDR(qn->qos.aux_qos_port),
+ NOC_QOS_MODEn_MASK, mode);
}
static int qcom_icc_qos_set(struct icc_node *node)
diff --git a/drivers/interconnect/qcom/icc-rpm.h b/drivers/interconnect/qcom/icc-rpm.h
index cdd5f444b152..e36c378a80a3 100644
--- a/drivers/interconnect/qcom/icc-rpm.h
+++ b/drivers/interconnect/qcom/icc-rpm.h
@@ -77,6 +77,7 @@ struct qcom_icc_provider {
* @ap_owned: indicates if the node is owned by the AP or by the RPM
* @qos_mode: default qos mode for this node
* @qos_port: qos port number for finding qos registers of this node
+ * @aux_qos_port: optional QoS port in addition to @qos_port. Zero means "none".
* @urg_fwd_en: enable urgent forwarding
*/
struct qcom_icc_qos {
@@ -86,6 +87,7 @@ struct qcom_icc_qos {
bool ap_owned;
int qos_mode;
int qos_port;
+ u16 aux_qos_port;
bool urg_fwd_en;
};
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
` (3 preceding siblings ...)
2026-09-09 16:41 ` [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU " Konrad Dybcio
2026-09-24 23:19 ` [PATCH 0/6] Assorted fixes for icc-rpm Mark Brown
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Enable the secondary QoS port used by the MSM8996 Venus node.
Assisted-by: LLM
Fixes: 7add937f5222 ("interconnect: qcom: Add MSM8996 interconnect provider driver")
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/msm8996.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/interconnect/qcom/msm8996.c b/drivers/interconnect/qcom/msm8996.c
index 882f9d2b6d4e..7fc808cc5975 100644
--- a/drivers/interconnect/qcom/msm8996.c
+++ b/drivers/interconnect/qcom/msm8996.c
@@ -501,6 +501,7 @@ static struct qcom_icc_node mas_venus = {
.qos.areq_prio = 0,
.qos.prio_level = 0,
.qos.qos_port = 3,
+ .qos.aux_qos_port = 4,
.num_links = ARRAY_SIZE(mas_mnoc_bimc_common_links),
.links = mas_mnoc_bimc_common_links
};
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU QoS port
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
` (4 preceding siblings ...)
2026-09-09 16:41 ` [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port Konrad Dybcio
@ 2026-09-09 16:41 ` Konrad Dybcio
2026-09-09 19:00 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
2026-09-24 23:19 ` [PATCH 0/6] Assorted fixes for icc-rpm Mark Brown
6 siblings, 2 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-09 16:41 UTC (permalink / raw)
To: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski
Cc: linux-arm-msm, linux-pm, linux-kernel, Konrad Dybcio
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Enable the secondary QoS port used by the MSM8976 GPU node.
Assisted-by: LLM
Fixes: 6e3ea1f36b10 ("interconnect: qcom: Add MSM8976 interconnect provider driver")
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
drivers/interconnect/qcom/msm8976.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/interconnect/qcom/msm8976.c b/drivers/interconnect/qcom/msm8976.c
index c219dcfd43b6..11100264ef69 100644
--- a/drivers/interconnect/qcom/msm8976.c
+++ b/drivers/interconnect/qcom/msm8976.c
@@ -454,7 +454,8 @@ static struct qcom_icc_node mas_oxili = {
.qos.qos_mode = NOC_QOS_MODE_BYPASS,
.qos.areq_prio = 0,
.qos.prio_level = 0,
- .qos.qos_port = 16, /* [16, 17] */
+ .qos.qos_port = 16,
+ .qos.aux_qos_port = 17,
.num_links = ARRAY_SIZE(mas_oxili_links),
.links = mas_oxili_links,
};
--
2.55.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
@ 2026-09-09 18:37 ` Dmitry Baryshkov
2026-09-10 7:29 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 18:37 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:54PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> This helper is useful for both SMD_RPM and RPMH code, extract it.
>
> Assisted-by: LLM
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/bcm-voter.c | 21 +++++----------------
> drivers/interconnect/qcom/icc-common.h | 9 +++++++++
> 2 files changed, 14 insertions(+), 16 deletions(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes
2026-09-09 16:41 ` [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes Konrad Dybcio
@ 2026-09-09 18:38 ` Dmitry Baryshkov
2026-09-10 7:38 ` Konrad Dybcio
2026-09-10 7:30 ` Abel Vesa
1 sibling, 1 reply; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 18:38 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:55PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Small votes (such as 1 or 100) can end up being rounded down to 0
> midway through the calculations. Use qcom_bw_div() when dividing to
> prevent that.
>
> Assisted-by: LLM
> Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/icc-rpm.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
What is the reason for the drivers to cast such small votes? Isn't it a
mistake on the driver side?
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures
2026-09-09 16:41 ` [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures Konrad Dybcio
@ 2026-09-09 18:39 ` Dmitry Baryshkov
2026-09-10 7:30 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 18:39 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:56PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> icc_link_create() can return errors. Don't ignore them.
>
> Assisted-by: LLM
> Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/icc-rpm.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports
2026-09-09 16:41 ` [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports Konrad Dybcio
@ 2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:31 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 18:41 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:57PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Some SMD RPM interconnect nodes own two QoS ports. Currently, the code
> only takes care of one, leaving some endpoints partially unconfigured.
>
> Keep qos_port as the primary port and describe the optional second port
> with aux_qos_port.
>
> Assisted-by: LLM
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/icc-rpm.c | 82 ++++++++++++++++++++++++++++++++-----
> drivers/interconnect/qcom/icc-rpm.h | 2 +
> 2 files changed, 73 insertions(+), 11 deletions(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port
2026-09-09 16:41 ` [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port Konrad Dybcio
@ 2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 18:41 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:58PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Enable the secondary QoS port used by the MSM8996 Venus node.
>
> Assisted-by: LLM
> Fixes: 7add937f5222 ("interconnect: qcom: Add MSM8996 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/msm8996.c | 1 +
> 1 file changed, 1 insertion(+)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU QoS port
2026-09-09 16:41 ` [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU " Konrad Dybcio
@ 2026-09-09 19:00 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Baryshkov @ 2026-09-09 19:00 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On Wed, Sep 09, 2026 at 06:41:59PM +0200, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Enable the secondary QoS port used by the MSM8976 GPU node.
>
> Assisted-by: LLM
> Fixes: 6e3ea1f36b10 ("interconnect: qcom: Add MSM8976 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
> drivers/interconnect/qcom/msm8976.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
2026-09-09 18:37 ` Dmitry Baryshkov
@ 2026-09-10 7:29 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:29 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:54, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> This helper is useful for both SMD_RPM and RPMH code, extract it.
>
> Assisted-by: LLM
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes
2026-09-09 16:41 ` [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes Konrad Dybcio
2026-09-09 18:38 ` Dmitry Baryshkov
@ 2026-09-10 7:30 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:30 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:55, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Small votes (such as 1 or 100) can end up being rounded down to 0
> midway through the calculations. Use qcom_bw_div() when dividing to
> prevent that.
>
> Assisted-by: LLM
> Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures
2026-09-09 16:41 ` [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures Konrad Dybcio
2026-09-09 18:39 ` Dmitry Baryshkov
@ 2026-09-10 7:30 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:30 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:56, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> icc_link_create() can return errors. Don't ignore them.
>
> Assisted-by: LLM
> Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports
2026-09-09 16:41 ` [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
@ 2026-09-10 7:31 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:31 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:57, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Some SMD RPM interconnect nodes own two QoS ports. Currently, the code
> only takes care of one, leaving some endpoints partially unconfigured.
>
> Keep qos_port as the primary port and describe the optional second port
> with aux_qos_port.
>
> Assisted-by: LLM
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port
2026-09-09 16:41 ` [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
@ 2026-09-10 7:32 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:32 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:58, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Enable the secondary QoS port used by the MSM8996 Venus node.
>
> Assisted-by: LLM
> Fixes: 7add937f5222 ("interconnect: qcom: Add MSM8996 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU QoS port
2026-09-09 16:41 ` [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU " Konrad Dybcio
2026-09-09 19:00 ` Dmitry Baryshkov
@ 2026-09-10 7:32 ` Abel Vesa
1 sibling, 0 replies; 23+ messages in thread
From: Abel Vesa @ 2026-09-10 7:32 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio
On 26-09-09 18:41:59, Konrad Dybcio wrote:
> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Enable the secondary QoS port used by the MSM8976 GPU node.
>
> Assisted-by: LLM
> Fixes: 6e3ea1f36b10 ("interconnect: qcom: Add MSM8976 interconnect provider driver")
> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes
2026-09-09 18:38 ` Dmitry Baryshkov
@ 2026-09-10 7:38 ` Konrad Dybcio
0 siblings, 0 replies; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-10 7:38 UTC (permalink / raw)
To: Dmitry Baryshkov, Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel
On 9/9/26 8:38 PM, Dmitry Baryshkov wrote:
> On Wed, Sep 09, 2026 at 06:41:55PM +0200, Konrad Dybcio wrote:
>> From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>>
>> Small votes (such as 1 or 100) can end up being rounded down to 0
>> midway through the calculations. Use qcom_bw_div() when dividing to
>> prevent that.
>>
>> Assisted-by: LLM
>> Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
>> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>> ---
>> drivers/interconnect/qcom/icc-rpm.c | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>
> What is the reason for the drivers to cast such small votes? Isn't it a
> mistake on the driver side?
Yes and no.. the interconnect infrastructure on RPM/RPMH is a bit
"meh" given it accept kBps values that it then converts to bus clock
frequencies in MHz that are then clamped to one of the predefined DVFS
levels. Many drivers want "level X specifically" or "anything that's non
zero" or "anything just above the first nonzero level", but due to the
differences in topology, that may translate to different values on
different platforms.
So 1 was at one point deemed okay for "i don't care, just need the
bus on". I'm not sure if the uses of it are valid, given that doesn't
*actually* reserve the bandwidth on the [most often] config path
while the driver may hammer register i/o pretty hard, but at least I'd
like for that to give the expected result.
These "safe-divisions" are more meaningful in the RPMH world, because
each BCM defines the units in which it accepts bandwidth (may be N
Bps, kBps etc.), so there's much more potential for truncation there
Konrad
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 0/6] Assorted fixes for icc-rpm
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
` (5 preceding siblings ...)
2026-09-09 16:41 ` [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU " Konrad Dybcio
@ 2026-09-24 23:19 ` Mark Brown
2026-09-28 10:49 ` Konrad Dybcio
6 siblings, 1 reply; 23+ messages in thread
From: Mark Brown @ 2026-09-24 23:19 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Konrad Dybcio, Aishwarya.TCV
[-- Attachment #1: Type: text/plain, Size: 4216 bytes --]
On Wed, Sep 09, 2026 at 06:41:53PM +0200, Konrad Dybcio wrote:
> This series brings multi-port QoS programming and squashes some
> minor existing issues. No dependencies.
Something about this series seems to break network boot on db845c, the
system comes up but the USB and network never appears and eventually the
board reboots (I guess a watchdog?):
<6>[ 3.127987] Trying to probe devices needed for running init ...
<4>[ 3.131178] qcom-pcie 1c00000.pcie: supply vdda not found, using dummy regulator
<4>[ 3.133600] qcom-pcie 1c08000.pcie: supply vdda not found, using dummy regulator
<4>[ 3.133765] qcom-pcie 1c08000.pcie: supply vddpe-3v3 not found, using dummy regulator
<4>[ 3.145996] qcom-pcie 1c00000.pcie: supply vdda not found, using dummy regulator
<4>[ 3.147172] qcom-pcie 1c08000.pcie: supply vdda not found, using dummy regulator
<4>[ 3.147292] qcom-pcie 1c08000.pcie: supply vddpe-3v3 not found, using dummy regulator
Format: Log Type - Time(microsec) - Message - Optional Info
Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic
bisect log seems to coverge fairly nicely, but only on the merge commit
unfortunately:
git bisect start
# status: waiting for both good and bad commits
# good: [93f51579e7df248780214094418f205253383cc5] Linux 7.3-rc4
git bisect good 93f51579e7df248780214094418f205253383cc5
# status: waiting for bad commit, 1 good commit known
# bad: [3d7783543c2646af69ad65825e810060494bea21] Add linux-next specific files for 20260923
git bisect bad 3d7783543c2646af69ad65825e810060494bea21
# skip: [f5c66cf1cc3d0412aae3a79defe24f2558fd3796] Merge branch 'main' of https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
git bisect skip f5c66cf1cc3d0412aae3a79defe24f2558fd3796
# good: [f5c66cf1cc3d0412aae3a79defe24f2558fd3796] Merge branch 'main' of https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
git bisect good f5c66cf1cc3d0412aae3a79defe24f2558fd3796
# good: [25bd2398be78da6f80b39de910027470b29617ae] Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
git bisect good 25bd2398be78da6f80b39de910027470b29617ae
# good: [294dea4858e9113fd11d22a1b8cbf1e8c0aa7876] Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git
git bisect good 294dea4858e9113fd11d22a1b8cbf1e8c0aa7876
# bad: [23c47f595e5eb361f426eb541d56fd2cdb96b30f] Merge branch 'staging-next' of https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
git bisect bad 23c47f595e5eb361f426eb541d56fd2cdb96b30f
# bad: [ffa9e57e6ed0b967209bf65aad8d834fe2103e1d] Merge branch 'icc-next' of https://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc.git
git bisect bad ffa9e57e6ed0b967209bf65aad8d834fe2103e1d
# good: [ade03fa0fb64ac61c6eb1b409baa2c2f710c27d8] Merge branch 'driver-core-next' of https://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core.git
git bisect good ade03fa0fb64ac61c6eb1b409baa2c2f710c27d8
# good: [bbed88f72dbbb960080282de3b90ca0933fa6226] usb: dwc2: fix typos in comments
git bisect good bbed88f72dbbb960080282de3b90ca0933fa6226
# good: [f9b0809c23123401290e3a144d231aa40fff692e] Merge branch 'char-misc-next' of https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
git bisect good f9b0809c23123401290e3a144d231aa40fff692e
# bad: [07bf225c62c00b9b934b9125e78e2208b961d9c3] Merge branch 'icc-rpm' into icc-next
git bisect bad 07bf225c62c00b9b934b9125e78e2208b961d9c3
# good: [041e725a102fbf3a4e484e28abe66575bc515888] Merge branch 'icc-milos' into icc-next
git bisect good 041e725a102fbf3a4e484e28abe66575bc515888
# good: [ddbacca26d1db5bd9c477253b0af83b028136a24] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports
git bisect good ddbacca26d1db5bd9c477253b0af83b028136a24
# good: [cc91c1b99101f2dcd2f624a27bec6f6f557e5421] interconnect: qcom: msm8976: Configure auxiliary GPU QoS port
git bisect good cc91c1b99101f2dcd2f624a27bec6f6f557e5421
# good: [24e7422ce31189502d07279c083646aaca513311] interconnect: qcom: use 64-bit SMD RPM bus votes
git bisect good 24e7422ce31189502d07279c083646aaca513311
# first bad commit: [07bf225c62c00b9b934b9125e78e2208b961d9c3] Merge branch 'icc-rpm' into icc-next
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 0/6] Assorted fixes for icc-rpm
2026-09-24 23:19 ` [PATCH 0/6] Assorted fixes for icc-rpm Mark Brown
@ 2026-09-28 10:49 ` Konrad Dybcio
2026-09-28 11:37 ` Mark Brown
0 siblings, 1 reply; 23+ messages in thread
From: Konrad Dybcio @ 2026-09-28 10:49 UTC (permalink / raw)
To: Mark Brown, Konrad Dybcio
Cc: Georgi Djakov, Evan Green, Yassine Oudjana, Dmitry Baryshkov,
Adam Skladowski, linux-arm-msm, linux-pm, linux-kernel,
Aishwarya.TCV
On 9/25/26 1:19 AM, Mark Brown wrote:
> On Wed, Sep 09, 2026 at 06:41:53PM +0200, Konrad Dybcio wrote:
>> This series brings multi-port QoS programming and squashes some
>> minor existing issues. No dependencies.
>
> Something about this series seems to break network boot on db845c, the
> system comes up but the USB and network never appears and eventually the
> board reboots (I guess a watchdog?):
>
> <6>[ 3.127987] Trying to probe devices needed for running init ...
> <4>[ 3.131178] qcom-pcie 1c00000.pcie: supply vdda not found, using dummy regulator
> <4>[ 3.133600] qcom-pcie 1c08000.pcie: supply vdda not found, using dummy regulator
> <4>[ 3.133765] qcom-pcie 1c08000.pcie: supply vddpe-3v3 not found, using dummy regulator
> <4>[ 3.145996] qcom-pcie 1c00000.pcie: supply vdda not found, using dummy regulator
> <4>[ 3.147172] qcom-pcie 1c08000.pcie: supply vdda not found, using dummy regulator
> <4>[ 3.147292] qcom-pcie 1c08000.pcie: supply vddpe-3v3 not found, using dummy regulator
> Format: Log Type - Time(microsec) - Message - Optional Info
> Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic
Strange, next-20260923 boots for me :/
Konrad
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 0/6] Assorted fixes for icc-rpm
2026-09-28 10:49 ` Konrad Dybcio
@ 2026-09-28 11:37 ` Mark Brown
0 siblings, 0 replies; 23+ messages in thread
From: Mark Brown @ 2026-09-28 11:37 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Konrad Dybcio, Georgi Djakov, Evan Green, Yassine Oudjana,
Dmitry Baryshkov, Adam Skladowski, linux-arm-msm, linux-pm,
linux-kernel, Aishwarya.TCV
[-- Attachment #1: Type: text/plain, Size: 527 bytes --]
On Mon, Sep 28, 2026 at 12:49:09PM +0200, Konrad Dybcio wrote:
> On 9/25/26 1:19 AM, Mark Brown wrote:
> > <4>[ 3.147172] qcom-pcie 1c08000.pcie: supply vdda not found, using dummy regulator
> > <4>[ 3.147292] qcom-pcie 1c08000.pcie: supply vddpe-3v3 not found, using dummy regulator
> > Format: Log Type - Time(microsec) - Message - Optional Info
> > Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic
> Strange, next-20260923 boots for me :/
The issue appears to have gone away today.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2026-09-28 11:38 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-09 16:41 [PATCH 0/6] Assorted fixes for icc-rpm Konrad Dybcio
2026-09-09 16:41 ` [PATCH 1/6] interconnect: qcom: Move bcm_div() to common code Konrad Dybcio
2026-09-09 18:37 ` Dmitry Baryshkov
2026-09-10 7:29 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 2/6] interconnect: qcom: icc-rpm: Don't skip small votes Konrad Dybcio
2026-09-09 18:38 ` Dmitry Baryshkov
2026-09-10 7:38 ` Konrad Dybcio
2026-09-10 7:30 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 3/6] interconnect: qcom: icc-rpm: Handle icc_link_create() failures Konrad Dybcio
2026-09-09 18:39 ` Dmitry Baryshkov
2026-09-10 7:30 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 4/6] interconnect: qcom: icc-rpm: Program SMD RPM auxiliary QoS ports Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:31 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 5/6] interconnect: qcom: msm8996: Configure auxiliary Venus QoS port Konrad Dybcio
2026-09-09 18:41 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
2026-09-09 16:41 ` [PATCH 6/6] interconnect: qcom: msm8976: Configure auxiliary GPU " Konrad Dybcio
2026-09-09 19:00 ` Dmitry Baryshkov
2026-09-10 7:32 ` Abel Vesa
2026-09-24 23:19 ` [PATCH 0/6] Assorted fixes for icc-rpm Mark Brown
2026-09-28 10:49 ` Konrad Dybcio
2026-09-28 11:37 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®