From: Antonino A. D. <ad...@gm...> - 2005-11-30 20:41:09
|
Knut Petersen wrote: > Geert Uytterhoeven wrote: > >> Ywrap has been working fine with amifb since ages (unless someone >> broke it very >> recently). >> >> >> > We are talking about scrollmode = SCROLL_WRAP_MOVE ? Try this patch. Tony diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index 1a8f0ea..5ebe68f 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c @@ -1972,12 +1972,6 @@ static __inline__ void updatescrollmode( int fast_imageblit = (cap & FBINFO_HWACCEL_IMAGEBLIT) && !(cap & FBINFO_HWACCEL_DISABLED); - p->vrows = vyres/fh; - if (yres > (fh * (vc->vc_rows + 1))) - p->vrows -= (yres - (fh * vc->vc_rows)) / fh; - if ((yres % fh) && (vyres % fh < yres % fh)) - p->vrows--; - if (good_wrap || good_pan) { if (reading_fast || fast_copyarea) p->scrollmode = good_wrap ? @@ -1991,6 +1985,16 @@ static __inline__ void updatescrollmode( else p->scrollmode = SCROLL_REDRAW; } + + p->vrows = vyres/fh; + + if (p->scrollmode != SCROLL_WRAP_MOVE && + (yres > (fh * (vc->vc_rows + 1)))) + p->vrows -= (yres - (fh * vc->vc_rows)) / fh; + + if ((yres % fh) && (vyres % fh < yres % fh)) + p->vrows--; + } static int fbcon_resize(struct vc_data *vc, unsigned int width, |