[PATCH v2 2/9] soc: qcom: geni-se: Populate clk_perf_tbl with SE source clock frequencies from perf OPP table
Mukesh Savaliya
mukesh.savaliya at oss.qualcomm.com
Wed Oct 7 00:24:38 PDT 2026
On 8/27/2026 11:29 PM, Praveen Talari wrote:
[...]
> @@ -1175,6 +1181,31 @@ int geni_se_domain_attach(struct geni_se *se)
> else if (ret < 0)
> return ret;
>
> + perf_dev = se->pd_list->pd_devs[DOMAIN_IDX_PERF];
> +
> + num_opps = dev_pm_opp_get_opp_count(perf_dev);
> + if (num_opps < 0)
> + return num_opps;
> + if (num_opps == 0)
> + return -ENODEV;
> +
Let's combine both in a line.
if (num_opps <= 0)
return num_opps ? num_opps: -ENODEV;
> + se->clk_perf_tbl = devm_kcalloc(se->dev, num_opps,
> + sizeof(*se->clk_perf_tbl),
> + GFP_KERNEL);
> + if (!se->clk_perf_tbl)
> + return -ENOMEM;
> +
Non functional to Simplify, keep level = 0 outside and increment level
within loop> + for (i = 0, level = 0; i < num_opps; i++, level++) {
> + opp = dev_pm_opp_find_level_ceil(perf_dev, &level);
> + if (IS_ERR(opp))
> + return PTR_ERR(opp);
> +
> + se->clk_perf_tbl[i] = level;
> + dev_pm_opp_put(opp);
> + }
> + se->num_clk_levels = num_opps;
> + se->has_opp = true;
> +
level++;> return 0;
> }
> EXPORT_SYMBOL_GPL(geni_se_domain_attach);
>
More information about the linux-arm-kernel
mailing list