aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/console
diff options
context:
space:
mode:
authorAntonino A. Daplas <adaplas@gmail.com>2005-11-09 00:39:10 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-09 10:56:34 -0500
commit9c44e5f6c211a9b7313ded897f3135ef7d9ad3e2 (patch)
treeb4d94144527964a822367e4018693dc4e8a83383 /drivers/video/console
parente4fc27618b75234b721c4a13d0e0d9d07e75e641 (diff)
[PATCH] fbcon: Console Rotation - Add support to rotate the logo
Add support for rotating and positioning of the logo. Rotation and position depends on 'int rotate' parameter added to fb_prepare_logo() and fb_show_logo(). Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/video/console')
-rw-r--r--drivers/video/console/fbcon.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index b5d678c73252..26935e231a1d 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -499,6 +499,7 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
499 int cols, int rows, int new_cols, int new_rows) 499 int cols, int rows, int new_cols, int new_rows)
500{ 500{
501 /* Need to make room for the logo */ 501 /* Need to make room for the logo */
502 struct fbcon_ops *ops = info->fbcon_par;
502 int cnt, erase = vc->vc_video_erase_char, step; 503 int cnt, erase = vc->vc_video_erase_char, step;
503 unsigned short *save = NULL, *r, *q; 504 unsigned short *save = NULL, *r, *q;
504 505
@@ -508,7 +509,7 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
508 */ 509 */
509 if (fb_get_color_depth(&info->var, &info->fix) == 1) 510 if (fb_get_color_depth(&info->var, &info->fix) == 1)
510 erase &= ~0x400; 511 erase &= ~0x400;
511 logo_height = fb_prepare_logo(info); 512 logo_height = fb_prepare_logo(info, ops->rotate);
512 logo_lines = (logo_height + vc->vc_font.height - 1) / 513 logo_lines = (logo_height + vc->vc_font.height - 1) /
513 vc->vc_font.height; 514 vc->vc_font.height;
514 q = (unsigned short *) (vc->vc_origin + 515 q = (unsigned short *) (vc->vc_origin +
@@ -2073,7 +2074,7 @@ static int fbcon_switch(struct vc_data *vc)
2073 2074
2074 logo_shown = fg_console; 2075 logo_shown = fg_console;
2075 /* This is protected above by initmem_freed */ 2076 /* This is protected above by initmem_freed */
2076 fb_show_logo(info); 2077 fb_show_logo(info, ops->rotate);
2077 update_region(vc, 2078 update_region(vc,
2078 vc->vc_origin + vc->vc_size_row * vc->vc_top, 2079 vc->vc_origin + vc->vc_size_row * vc->vc_top,
2079 vc->vc_size_row * (vc->vc_bottom - 2080 vc->vc_size_row * (vc->vc_bottom -