lkml.org 
[lkml]   [2001]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: PATCH: tdfxfb: bugfix & enable SUN12x22 font, kernel 2.4.5
Date
* Geert Uytterhoeven -- Monday 04 June 2001 14:20:
> On Mon, 4 Jun 2001, Melchior FRANZ wrote:
> > The attached patch fixes that bug and enables 8--12 bit wide fonts, thus
> > disabling the "No support ..." messages. I haven't found an indication that
>
> Does it work now for fonts with width 16? I'd expect so.

It works for 8 and 12 pixels wide fonts on my 80686 little-endian. I don't have
a 16 pixel font, but such a font should even have worked with the bug, because
like with a 8 bit font the pattern would by fortune have come out right.



> BTW, instead of using #ifdef __LITTLE_ENDIAN and swapping explicitly, it's
> better to use the cpu_to_be* macros.

I see. I just grepped through some source files and saw these ifdef's everywhere,
so I didn't feel especially guilty. ;-)



> > there are any Voodoo3/Banshee cards for big endian machines. The bugfix implies
> > that they never could have worked. (But if they have indeed, they would be
> > broken after applying the patch. Could someone comment on this, please?)
>
> Yes, people are using Voodoo3 boards on PPC. But they require(d) some patches,
> IIRC.

Ahh. Maybe someone with a PPC could test that patch. New version (without ifdef)
attached.

m.


PS: My emails don't seem to make it to the kernel-list. Or is a delay of more
than two hours considered normal?! Now I'm trying via a smart-host ...
--- linux-2.4.5/drivers/video/tdfxfb.c Sun Jun 3 17:13:30 2001
+++ linux/drivers/video/tdfxfb.c Mon Jun 4 14:54:59 2001
@@ -1207,7 +1207,7 @@
revc: tdfx_cfbX_revc,
cursor: tdfx_cfbX_cursor,
clear_margins: tdfx_cfbX_clear_margins,
- fontwidthmask: FONTWIDTH(8)
+ fontwidthmask: FONTWIDTHRANGE(8, 16)
};
#endif
#ifdef FBCON_HAS_CFB16
@@ -1220,7 +1220,7 @@
revc: tdfx_cfbX_revc,
cursor: tdfx_cfbX_cursor,
clear_margins: tdfx_cfbX_clear_margins,
- fontwidthmask: FONTWIDTH(8)
+ fontwidthmask: FONTWIDTHRANGE(8, 16)
};
#endif
#ifdef FBCON_HAS_CFB24
@@ -1233,7 +1233,7 @@
revc: tdfx_cfbX_revc,
cursor: tdfx_cfbX_cursor,
clear_margins: tdfx_cfbX_clear_margins,
- fontwidthmask: FONTWIDTH(8)
+ fontwidthmask: FONTWIDTHRANGE(8, 16)
};
#endif
#ifdef FBCON_HAS_CFB32
@@ -1246,7 +1246,7 @@
revc: tdfx_cfbX_revc,
cursor: tdfx_cfbX_cursor,
clear_margins: tdfx_cfbX_clear_margins,
- fontwidthmask: FONTWIDTH(8)
+ fontwidthmask: FONTWIDTHRANGE(8, 16)
};
#endif

@@ -2314,7 +2314,7 @@
unsigned int h,to;

tdfxfb_createcursorshape(p);
- xline = (1 << fb_info.cursor.w)-1;
+ xline = cpu_to_be32(~((1 << (32 - fb_info.cursor.w)) - 1));
cursorbase=(u8*)fb_info.bufbase_virt;
h=fb_info.cursor.cursorimage;
tdfxfb.c: fix cursor bug; enable 12x22 fonts -- Melchior FRANZ <a8603365@unet.univie.ac.at>
\
 
 \ /
  Last update: 2005-03-22 12:54    [W:0.036 / U:0.368 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site