patch-2.3.16 linux/drivers/video/creatorfb.c
Next file: linux/drivers/video/cyber2000fb.c
Previous file: linux/drivers/video/controlfb.c
Back to the patch index
Back to the overall index
- Lines: 43
- Date:
Tue Aug 31 11:25:33 1999
- Orig file:
v2.3.15/linux/drivers/video/creatorfb.c
- Orig date:
Mon Aug 9 10:25:01 1999
diff -u --recursive --new-file v2.3.15/linux/drivers/video/creatorfb.c linux/drivers/video/creatorfb.c
@@ -1,4 +1,4 @@
-/* $Id: creatorfb.c,v 1.27 1999/03/28 12:37:12 jj Exp $
+/* $Id: creatorfb.c,v 1.29 1999/08/10 15:56:07 davem Exp $
* creatorfb.c: Creator/Creator3D frame buffer driver
*
* Copyright (C) 1997,1998,1999 Jakub Jelinek (jj@ultra.linux.cz)
@@ -633,7 +633,13 @@
fbc->fg = fb->s.ffb.fg_cache;
fbc->bg = fb->s.ffb.bg_cache;
FFBWait(fbc);
-}
+}
+
+static int __init ffb_rasterimg (struct fb_info *info, int start)
+{
+ ffb_switch_from_graph (sbusfbinfo(info));
+ return 0;
+}
static char idstring[60] __initdata = { 0 };
@@ -647,6 +653,7 @@
int i, afb = 0;
unsigned int btype;
char name[64];
+ struct fb_ops *fbops;
if (prom_getproperty(fb->prom_node, "reg", (void *) regs, sizeof(regs)) <= 0)
return NULL;
@@ -655,6 +662,13 @@
if (!disp->dispsw_data)
return NULL;
memset(disp->dispsw_data, 0, 16 * sizeof(u32));
+
+ fbops = kmalloc(sizeof(*fbops), GFP_KERNEL);
+ if (!fbops) return NULL;
+
+ *fbops = *fb->info.fbops;
+ fbops->fb_rasterimg = ffb_rasterimg;
+ fb->info.fbops = fbops;
prom_getstring(fb->prom_node, "name", name, sizeof(name));
if (!strcmp(name, "SUNW,afb"))
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)