Re: PATCH: tdfxfb: bugfix & enable SUN12x22 font, kernel 2.4.5

Melchior FRANZ (a8603365@unet.univie.ac.at)
Mon, 4 Jun 2001 15:08:51 +0200


--------------Boundary-00=_RUPEXWAV9PO794R2BOUV
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

* 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 ...

--------------Boundary-00=_RUPEXWAV9PO794R2BOUV
Content-Type: text/plain;
charset="iso-8859-1";
name="tdfxfb.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment; filename="tdfxfb.diff"

--- 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;

--------------Boundary-00=_RUPEXWAV9PO794R2BOUV
Content-Type: text/plain;
charset="iso-8859-1";
name="README"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment; filename="README"

tdfxfb.c: fix cursor bug; enable 12x22 fonts -- Melchior FRANZ <a8603365@unet.univie.ac.at>

--------------Boundary-00=_RUPEXWAV9PO794R2BOUV--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/