Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751549AbdHLEOE convert rfc822-to-8bit (ORCPT ); Sat, 12 Aug 2017 00:14:04 -0400 Received: from smtp.csie.ntu.edu.tw ([140.112.30.61]:43368 "EHLO smtp.csie.ntu.edu.tw" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750998AbdHLEOC (ORCPT ); Sat, 12 Aug 2017 00:14:02 -0400 MIME-Version: 1.0 In-Reply-To: References: <946794e97ae2c36cd67c272099e8236a589efc28.1500043741.git-series.plaes@plaes.org> <20170717085235.i7pwwql5dgmnf6kk@flea> From: Chen-Yu Tsai Date: Sat, 12 Aug 2017 12:13:38 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [linux-sunxi] Re: [PATCH v6 1/6] clk: sunxi-ng: div: Add support for fixed post-divider To: Icenowy Zheng Cc: Maxime Ripard , Priit Laes , Mark Rutland , devicetree , Jonathan Liu , Michael Turquette , linux-sunxi , Stephen Boyd , Russell King , linux-kernel , Chen-Yu Tsai , Rob Herring , Philipp Zabel , linux-clk , linux-arm-kernel Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2416 Lines: 70 On Sat, Aug 12, 2017 at 11:07 AM, wrote: > 在 2017-07-17 16:52,Maxime Ripard 写道: >> >> On Fri, Jul 14, 2017 at 05:49:23PM +0300, Priit Laes wrote: >>> >>> SATA clock on sun4i/sun7i is of type (parent) / M / 6 where >>> 6 is fixed post-divider. >>> >>> Signed-off-by: Priit Laes >>> --- >>> drivers/clk/sunxi-ng/ccu_div.c | 15 +++++++++++++-- >>> drivers/clk/sunxi-ng/ccu_div.h | 3 ++- >>> 2 files changed, 15 insertions(+), 3 deletions(-) >>> >>> diff --git a/drivers/clk/sunxi-ng/ccu_div.c >>> b/drivers/clk/sunxi-ng/ccu_div.c >>> index c0e5c10..744502a 100644 >>> --- a/drivers/clk/sunxi-ng/ccu_div.c >>> +++ b/drivers/clk/sunxi-ng/ccu_div.c >>> @@ -21,6 +21,9 @@ static unsigned long ccu_div_round_rate(struct >>> ccu_mux_internal *mux, >>> { >>> struct ccu_div *cd = data; >>> >>> + if (cd->common.features & CCU_FEATURE_FIXED_POSTDIV) >>> + rate *= cd->fixed_post_div; >>> + >>> return divider_round_rate_parent(&cd->common.hw, parent, >>> rate, parent_rate, >>> cd->div.table, cd->div.width, >> >> >> >> You still haven't addressed the biggest issue with this patch, see: >> https://patchwork.kernel.org/patch/9825565/ > > > I think he has already did the changes suggested in the review. Nope. Only half of it is fixed. First you "unapply" the post-divider, i.e. multiply the rate by the divider. Then you pass it to divider_round_rate_parent. You still have to reapply the divider to the result. This last part is missing. This means the clock rate returned by ccu_div_round_rate is going to be off. Instead the return statement should be return divider_round_rate_parent(...) / cd->fixed_post_div ChenYu > > (P.S. during developing R40 CCU driver I found that pll-periph0-sata > also needs this patch, so I'm rechecking it) > >> >> Maxime >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel > > > -- > You received this message because you are subscribed to the Google Groups > "linux-sunxi" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to linux-sunxi+unsubscribe@googlegroups.com. > For more options, visit https://groups.google.com/d/optout.