aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/console/fbcon_ud.c
diff options
context:
space:
mode:
authorAntonino A. Daplas <adaplas@gmail.com>2005-11-13 16:06:32 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-13 18:14:10 -0800
commitab767201881fec073157986c314485ab26caa4a0 (patch)
tree55620e21ee2f04193ed7f4a0da3a8a9e1fd6697a /drivers/video/console/fbcon_ud.c
parentc53ca784dc3e72a17dc210bee0361e13ad83d4cd (diff)
downloadkernel_samsung_smdk4412-ab767201881fec073157986c314485ab26caa4a0.zip
kernel_samsung_smdk4412-ab767201881fec073157986c314485ab26caa4a0.tar.gz
kernel_samsung_smdk4412-ab767201881fec073157986c314485ab26caa4a0.tar.bz2
[PATCH] fbdev: fix module dependency loop
Exporting struct fb_display produces this warning error on depmod: WARNING: Module /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko ignored, due to loop WARNING: Module /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_rotate.ko ignored, due to loop WARNING: Module /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_cw.ko ignored, due to loop WARNING: Module /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ccw.ko ignored, due to loop WARNING: Module /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon.ko ignored, due to loop WARNING: Loop detected: /lib/modules/2.6.14-mm2/kernel/drivers/video/console/bitblit.ko needs 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/fbcon_ud.c')
-rw-r--r--drivers/video/console/fbcon_ud.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/drivers/video/console/fbcon_ud.c b/drivers/video/console/fbcon_ud.c
index 2e1d9d4..c4d7c89 100644
--- a/drivers/video/console/fbcon_ud.c
+++ b/drivers/video/console/fbcon_ud.c
@@ -48,10 +48,10 @@ static inline void ud_update_attr(u8 *dst, u8 *src, int attribute,
static void ud_bmove(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int dy, int dx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_copyarea area;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
area.sy = vyres - ((sy + height) * vc->vc_font.height);
area.sx = vxres - ((sx + width) * vc->vc_font.width);
@@ -66,11 +66,11 @@ static void ud_bmove(struct vc_data *vc, struct fb_info *info, int sy,
static void ud_clear(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_fillrect region;
int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
region.color = attr_bgcol_ec(bgshift,vc);
region.dy = vyres - ((sy + height) * vc->vc_font.height);
@@ -153,7 +153,6 @@ static void ud_putcs(struct vc_data *vc, struct fb_info *info,
int fg, int bg)
{
struct fb_image image;
- struct display *p = &fb_display[vc->vc_num];
struct fbcon_ops *ops = info->fbcon_par;
u32 width = (vc->vc_font.width + 7)/8;
u32 cellsize = width * vc->vc_font.height;
@@ -163,8 +162,8 @@ static void ud_putcs(struct vc_data *vc, struct fb_info *info,
u32 mod = vc->vc_font.width % 8, cnt, pitch, size;
u32 attribute = get_attribute(info, scr_readw(s));
u8 *dst, *buf = NULL;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
if (!ops->fontbuffer)
return;
@@ -421,10 +420,9 @@ static void ud_cursor(struct vc_data *vc, struct fb_info *info,
int ud_update_start(struct fb_info *info)
{
struct fbcon_ops *ops = info->fbcon_par;
- struct display *p = &fb_display[ops->currcon];
u32 xoffset, yoffset;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
int err;
xoffset = (vxres - info->var.xres) - ops->var.xoffset;