From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Boyd Subject: Re: [PATCH 2/3] firmware: qcom: scm: Remove core, iface and bus clocks dependency Date: Tue, 1 Nov 2016 16:11:01 -0700 Message-ID: <20161101231101.GW16026@codeaurora.org> References: <1477699729-18451-1-git-send-email-spjoshi@codeaurora.org> <1477699729-18451-3-git-send-email-spjoshi@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1477699729-18451-3-git-send-email-spjoshi@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org To: Sarangdhar Joshi Cc: Andy Gross , David Brown , linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , Jordan Crouse , Trilok Soni List-Id: linux-arm-msm@vger.kernel.org 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. > - scm->iface_clk = devm_clk_get(&pdev->dev, "iface"); > - if (IS_ERR(scm->iface_clk)) { > - if (PTR_ERR(scm->iface_clk) != -EPROBE_DEFER) -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project