From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
To: linux-fbdev@vger.kernel.org
Subject: Re: [REPOST][PATCH 1/2] fbdev: fix indentation in modedb.c
Date: Wed, 14 Sep 2011 21:33:44 +0000 [thread overview]
Message-ID: <4E711DB8.60407@gmx.de> (raw)
In-Reply-To: <1315929909-26311-1-git-send-email-timur@freescale.com>
On 09/13/2011 04:05 PM, Timur Tabi wrote:
> Fix the incorrect indentation in functions fb_try_mode() and fb_find_mode().
>
> Signed-off-by: Timur Tabi <timur@freescale.com>
Applied this patch, although I do not like this sort of patches very much. Well,
I guess it's an improvement, are you doing some real work on this code?
Thanks,
Florian Tobias Schandinat
> ---
> drivers/video/modedb.c | 444 ++++++++++++++++++++++++------------------------
> 1 files changed, 225 insertions(+), 219 deletions(-)
>
> diff --git a/drivers/video/modedb.c b/drivers/video/modedb.c
> index cb175fe..a9a907c 100644
> --- a/drivers/video/modedb.c
> +++ b/drivers/video/modedb.c
> @@ -491,55 +491,56 @@ EXPORT_SYMBOL(vesa_modes);
> static int fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
> const struct fb_videomode *mode, unsigned int bpp)
> {
> - int err = 0;
> -
> - DPRINTK("Trying mode %s %dx%d-%d@%d\n", mode->name ? mode->name : "noname",
> - mode->xres, mode->yres, bpp, mode->refresh);
> - var->xres = mode->xres;
> - var->yres = mode->yres;
> - var->xres_virtual = mode->xres;
> - var->yres_virtual = mode->yres;
> - var->xoffset = 0;
> - var->yoffset = 0;
> - var->bits_per_pixel = bpp;
> - var->activate |= FB_ACTIVATE_TEST;
> - var->pixclock = mode->pixclock;
> - var->left_margin = mode->left_margin;
> - var->right_margin = mode->right_margin;
> - var->upper_margin = mode->upper_margin;
> - var->lower_margin = mode->lower_margin;
> - var->hsync_len = mode->hsync_len;
> - var->vsync_len = mode->vsync_len;
> - var->sync = mode->sync;
> - var->vmode = mode->vmode;
> - if (info->fbops->fb_check_var)
> - err = info->fbops->fb_check_var(var, info);
> - var->activate &= ~FB_ACTIVATE_TEST;
> - return err;
> + int err = 0;
> +
> + DPRINTK("Trying mode %s %dx%d-%d@%d\n",
> + mode->name ? mode->name : "noname",
> + mode->xres, mode->yres, bpp, mode->refresh);
> + var->xres = mode->xres;
> + var->yres = mode->yres;
> + var->xres_virtual = mode->xres;
> + var->yres_virtual = mode->yres;
> + var->xoffset = 0;
> + var->yoffset = 0;
> + var->bits_per_pixel = bpp;
> + var->activate |= FB_ACTIVATE_TEST;
> + var->pixclock = mode->pixclock;
> + var->left_margin = mode->left_margin;
> + var->right_margin = mode->right_margin;
> + var->upper_margin = mode->upper_margin;
> + var->lower_margin = mode->lower_margin;
> + var->hsync_len = mode->hsync_len;
> + var->vsync_len = mode->vsync_len;
> + var->sync = mode->sync;
> + var->vmode = mode->vmode;
> + if (info->fbops->fb_check_var)
> + err = info->fbops->fb_check_var(var, info);
> + var->activate &= ~FB_ACTIVATE_TEST;
> + return err;
> }
>
> /**
> - * fb_find_mode - finds a valid video mode
> - * @var: frame buffer user defined part of display
> - * @info: frame buffer info structure
> - * @mode_option: string video mode to find
> - * @db: video mode database
> - * @dbsize: size of @db
> - * @default_mode: default video mode to fall back to
> - * @default_bpp: default color depth in bits per pixel
> + * fb_find_mode - finds a valid video mode
> + * @var: frame buffer user defined part of display
> + * @info: frame buffer info structure
> + * @mode_option: string video mode to find
> + * @db: video mode database
> + * @dbsize: size of @db
> + * @default_mode: default video mode to fall back to
> + * @default_bpp: default color depth in bits per pixel
> *
> - * Finds a suitable video mode, starting with the specified mode
> - * in @mode_option with fallback to @default_mode. If
> - * @default_mode fails, all modes in the video mode database will
> - * be tried.
> + * Finds a suitable video mode, starting with the specified mode
> + * in @mode_option with fallback to @default_mode. If
> + * @default_mode fails, all modes in the video mode database will
> + * be tried.
> *
> - * Valid mode specifiers for @mode_option:
> + * Valid mode specifiers for @mode_option:
> *
> - * <xres>x<yres>[M][R][-<bpp>][@<refresh>][i][m] or
> - * <name>[-<bpp>][@<refresh>]
> + * <xres>x<yres>[M][R][-<bpp>][@<refresh>][i][m] or
> + * <name>[-<bpp>][@<refresh>]
> *
> - * with <xres>, <yres>, <bpp> and <refresh> decimal numbers and
> - * <name> a string.
> + * with <xres>, <yres>, <bpp> and <refresh> decimal numbers and
> + * <name> a string.
> *
> * If 'M' is present after yres (and before refresh/bpp if present),
> * the function will compute the timings using VESA(tm) Coordinated
> @@ -551,12 +552,12 @@ static int fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
> *
> * 1024x768MR-8@60m - Reduced blank with margins at 60Hz.
> *
> - * NOTE: The passed struct @var is _not_ cleared! This allows you
> - * to supply values for e.g. the grayscale and accel_flags fields.
> + * NOTE: The passed struct @var is _not_ cleared! This allows you
> + * to supply values for e.g. the grayscale and accel_flags fields.
> *
> - * Returns zero for failure, 1 if using specified @mode_option,
> - * 2 if using specified @mode_option with an ignored refresh rate,
> - * 3 if default mode is used, 4 if fall back to any valid mode.
> + * Returns zero for failure, 1 if using specified @mode_option,
> + * 2 if using specified @mode_option with an ignored refresh rate,
> + * 3 if default mode is used, 4 if fall back to any valid mode.
> *
> */
>
> @@ -566,198 +567,203 @@ int fb_find_mode(struct fb_var_screeninfo *var,
> const struct fb_videomode *default_mode,
> unsigned int default_bpp)
> {
> - int i;
> -
> - /* Set up defaults */
> - if (!db) {
> - db = modedb;
> - dbsize = ARRAY_SIZE(modedb);
> - }
> -
> - if (!default_mode)
> - default_mode = &db[0];
> -
> - if (!default_bpp)
> - default_bpp = 8;
> -
> - /* Did the user specify a video mode? */
> - if (!mode_option)
> - mode_option = fb_mode_option;
> - if (mode_option) {
> - const char *name = mode_option;
> - unsigned int namelen = strlen(name);
> - int res_specified = 0, bpp_specified = 0, refresh_specified = 0;
> - unsigned int xres = 0, yres = 0, bpp = default_bpp, refresh = 0;
> - int yres_specified = 0, cvt = 0, rb = 0, interlace = 0, margins = 0;
> - u32 best, diff, tdiff;
> -
> - for (i = namelen-1; i >= 0; i--) {
> - switch (name[i]) {
> - case '@':
> - namelen = i;
> - if (!refresh_specified && !bpp_specified &&
> - !yres_specified) {
> - refresh = simple_strtol(&name[i+1], NULL, 10);
> - refresh_specified = 1;
> - if (cvt || rb)
> - cvt = 0;
> - } else
> - goto done;
> - break;
> - case '-':
> - namelen = i;
> - if (!bpp_specified && !yres_specified) {
> - bpp = simple_strtol(&name[i+1], NULL, 10);
> - bpp_specified = 1;
> - if (cvt || rb)
> - cvt = 0;
> - } else
> - goto done;
> - break;
> - case 'x':
> - if (!yres_specified) {
> - yres = simple_strtol(&name[i+1], NULL, 10);
> - yres_specified = 1;
> - } else
> - goto done;
> - break;
> - case '0' ... '9':
> - break;
> - case 'M':
> - if (!yres_specified)
> - cvt = 1;
> - break;
> - case 'R':
> - if (!cvt)
> - rb = 1;
> - break;
> - case 'm':
> - if (!cvt)
> - margins = 1;
> - break;
> - case 'i':
> - if (!cvt)
> - interlace = 1;
> - break;
> - default:
> - goto done;
> - }
> - }
> - if (i < 0 && yres_specified) {
> - xres = simple_strtol(name, NULL, 10);
> - res_specified = 1;
> - }
> -done:
> - if (cvt) {
> - struct fb_videomode cvt_mode;
> - int ret;
> -
> - DPRINTK("CVT mode %dx%d@%dHz%s%s%s\n", xres, yres,
> - (refresh) ? refresh : 60, (rb) ? " reduced blanking" :
> - "", (margins) ? " with margins" : "", (interlace) ?
> - " interlaced" : "");
> -
> - memset(&cvt_mode, 0, sizeof(cvt_mode));
> - cvt_mode.xres = xres;
> - cvt_mode.yres = yres;
> - cvt_mode.refresh = (refresh) ? refresh : 60;
> + int i;
>
> - if (interlace)
> - cvt_mode.vmode |= FB_VMODE_INTERLACED;
> - else
> - cvt_mode.vmode &= ~FB_VMODE_INTERLACED;
> + /* Set up defaults */
> + if (!db) {
> + db = modedb;
> + dbsize = ARRAY_SIZE(modedb);
> + }
>
> - ret = fb_find_mode_cvt(&cvt_mode, margins, rb);
> + if (!default_mode)
> + default_mode = &db[0];
> +
> + if (!default_bpp)
> + default_bpp = 8;
> +
> + /* Did the user specify a video mode? */
> + if (!mode_option)
> + mode_option = fb_mode_option;
> + if (mode_option) {
> + const char *name = mode_option;
> + unsigned int namelen = strlen(name);
> + int res_specified = 0, bpp_specified = 0, refresh_specified = 0;
> + unsigned int xres = 0, yres = 0, bpp = default_bpp, refresh = 0;
> + int yres_specified = 0, cvt = 0, rb = 0, interlace = 0;
> + int margins = 0;
> + u32 best, diff, tdiff;
> +
> + for (i = namelen-1; i >= 0; i--) {
> + switch (name[i]) {
> + case '@':
> + namelen = i;
> + if (!refresh_specified && !bpp_specified &&
> + !yres_specified) {
> + refresh = simple_strtol(&name[i+1], NULL,
> + 10);
> + refresh_specified = 1;
> + if (cvt || rb)
> + cvt = 0;
> + } else
> + goto done;
> + break;
> + case '-':
> + namelen = i;
> + if (!bpp_specified && !yres_specified) {
> + bpp = simple_strtol(&name[i+1], NULL,
> + 10);
> + bpp_specified = 1;
> + if (cvt || rb)
> + cvt = 0;
> + } else
> + goto done;
> + break;
> + case 'x':
> + if (!yres_specified) {
> + yres = simple_strtol(&name[i+1], NULL,
> + 10);
> + yres_specified = 1;
> + } else
> + goto done;
> + break;
> + case '0' ... '9':
> + break;
> + case 'M':
> + if (!yres_specified)
> + cvt = 1;
> + break;
> + case 'R':
> + if (!cvt)
> + rb = 1;
> + break;
> + case 'm':
> + if (!cvt)
> + margins = 1;
> + break;
> + case 'i':
> + if (!cvt)
> + interlace = 1;
> + break;
> + default:
> + goto done;
> + }
> + }
> + if (i < 0 && yres_specified) {
> + xres = simple_strtol(name, NULL, 10);
> + res_specified = 1;
> + }
> +done:
> + if (cvt) {
> + struct fb_videomode cvt_mode;
> + int ret;
> +
> + DPRINTK("CVT mode %dx%d@%dHz%s%s%s\n", xres, yres,
> + (refresh) ? refresh : 60,
> + (rb) ? " reduced blanking" : "",
> + (margins) ? " with margins" : "",
> + (interlace) ? " interlaced" : "");
> +
> + memset(&cvt_mode, 0, sizeof(cvt_mode));
> + cvt_mode.xres = xres;
> + cvt_mode.yres = yres;
> + cvt_mode.refresh = (refresh) ? refresh : 60;
> +
> + if (interlace)
> + cvt_mode.vmode |= FB_VMODE_INTERLACED;
> + else
> + cvt_mode.vmode &= ~FB_VMODE_INTERLACED;
> +
> + ret = fb_find_mode_cvt(&cvt_mode, margins, rb);
> +
> + if (!ret && !fb_try_mode(var, info, &cvt_mode, bpp)) {
> + DPRINTK("modedb CVT: CVT mode ok\n");
> + return 1;
> + }
>
> - if (!ret && !fb_try_mode(var, info, &cvt_mode, bpp)) {
> - DPRINTK("modedb CVT: CVT mode ok\n");
> - return 1;
> - }
> + DPRINTK("CVT mode invalid, getting mode from database\n");
> + }
>
> - DPRINTK("CVT mode invalid, getting mode from database\n");
> - }
> + DPRINTK("Trying specified video mode%s %ix%i\n",
> + refresh_specified ? "" : " (ignoring refresh rate)",
> + xres, yres);
>
> - DPRINTK("Trying specified video mode%s %ix%i\n",
> - refresh_specified ? "" : " (ignoring refresh rate)", xres, yres);
> -
> - if (!refresh_specified) {
> - /*
> - * If the caller has provided a custom mode database and a
> - * valid monspecs structure, we look for the mode with the
> - * highest refresh rate. Otherwise we play it safe it and
> - * try to find a mode with a refresh rate closest to the
> - * standard 60 Hz.
> - */
> - if (db != modedb &&
> - info->monspecs.vfmin && info->monspecs.vfmax &&
> - info->monspecs.hfmin && info->monspecs.hfmax &&
> - info->monspecs.dclkmax) {
> - refresh = 1000;
> - } else {
> - refresh = 60;
> + if (!refresh_specified) {
> + /*
> + * If the caller has provided a custom mode database and
> + * a valid monspecs structure, we look for the mode with
> + * the highest refresh rate. Otherwise we play it safe
> + * it and try to find a mode with a refresh rate closest
> + * to the standard 60 Hz.
> + */
> + if (db != modedb &&
> + info->monspecs.vfmin && info->monspecs.vfmax &&
> + info->monspecs.hfmin && info->monspecs.hfmax &&
> + info->monspecs.dclkmax) {
> + refresh = 1000;
> + } else {
> + refresh = 60;
> + }
> }
> - }
>
> - diff = -1;
> - best = -1;
> - for (i = 0; i < dbsize; i++) {
> - if ((name_matches(db[i], name, namelen) ||
> - (res_specified && res_matches(db[i], xres, yres))) &&
> - !fb_try_mode(var, info, &db[i], bpp)) {
> - if (refresh_specified && db[i].refresh = refresh) {
> - return 1;
> - } else {
> + diff = -1;
> + best = -1;
> + for (i = 0; i < dbsize; i++) {
> + if ((name_matches(db[i], name, namelen) ||
> + (res_specified && res_matches(db[i], xres, yres))) &&
> + !fb_try_mode(var, info, &db[i], bpp)) {
> + if (refresh_specified && db[i].refresh = refresh)
> + return 1;
> +
> if (abs(db[i].refresh - refresh) < diff) {
> diff = abs(db[i].refresh - refresh);
> best = i;
> }
> }
> }
> - }
> - if (best != -1) {
> - fb_try_mode(var, info, &db[best], bpp);
> - return (refresh_specified) ? 2 : 1;
> - }
> -
> - diff = 2 * (xres + yres);
> - best = -1;
> - DPRINTK("Trying best-fit modes\n");
> - for (i = 0; i < dbsize; i++) {
> - DPRINTK("Trying %ix%i\n", db[i].xres, db[i].yres);
> - if (!fb_try_mode(var, info, &db[i], bpp)) {
> - tdiff = abs(db[i].xres - xres) +
> - abs(db[i].yres - yres);
> -
> - /*
> - * Penalize modes with resolutions smaller
> - * than requested.
> - */
> - if (xres > db[i].xres || yres > db[i].yres)
> - tdiff += xres + yres;
> + if (best != -1) {
> + fb_try_mode(var, info, &db[best], bpp);
> + return (refresh_specified) ? 2 : 1;
> + }
>
> - if (diff > tdiff) {
> - diff = tdiff;
> - best = i;
> + diff = 2 * (xres + yres);
> + best = -1;
> + DPRINTK("Trying best-fit modes\n");
> + for (i = 0; i < dbsize; i++) {
> + DPRINTK("Trying %ix%i\n", db[i].xres, db[i].yres);
> + if (!fb_try_mode(var, info, &db[i], bpp)) {
> + tdiff = abs(db[i].xres - xres) +
> + abs(db[i].yres - yres);
> +
> + /*
> + * Penalize modes with resolutions smaller
> + * than requested.
> + */
> + if (xres > db[i].xres || yres > db[i].yres)
> + tdiff += xres + yres;
> +
> + if (diff > tdiff) {
> + diff = tdiff;
> + best = i;
> + }
> }
> }
> + if (best != -1) {
> + fb_try_mode(var, info, &db[best], bpp);
> + return 5;
> + }
> }
> - if (best != -1) {
> - fb_try_mode(var, info, &db[best], bpp);
> - return 5;
> - }
> - }
>
> - DPRINTK("Trying default video mode\n");
> - if (!fb_try_mode(var, info, default_mode, default_bpp))
> - return 3;
> + DPRINTK("Trying default video mode\n");
> + if (!fb_try_mode(var, info, default_mode, default_bpp))
> + return 3;
>
> - DPRINTK("Trying all modes\n");
> - for (i = 0; i < dbsize; i++)
> - if (!fb_try_mode(var, info, &db[i], default_bpp))
> - return 4;
> + DPRINTK("Trying all modes\n");
> + for (i = 0; i < dbsize; i++)
> + if (!fb_try_mode(var, info, &db[i], default_bpp))
> + return 4;
>
> - DPRINTK("No valid mode found\n");
> - return 0;
> + DPRINTK("No valid mode found\n");
> + return 0;
> }
>
> /**
next prev parent reply other threads:[~2011-09-14 21:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-13 16:05 [REPOST][PATCH 1/2] fbdev: fix indentation in modedb.c Timur Tabi
2011-09-14 21:33 ` Florian Tobias Schandinat [this message]
2011-09-14 21:39 ` Timur Tabi
2011-09-14 21:47 ` Timur Tabi
2011-09-14 22:19 ` Florian Tobias Schandinat
2011-09-15 1:39 ` Tabi Timur-B04825
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E711DB8.60407@gmx.de \
--to=florianschandinat@gmx.de \
--cc=linux-fbdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.