lkml.org 
[lkml]   [2004]   [May]   [19]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateWed, 19 May 2004 11:36:21 +0200 (CEST)
SubjectFB accel capabilities patch
FromDavid Eger <>
Dear Andrew,

A month or two ago I noticed that the framebuffer console driver doesn't
know to do proper framebuffer acceleration in Linux 2.6;  I've implemented
a solution Geert suggested where each framebuffer driver advertizes its 
hardware capabilities via fb_info->flags.  Please apply to -mm so I can 
get wider testing.

The patches are at:

http://www.yak.net/random/fbdev-patches/accel-cap-take2/relative2mainline/

The core of these patches is enabling the use of the following flags:

+/* FBIF = FB_Info.Flags */
+#define FBIF_MODULE		0x0001	/* Low-level driver is a module */
+#define FBIF_HWACCEL_DISABLED	0x0002
+
+/* hints */
+#define FBIF_PARTIAL_PAN_OK	0x0040 /* otw use pan only for double-buffering */
+#define FBIF_READS_FAST		0x0080 /* soft-copy faster than rendering */
+
+/* hardware supported ops */
+#define FBIF_HWACCEL_NONE	0x0000
+#define FBIF_HWACCEL_COPYAREA	0x0100
+#define FBIF_HWACCEL_FILLRECT	0x0200
+#define FBIF_HWACCEL_ROTATE	0x0400
+#define FBIF_HWACCEL_IMAGEBLIT	0x0800
+#define FBIF_HWACCEL_XPAN	0x1000
+#define FBIF_HWACCEL_YPAN	0x2000
+#define FBIF_HWACCEL_YWRAP	0x4000
Patches to each individual driver will trickle in as I get to them;
Since these are only hints to the "application" of fbcon, the fact that 
the hints aren't yet accurate for all drivers (default is zero/one depending
on if the fb driver is a module) is OK, and nothing should break with these
patches.  Each driver also doesn't have to reimplement a noaccel flag 
(to disable acceleration, mainly for testing new accel code), since it
will be already in fb_info now ;-)

-dte

---
getting bounce messages from me? let me know and you'll go on my whitelist
-
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/
\
 
 \ /
  Last update: 2005-03-22 13:03    [W:2.013 / U:0.260 seconds]
©2003-2008 Jasper Spaans