From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754602AbbKLOZQ (ORCPT ); Thu, 12 Nov 2015 09:25:16 -0500 Received: from mout.kundenserver.de ([212.227.126.133]:64426 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754394AbbKLOZN (ORCPT ); Thu, 12 Nov 2015 09:25:13 -0500 X-Greylist: delayed 617 seconds by postgrey-1.27 at vger.kernel.org; Thu, 12 Nov 2015 09:25:12 EST From: Arnd Bergmann To: Michael Turquette , Stephen Boyd Cc: Gabriel Fernandez , Pankaj Dev , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kernel@stlinux.com, Maxime Coquelin , Srinivas Kandagatla , Patrice Chotard Subject: [PATCH] clk: st: avoid uninitialized variable use Date: Thu, 12 Nov 2015 15:24:29 +0100 Message-ID: <3719029.IbREgssWiU@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:L2mEXwAT9D45IH/PMSUjSJ4+H2DxmLe6mXB1GMETi5O1JTypzze nBeZZJTZtyWvQ4be/ik53VIUcRFv6MEujBw3jhssusqGpsycU60lFZUcCT9+Ljr/7I9m0nJ Qn2dJcOG77jiGcDqSqqN5UFl8d7W3HK4j4+Z9EmL3iX4bvEReRxfBN/8nIltEvyOx3SA1iy Mk1thqPoRcN9zmHFqszHA== X-UI-Out-Filterresults: notjunk:1;V01:K0:ovOioF3kAXQ=:KI7bkq6ycBpm6fDKn8Oqh5 BcjNjDiltpqk3zdA4WQHQQiLodLFQqZOsXE+QsKMTHvxtSjg9ZJXPnGLTDDljhSDkPb1VRV1g BHUuQrmdzcQRZfZ4CXeEE5wDmoLm2phw2ykCd37DGGx2YmYUUlEcgPbTFKq+Lis7F9wxf7tIc DPpSbpUPpIESg2dEHBVYnJNgOGDyaReVoQeG1RL/wXc5PQBRlTMaS5/7AZlxurqLiyxw9edSH XZV1YnTYJpqqwKHbwe1NkgsgLmPBcKOMM2CrZpC/LIAycXRUsMUo5XkF2OtqItonbCVe6ltjk TPItpmHjNK5gbcdXRvxxMjY3rxRRgDAHMsI95c8LB/zH8T8mLjCjkHJkG4ofeJ5c/2ldeKZG8 i+Q+B+tMeKsu5PCFOdhudwsBcyRxGTeL6uycTos30NyOTFGVD7ORU3+cHH/jzuIIWIpkHTfGm UzplbZ9FdQOzDpFSUEt1jEXn9LkXImYK6YJ3qDAbjpypAuBfPMolsL7EDosY9ayYYiAn2ej8k TPTQqzUMu6TJzrWj+2/ycZCNxYMN2OaHn+DA1iSr5D3OEYxpmaosq7Fj36P2CKGNZ6/aSS8KO evw3MFK9Eks1rjb7HKhnrqwyt8dWcsNRncT0D7eHrzVPlAq/8bA42GyNBhhao7j0jfuxEH0kG T42GB0g5MpxvStWnWUKGDI5Bb4SQQE+/rSnNbQfun7lXUlAKzc6/KOQK7G19HqEHMnKQgpJNC BrGFB42bK6mq0G5J Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org quadfs_pll_fs660c32_round_rate prints a few structure members that are never initialized, and also doesn't print the only one it cares about. We get a gcc warning about the ones that are printed: clk/st/clkgen-fsyn.c:560:93: warning: 'params.sdiv' may be used uninitialized in this function clk/st/clkgen-fsyn.c:560:93: warning: 'params.mdiv' may be used uninitialized in this function clk/st/clkgen-fsyn.c:560:93: warning: 'params.pe' may be used uninitialized in this function clk/st/clkgen-fsyn.c:560:93: warning: 'params.nsdiv' may be used uninitialized in this function This changes the code to no longer print uninitialized data, and for good measure it also prints the ndiv member that is being set. Signed-off-by: Arnd Bergmann Fixes: 5f7aa9071e93 ("clk: st: Support for QUADFS inside ClockGenB/C/D/E/F") diff --git a/drivers/clk/st/clkgen-fsyn.c b/drivers/clk/st/clkgen-fsyn.c index 576cd0354d48..ccb324d97160 100644 --- a/drivers/clk/st/clkgen-fsyn.c +++ b/drivers/clk/st/clkgen-fsyn.c @@ -549,19 +549,20 @@ static int clk_fs660c32_vco_get_params(unsigned long input, return 0; } -static long quadfs_pll_fs660c32_round_rate(struct clk_hw *hw, unsigned long rate - , unsigned long *prate) +static long quadfs_pll_fs660c32_round_rate(struct clk_hw *hw, + unsigned long rate, + unsigned long *prate) { struct stm_fs params; - if (!clk_fs660c32_vco_get_params(*prate, rate, ¶ms)) - clk_fs660c32_vco_get_rate(*prate, ¶ms, &rate); + if (clk_fs660c32_vco_get_params(*prate, rate, ¶ms)) + return rate; - pr_debug("%s: %s new rate %ld [sdiv=0x%x,md=0x%x,pe=0x%x,nsdiv3=%u]\n", + clk_fs660c32_vco_get_rate(*prate, ¶ms, &rate); + + pr_debug("%s: %s new rate %ld [ndiv=%u]\n", __func__, clk_hw_get_name(hw), - rate, (unsigned int)params.sdiv, - (unsigned int)params.mdiv, - (unsigned int)params.pe, (unsigned int)params.nsdiv); + rate, (unsigned int)params.ndiv); return rate; }