From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753150AbbGJFqv (ORCPT ); Fri, 10 Jul 2015 01:46:51 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:49058 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1753128AbbGJFql (ORCPT ); Fri, 10 Jul 2015 01:46:41 -0400 X-Listener-Flag: 11101 Message-ID: <1436507197.3526.119.camel@mtksdaap41> Subject: Re: [PATCH v2 2/2] clk: mediatek: Add MT8173 MMPLL change rate support From: James Liao To: Stephen Boyd CC: Matthias Brugger , Mike Turquette , Heiko Stubner , , , , Ricky Liang , "Rob Herring" , , "Sascha Hauer" , Date: Fri, 10 Jul 2015 13:46:37 +0800 In-Reply-To: <559DC44A.1030900@codeaurora.org> References: <1436344666-25645-1-git-send-email-jamesjj.liao@mediatek.com> <1436344666-25645-3-git-send-email-jamesjj.liao@mediatek.com> <559DC44A.1030900@codeaurora.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.2.3-0ubuntu6 Content-Transfer-Encoding: 7bit MIME-Version: 1.0 X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Stephen, On Wed, 2015-07-08 at 17:46 -0700, Stephen Boyd wrote: > On 07/08/2015 01:37 AM, James Liao wrote: > > diff --git a/drivers/clk/mediatek/clk-pll.c b/drivers/clk/mediatek/clk-pll.c > > index 68af518..622e7b6 100644 > > --- a/drivers/clk/mediatek/clk-pll.c > > +++ b/drivers/clk/mediatek/clk-pll.c > > @@ -138,16 +138,28 @@ static void mtk_pll_calc_values(struct mtk_clk_pll *pll, u32 *pcw, u32 *postdiv, > > u32 freq, u32 fin) > > { > > unsigned long fmin = 1000 * MHZ; > > + const struct mtk_pll_div_table *div_table = pll->data->div_table; > > u64 _pcw; > > u32 val; > > > > if (freq > pll->data->fmax) > > freq = pll->data->fmax; > > > > - for (val = 0; val < 4; val++) { > > + if (div_table) { > > + if (freq > div_table[0].freq) > > + freq = div_table[0].freq; > > + > > + for (val = 0; div_table[val + 1].freq != 0; val++) { > > + if (freq > div_table[val + 1].freq) > > + break; > > + } > > *postdiv = 1 << val; > > - if (freq * *postdiv >= fmin) > > - break; > > + } else { > > + for (val = 0; val < 5; val++) { > > + *postdiv = 1 << val; > > + if ((u64)freq * *postdiv >= fmin) > > > > No mention of this cast in the commit text. Is this fixing a bug? If so, > please mention it and/or split this bug fix off of this patch. > Yes, this is a fix to avoid u32 overflow. I'll split it in next patch. Best regards, James