[PATCH 1/4] clk: qcom: common: Register reset controller only when resets are present

From: Imran Shaik

Date: Fri Jun 05 2026 - 07:36:09 EST


Some clock controller descriptors do not provide any reset lines. Avoid
registering a reset controller when desc->num_resets is zero by making
the registration conditional.

Signed-off-by: Imran Shaik <imran.shaik@xxxxxxxxxxxxxxxx>
---
drivers/clk/qcom/common.c | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c
index eec369d2173b5ce24bc1ca860d2ac1bbdce04524..be9b6ebb2fffde05e3f209571c53b601d823d479 100644
--- a/drivers/clk/qcom/common.c
+++ b/drivers/clk/qcom/common.c
@@ -359,17 +359,19 @@ int qcom_cc_really_probe(struct device *dev,
qcom_cc_clk_regs_configure(dev, desc->driver_data, regmap);
}

- reset = &cc->reset;
- reset->rcdev.of_node = dev->of_node;
- reset->rcdev.ops = &qcom_reset_ops;
- reset->rcdev.owner = dev->driver->owner;
- reset->rcdev.nr_resets = desc->num_resets;
- reset->regmap = regmap;
- reset->reset_map = desc->resets;
-
- ret = devm_reset_controller_register(dev, &reset->rcdev);
- if (ret)
- goto put_rpm;
+ if (desc->num_resets) {
+ reset = &cc->reset;
+ reset->rcdev.of_node = dev->of_node;
+ reset->rcdev.ops = &qcom_reset_ops;
+ reset->rcdev.owner = dev->driver->owner;
+ reset->rcdev.nr_resets = desc->num_resets;
+ reset->regmap = regmap;
+ reset->reset_map = desc->resets;
+
+ ret = devm_reset_controller_register(dev, &reset->rcdev);
+ if (ret)
+ goto put_rpm;
+ }

if (desc->gdscs && desc->num_gdscs) {
scd = devm_kzalloc(dev, sizeof(*scd), GFP_KERNEL);

--
2.34.1