Re: [PATCH 2/3] firmware: qcom: scm: Remove core, iface and bus clocks dependency
From: Bjorn Andersson
Date: Wed Nov 02 2016 - 16:04:41 EST
On Wed 02 Nov 12:24 PDT 2016, Sarangdhar Joshi wrote:
> On 11/01/2016 04:11 PM, Stephen Boyd wrote:
> >On 10/28, Sarangdhar Joshi wrote:
> >>@@ -380,33 +384,43 @@ EXPORT_SYMBOL(qcom_scm_is_available);
> >> static int qcom_scm_probe(struct platform_device *pdev)
> >> {
> >> struct qcom_scm *scm;
> >>+ uint64_t clks;
> >> int ret;
> >>
> >> scm = devm_kzalloc(&pdev->dev, sizeof(*scm), GFP_KERNEL);
> >> if (!scm)
> >> return -ENOMEM;
> >>
> >>- scm->core_clk = devm_clk_get(&pdev->dev, "core");
> >>- if (IS_ERR(scm->core_clk)) {
> >>- if (PTR_ERR(scm->core_clk) == -EPROBE_DEFER)
> >>- return PTR_ERR(scm->core_clk);
> >>+ clks = (uint64_t)of_device_get_match_data(&pdev->dev);
> >>+ if (clks & SCM_HAS_CORE_CLK) {
> >>+ scm->core_clk = devm_clk_get(&pdev->dev, "core");
> >>+ if (IS_ERR(scm->core_clk)) {
> >>+ if (PTR_ERR(scm->core_clk) == -EPROBE_DEFER)
> >>+ return PTR_ERR(scm->core_clk);
> >>
> >>- scm->core_clk = NULL;
> >>+ scm->core_clk = NULL;
> >>+ }
> >> }
> >>
> >> if (of_device_is_compatible(pdev->dev.of_node, "qcom,scm")) {
> >
> >Why didn't this also get added to the flags feature? I'd prefer
> >we either use of_device_is_compatible() for everything, or device
> >data to figure out what quirks to apply.
>
> You're right. These flags are already added for "qcom,scm" compatible. We
> can modify this to honor data flags only. I hope it's okay to update it in
> the same patch?
>
Yes, you're replacing the old conditional with a set of new ones, so it
should go in this patch.
Regards,
Bjorn