* [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll
@ 2009-09-20 8:14 Jaswinder Singh Rajput
2009-09-20 22:19 ` Benjamin Herrenschmidt
0 siblings, 1 reply; 4+ messages in thread
From: Jaswinder Singh Rajput @ 2009-09-20 8:14 UTC (permalink / raw)
To: Paul Mackerras, Benjamin Herrenschmidt, linux-fbdev-devel
In function aty128_var_to_pll moving block to where it should be.
This also fixed following compilation warning:
CC [M] drivers/video/aty/aty128fb.o
drivers/video/aty/aty128fb.c: In function ‘aty128_decode_var’:
drivers/video/aty/aty128fb.c:1520: warning: ‘pll.post_divider’ may be used uninitialized in this function
Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
---
drivers/video/aty/aty128fb.c | 33 ++++++++++++++++-----------------
1 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/drivers/video/aty/aty128fb.c b/drivers/video/aty/aty128fb.c
index e4e4d43..fd6746e 100644
--- a/drivers/video/aty/aty128fb.c
+++ b/drivers/video/aty/aty128fb.c
@@ -1328,8 +1328,7 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
unsigned char post_dividers[] = {1,2,4,8,3,6,12};
u32 output_freq;
u32 vclk; /* in .01 MHz */
- int i = 0;
- u32 n, d;
+ int i;
vclk = 100000000 / period_in_ps; /* convert units to 10 kHz */
@@ -1343,27 +1342,27 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
for (i = 0; i < ARRAY_SIZE(post_dividers); i++) {
output_freq = post_dividers[i] * vclk;
if (output_freq >= c.ppll_min && output_freq <= c.ppll_max) {
+ u32 n, d;
+
pll->post_divider = post_dividers[i];
- break;
- }
- }
- if (i == ARRAY_SIZE(post_dividers))
- return -EINVAL;
+ /* calculate feedback divider */
+ n = c.ref_divider * output_freq;
+ d = c.ref_clk;
- /* calculate feedback divider */
- n = c.ref_divider * output_freq;
- d = c.ref_clk;
+ pll->feedback_divider = round_div(n, d);
+ pll->vclk = vclk;
- pll->feedback_divider = round_div(n, d);
- pll->vclk = vclk;
+ DBG("post %d feedback %d vlck %d output %d "
+ "ref_divider %d vclk_per: %d\n", pll->post_divider,
+ pll->feedback_divider, vclk, output_freq,
+ c.ref_divider, period_in_ps);
- DBG("post %d feedback %d vlck %d output %d ref_divider %d "
- "vclk_per: %d\n", pll->post_divider,
- pll->feedback_divider, vclk, output_freq,
- c.ref_divider, period_in_ps);
+ return 0;
+ }
+ }
- return 0;
+ return -EINVAL;
}
--
1.6.4.4
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll
2009-09-20 8:14 [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll Jaswinder Singh Rajput
@ 2009-09-20 22:19 ` Benjamin Herrenschmidt
2009-09-21 12:57 ` Jaswinder Singh Rajput
0 siblings, 1 reply; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2009-09-20 22:19 UTC (permalink / raw)
To: Jaswinder Singh Rajput; +Cc: linux-fbdev-devel, Paul Mackerras
On Sun, 2009-09-20 at 13:44 +0530, Jaswinder Singh Rajput wrote:
> In function aty128_var_to_pll moving block to where it should be.
>
> This also fixed following compilation warning:
> CC [M] drivers/video/aty/aty128fb.o
> drivers/video/aty/aty128fb.c: In function ‘aty128_decode_var’:
> drivers/video/aty/aty128fb.c:1520: warning: ‘pll.post_divider’ may be used uninitialized in this function
I dislike moving pretty much the whole function 2 indentation levels to
the right just because gcc is being silly.
If you really want to silence that warning, just initialize the value
Ben.
> Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
> ---
> drivers/video/aty/aty128fb.c | 33 ++++++++++++++++-----------------
> 1 files changed, 16 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/video/aty/aty128fb.c b/drivers/video/aty/aty128fb.c
> index e4e4d43..fd6746e 100644
> --- a/drivers/video/aty/aty128fb.c
> +++ b/drivers/video/aty/aty128fb.c
> @@ -1328,8 +1328,7 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
> unsigned char post_dividers[] = {1,2,4,8,3,6,12};
> u32 output_freq;
> u32 vclk; /* in .01 MHz */
> - int i = 0;
> - u32 n, d;
> + int i;
>
> vclk = 100000000 / period_in_ps; /* convert units to 10 kHz */
>
> @@ -1343,27 +1342,27 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
> for (i = 0; i < ARRAY_SIZE(post_dividers); i++) {
> output_freq = post_dividers[i] * vclk;
> if (output_freq >= c.ppll_min && output_freq <= c.ppll_max) {
> + u32 n, d;
> +
> pll->post_divider = post_dividers[i];
> - break;
> - }
> - }
>
> - if (i == ARRAY_SIZE(post_dividers))
> - return -EINVAL;
> + /* calculate feedback divider */
> + n = c.ref_divider * output_freq;
> + d = c.ref_clk;
>
> - /* calculate feedback divider */
> - n = c.ref_divider * output_freq;
> - d = c.ref_clk;
> + pll->feedback_divider = round_div(n, d);
> + pll->vclk = vclk;
>
> - pll->feedback_divider = round_div(n, d);
> - pll->vclk = vclk;
> + DBG("post %d feedback %d vlck %d output %d "
> + "ref_divider %d vclk_per: %d\n", pll->post_divider,
> + pll->feedback_divider, vclk, output_freq,
> + c.ref_divider, period_in_ps);
>
> - DBG("post %d feedback %d vlck %d output %d ref_divider %d "
> - "vclk_per: %d\n", pll->post_divider,
> - pll->feedback_divider, vclk, output_freq,
> - c.ref_divider, period_in_ps);
> + return 0;
> + }
> + }
>
> - return 0;
> + return -EINVAL;
> }
>
>
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll
2009-09-20 22:19 ` Benjamin Herrenschmidt
@ 2009-09-21 12:57 ` Jaswinder Singh Rajput
2009-09-21 23:51 ` Benjamin Herrenschmidt
0 siblings, 1 reply; 4+ messages in thread
From: Jaswinder Singh Rajput @ 2009-09-21 12:57 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linux-fbdev-devel, Paul Mackerras
Hello Ben,
On Mon, 2009-09-21 at 08:19 +1000, Benjamin Herrenschmidt wrote:
> On Sun, 2009-09-20 at 13:44 +0530, Jaswinder Singh Rajput wrote:
> > In function aty128_var_to_pll moving block to where it should be.
> >
> > This also fixed following compilation warning:
> > CC [M] drivers/video/aty/aty128fb.o
> > drivers/video/aty/aty128fb.c: In function ‘aty128_decode_var’:
> > drivers/video/aty/aty128fb.c:1520: warning: ‘pll.post_divider’ may be used uninitialized in this function
>
> I dislike moving pretty much the whole function 2 indentation levels to
> the right just because gcc is being silly.
>
Indentation is not an issue if I am not breaking any lines. I am moving
the function where it should be and avoid unnecessary goto(break) and
duplicate checking 'if (i == ARRAY_SIZE(post_dividers))'.
> If you really want to silence that warning, just initialize the value
>
I am trying to save some CPU cycles and you are suggesting to add some
more ;-)
--
JSR
>
> > Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
> > ---
> > drivers/video/aty/aty128fb.c | 33 ++++++++++++++++-----------------
> > 1 files changed, 16 insertions(+), 17 deletions(-)
> >
> > diff --git a/drivers/video/aty/aty128fb.c b/drivers/video/aty/aty128fb.c
> > index e4e4d43..fd6746e 100644
> > --- a/drivers/video/aty/aty128fb.c
> > +++ b/drivers/video/aty/aty128fb.c
> > @@ -1328,8 +1328,7 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
> > unsigned char post_dividers[] = {1,2,4,8,3,6,12};
> > u32 output_freq;
> > u32 vclk; /* in .01 MHz */
> > - int i = 0;
> > - u32 n, d;
> > + int i;
> >
> > vclk = 100000000 / period_in_ps; /* convert units to 10 kHz */
> >
> > @@ -1343,27 +1342,27 @@ static int aty128_var_to_pll(u32 period_in_ps, struct aty128_pll *pll,
> > for (i = 0; i < ARRAY_SIZE(post_dividers); i++) {
> > output_freq = post_dividers[i] * vclk;
> > if (output_freq >= c.ppll_min && output_freq <= c.ppll_max) {
> > + u32 n, d;
> > +
> > pll->post_divider = post_dividers[i];
> > - break;
> > - }
> > - }
> >
> > - if (i == ARRAY_SIZE(post_dividers))
> > - return -EINVAL;
> > + /* calculate feedback divider */
> > + n = c.ref_divider * output_freq;
> > + d = c.ref_clk;
> >
> > - /* calculate feedback divider */
> > - n = c.ref_divider * output_freq;
> > - d = c.ref_clk;
> > + pll->feedback_divider = round_div(n, d);
> > + pll->vclk = vclk;
> >
> > - pll->feedback_divider = round_div(n, d);
> > - pll->vclk = vclk;
> > + DBG("post %d feedback %d vlck %d output %d "
> > + "ref_divider %d vclk_per: %d\n", pll->post_divider,
> > + pll->feedback_divider, vclk, output_freq,
> > + c.ref_divider, period_in_ps);
> >
> > - DBG("post %d feedback %d vlck %d output %d ref_divider %d "
> > - "vclk_per: %d\n", pll->post_divider,
> > - pll->feedback_divider, vclk, output_freq,
> > - c.ref_divider, period_in_ps);
> > + return 0;
> > + }
> > + }
> >
> > - return 0;
> > + return -EINVAL;
> > }
> >
> >
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll
2009-09-21 12:57 ` Jaswinder Singh Rajput
@ 2009-09-21 23:51 ` Benjamin Herrenschmidt
0 siblings, 0 replies; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2009-09-21 23:51 UTC (permalink / raw)
To: Jaswinder Singh Rajput; +Cc: linux-fbdev-devel, Paul Mackerras
On Mon, 2009-09-21 at 18:27 +0530, Jaswinder Singh Rajput wrote:
> Indentation is not an issue if I am not breaking any lines. I am
> moving
> the function where it should be and avoid unnecessary goto(break) and
> duplicate checking 'if (i == ARRAY_SIZE(post_dividers))'.
Where it "should be" is a matter of taste :-)
> > If you really want to silence that warning, just initialize the
> value
> >
>
> I am trying to save some CPU cycles and you are suggesting to add some
> more ;-)
Saving CPU cycles in the mode setting code ? :-)
Anyway, Paul maintains this driver afaik so it's his call :-)
Cheers,
Ben.
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-09-22 0:37 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-20 8:14 [PATCH] aty128fb: move block to where it should be in function aty128_var_to_pll Jaswinder Singh Rajput
2009-09-20 22:19 ` Benjamin Herrenschmidt
2009-09-21 12:57 ` Jaswinder Singh Rajput
2009-09-21 23:51 ` Benjamin Herrenschmidt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).