Loading drivers/clk/qcom/common.c +18 −5 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. * Copyright (c) 2013-2014, 2017-2019, The Linux Foundation. * All rights reserved. */ #include <linux/export.h> Loading @@ -21,6 +22,8 @@ struct qcom_cc { struct qcom_reset_controller reset; struct clk_regmap **rclks; size_t num_rclks; struct clk_hw **clk_hws; size_t num_clk_hws; }; const Loading Loading @@ -213,6 +216,9 @@ static struct clk_hw *qcom_cc_clk_hw_get(struct of_phandle_args *clkspec, struct qcom_cc *cc = data; unsigned int idx = clkspec->args[0]; if (idx < cc->num_clk_hws && cc->clk_hws[idx]) return cc->clk_hws[idx]; if (idx >= cc->num_rclks) { pr_err("%s: invalid index %u\n", __func__, idx); return ERR_PTR(-EINVAL); Loading Loading @@ -246,9 +252,11 @@ int qcom_cc_really_probe(struct platform_device *pdev, reset->regmap = regmap; reset->reset_map = desc->resets; if (desc->num_resets) { ret = devm_reset_controller_register(dev, &reset->rcdev); if (ret) return ret; } if (desc->gdscs && desc->num_gdscs) { scd = devm_kzalloc(dev, sizeof(*scd), GFP_KERNEL); Loading @@ -268,10 +276,15 @@ int qcom_cc_really_probe(struct platform_device *pdev, cc->rclks = rclks; cc->num_rclks = num_clks; cc->clk_hws = clk_hws; cc->num_clk_hws = num_clk_hws; qcom_cc_drop_protected(dev, cc); for (i = 0; i < num_clk_hws; i++) { if (!clk_hws[i]) continue; ret = devm_clk_hw_register(dev, clk_hws[i]); if (ret) return ret; Loading Loading
drivers/clk/qcom/common.c +18 −5 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. * Copyright (c) 2013-2014, 2017-2019, The Linux Foundation. * All rights reserved. */ #include <linux/export.h> Loading @@ -21,6 +22,8 @@ struct qcom_cc { struct qcom_reset_controller reset; struct clk_regmap **rclks; size_t num_rclks; struct clk_hw **clk_hws; size_t num_clk_hws; }; const Loading Loading @@ -213,6 +216,9 @@ static struct clk_hw *qcom_cc_clk_hw_get(struct of_phandle_args *clkspec, struct qcom_cc *cc = data; unsigned int idx = clkspec->args[0]; if (idx < cc->num_clk_hws && cc->clk_hws[idx]) return cc->clk_hws[idx]; if (idx >= cc->num_rclks) { pr_err("%s: invalid index %u\n", __func__, idx); return ERR_PTR(-EINVAL); Loading Loading @@ -246,9 +252,11 @@ int qcom_cc_really_probe(struct platform_device *pdev, reset->regmap = regmap; reset->reset_map = desc->resets; if (desc->num_resets) { ret = devm_reset_controller_register(dev, &reset->rcdev); if (ret) return ret; } if (desc->gdscs && desc->num_gdscs) { scd = devm_kzalloc(dev, sizeof(*scd), GFP_KERNEL); Loading @@ -268,10 +276,15 @@ int qcom_cc_really_probe(struct platform_device *pdev, cc->rclks = rclks; cc->num_rclks = num_clks; cc->clk_hws = clk_hws; cc->num_clk_hws = num_clk_hws; qcom_cc_drop_protected(dev, cc); for (i = 0; i < num_clk_hws; i++) { if (!clk_hws[i]) continue; ret = devm_clk_hw_register(dev, clk_hws[i]); if (ret) return ret; Loading