public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] non-linear frame buffer read/write access
@ 2006-01-03 22:39 Thomas Koeller
  2006-01-06 21:25 ` Antonino A. Daplas
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas Koeller @ 2006-01-03 22:39 UTC (permalink / raw)
  To: adaplas; +Cc: linux-kernel

While the code in fbmem.c allows for hooking read/write access
to non-linear frame buffers by means of fb_read and fb_write
in struct fb_ops, I could not find a way tho access the actual
frame buffer memory from within these routines. I therefore
had to patch fbmem.c, to be able to retrieve a pointer to
struct fb_info from the 'file' argument to these functions.

The second hunk of the patch is not strictly required, I only
did that for symmetry reasons (and the code is somewhat
shorter).

Patch is against 2.6.14

Signed-off-by: Thomas Koeller <thomas@koeller.dyndns.org>

diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
index e2667dd..145c18f 100644
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -965,6 +965,7 @@ fb_open(struct inode *inode, struct file
 		return -ENODEV;
 	if (!try_module_get(info->fbops->owner))
 		return -ENODEV;
+	file->private_data = info;
 	if (info->fbops->fb_open) {
 		res = info->fbops->fb_open(info,1);
 		if (res)
@@ -976,11 +977,9 @@ fb_open(struct inode *inode, struct file
 static int 
 fb_release(struct inode *inode, struct file *file)
 {
-	int fbidx = iminor(inode);
-	struct fb_info *info;
+	struct fb_info * const info = (struct fb_info *) file->private_data;
 
 	lock_kernel();
-	info = registered_fb[fbidx];
 	if (info->fbops->fb_release)
 		info->fbops->fb_release(info,1);
 	module_put(info->fbops->owner);

-- 
Thomas Koeller
thomas at koeller dot dyndns dot org

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-01-08  0:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-03 22:39 [PATCH] non-linear frame buffer read/write access Thomas Koeller
2006-01-06 21:25 ` Antonino A. Daplas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox