From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 30 Jun 2017 17:36:42 -0700 From: Stephen Boyd To: Dong Aisheng Cc: Dong Aisheng , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, mturquette@baylibre.com, shawnguo@kernel.org, Anson.Huang@nxp.com, ping.bai@nxp.com Subject: Re: [PATCH 4/9] clk: imx: add pllv4 support Message-ID: <20170701003642.GS22780@codeaurora.org> References: <1494856763-6543-1-git-send-email-aisheng.dong@nxp.com> <1494856763-6543-5-git-send-email-aisheng.dong@nxp.com> <20170620015917.GO4493@codeaurora.org> <20170620093143.GD6805@b29396-OptiPlex-7040> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <20170620093143.GD6805@b29396-OptiPlex-7040> List-ID: On 06/20, Dong Aisheng wrote: > On Mon, Jun 19, 2017 at 06:59:17PM -0700, Stephen Boyd wrote: > > On 05/15, Dong Aisheng wrote: > > > + > > > + if (clk_pllv4_is_enabled(hw)) { > > > + WARN(1, "clk_pllv4: can't change rate when pll is enabled"); > > > + return -EINVAL; > > > > Sad, CLK_SET_RATE_GATE isn't working for you I suppose? > > > > CLK_SET_RATE_GATE can't work in early stage before running clk_disable_unused. > At that point, the clock tree state is still not consistent with HW. > e.g. prepare/enable count is still zero but it's actually enabled due to > reset state or bootloader. > > The code here is adding a double check in case user sets rate in early stage. > > However, probably it could also be moved into clock core as it's not platform > dependant behavior? > Ok. It would be good to fix the core framework to synchronize the prepared/enabled state at registration time so we don't need this check in the driver. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project