Thread (7 messages) flat view 7 messages, 3 authors, 8h ago
HOTtoday

[PATCH] interconnect: qcom: icc-rpmh: Add opt-out parameter for QoS settings

From: Marc Zyngier <maz@kernel.org>
Date: 2026-09-07 17:17:44
Also in: lkml
Subsystem: arm/qualcomm mailing list, interconnect api, the rest · Maintainers: Georgi Djakov, Linus Torvalds

Recent addition of QoS configuration to the X1 variants resulted in
systems that spontaneously reset at boot time or under load.

Given that this is both very unpleasant and hard to debug, give the
affected user the option to survive such event with a module parameter.

Passing "icc_rpmh.enable_qos=0" to the kernel command-line will skip the
offending QoS setup.

Link: https://lore.kernel.org/all/apgeBNSiP01YfNcs@google.com (local)
Link: https://lore.kernel.org/all/86ld9d4h4n.wl-maz@kernel.org (local)
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: Raviteja Laggyshetty <redacted>
Cc: Konrad Dybcio <redacted>
Cc: Abel Vesa <abelvesa@kernel.org>
Cc: Bjorn Andersson <andersson@kernel.org>
Cc: Mostafa Saleh <smostafa@google.com>
---
 drivers/interconnect/qcom/icc-rpmh.c | 8 ++++++++
 1 file changed, 8 insertions(+)
diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c
index 3b445acefece7..3a4743c364dac 100644
--- a/drivers/interconnect/qcom/icc-rpmh.c
+++ b/drivers/interconnect/qcom/icc-rpmh.c
@@ -224,6 +224,9 @@ static int qcom_icc_rpmh_configure_qos(struct qcom_icc_provider *qp)
 	return ret;
 }
 
+static bool enable_qos = true;
+module_param(enable_qos, bool, 0660);
+
 int qcom_icc_rpmh_probe(struct platform_device *pdev)
 {
 	const struct qcom_icc_desc *desc;
@@ -308,6 +311,11 @@ int qcom_icc_rpmh_probe(struct platform_device *pdev)
 		struct resource *res;
 		void __iomem *base;
 
+		if (!enable_qos) {
+			dev_info(dev, "Skipping QoS (command line)\n");
+			goto skip_qos_config;
+		}
+
 		/* Try parent's regmap first */
 		qp->regmap = dev_get_regmap(dev->parent, NULL);
 		if (!qp->regmap) {
-- 
2.47.3

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help