diff options
author | Antonino A. Daplas <adaplas@gmail.com> | 2005-11-09 00:39:10 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-09 10:56:34 -0500 |
commit | 9c44e5f6c211a9b7313ded897f3135ef7d9ad3e2 (patch) | |
tree | b4d94144527964a822367e4018693dc4e8a83383 /drivers/video/console | |
parent | e4fc27618b75234b721c4a13d0e0d9d07e75e641 (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.c | 5 |
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 - |