patch-2.4.19 linux-2.4.19/drivers/video/fbmem.c
Next file: linux-2.4.19/drivers/video/igafb.c
Previous file: linux-2.4.19/drivers/video/fbgen.c
Back to the patch index
Back to the overall index
- Lines: 131
- Date:
Fri Aug 2 17:39:45 2002
- Orig file:
linux-2.4.18/drivers/video/fbmem.c
- Orig date:
Mon Feb 25 11:38:07 2002
diff -urN linux-2.4.18/drivers/video/fbmem.c linux-2.4.19/drivers/video/fbmem.c
@@ -59,6 +59,8 @@
extern int cyberfb_setup(char*);
extern int pm2fb_init(void);
extern int pm2fb_setup(char*);
+extern int pm3fb_init(void);
+extern int pm3fb_setup(char*);
extern int cyber2000fb_init(void);
extern int retz3fb_init(void);
extern int retz3fb_setup(char*);
@@ -72,6 +74,8 @@
extern int atyfb_setup(char*);
extern int aty128fb_init(void);
extern int aty128fb_setup(char*);
+extern int neofb_init(void);
+extern int neofb_setup(char*);
extern int igafb_init(void);
extern int igafb_setup(char*);
extern int imsttfb_init(void);
@@ -120,6 +124,10 @@
extern int sisfb_setup(char*);
extern int stifb_init(void);
extern int stifb_setup(char*);
+extern int pmagbafb_init(void);
+extern int pmagbbfb_init(void);
+extern void maxinefb_init(void);
+extern int tx3912fb_init(void);
extern int radeonfb_init(void);
extern int radeonfb_setup(char*);
extern int e1355fb_init(void);
@@ -162,6 +170,9 @@
#ifdef CONFIG_FB_PM2
{ "pm2fb", pm2fb_init, pm2fb_setup },
#endif
+#ifdef CONFIG_FB_PM3
+ { "pm3fb", pm3fb_init, pm3fb_setup },
+#endif
#ifdef CONFIG_FB_CLGEN
{ "clgen", clgenfb_init, clgenfb_setup },
#endif
@@ -174,6 +185,9 @@
#ifdef CONFIG_FB_ATY128
{ "aty128fb", aty128fb_init, aty128fb_setup },
#endif
+#ifdef CONFIG_FB_NEOMAGIC
+ { "neo", neofb_init, neofb_setup },
+#endif
#ifdef CONFIG_FB_VIRGE
{ "virge", virgefb_init, virgefb_setup },
#endif
@@ -210,6 +224,9 @@
#ifdef CONFIG_FB_TRIDENT
{ "trident", tridentfb_init, tridentfb_setup },
#endif
+#ifdef CONFIG_FB_VOODOO1
+ { "sst", sstfb_init, sstfb_setup },
+#endif
/*
* Generic drivers that are used as fallbacks
@@ -275,15 +292,26 @@
#ifdef CONFIG_FB_HIT
{ "hitfb", hitfb_init, NULL },
#endif
+#ifdef CONFIG_FB_TX3912
+ { "tx3912", tx3912fb_init, NULL },
+#endif
#ifdef CONFIG_FB_E1355
{ "e1355fb", e1355fb_init, e1355fb_setup },
#endif
#ifdef CONFIG_FB_PVR2
{ "pvr2", pvr2fb_init, pvr2fb_setup },
#endif
-#ifdef CONFIG_FB_VOODOO1
- { "sst", sstfb_init, sstfb_setup },
+#ifdef CONFIG_FB_PMAG_BA
+ { "pmagbafb", pmagbafb_init, NULL },
+#endif
+#ifdef CONFIG_FB_PMAGB_B
+ { "pmagbbfb", pmagbbfb_init, NULL },
#endif
+#ifdef CONFIG_FB_MAXINE
+ { "maxinefb", maxinefb_init, NULL },
+#endif
+
+
/*
* Generic drivers that don't use resource management (yet)
*/
@@ -548,6 +576,8 @@
lock_kernel();
res = fb->fb_mmap(info, file, vma);
unlock_kernel();
+ /* This is an IO map - tell maydump to skip this VMA */
+ vma->vm_flags |= VM_IO;
return res;
}
@@ -581,12 +611,13 @@
return -EINVAL;
off += start;
vma->vm_pgoff = off >> PAGE_SHIFT;
+ /* This is an IO map - tell maydump to skip this VMA */
+ vma->vm_flags |= VM_IO;
#if defined(__sparc_v9__)
vma->vm_flags |= (VM_SHM | VM_LOCKED);
if (io_remap_page_range(vma->vm_start, off,
vma->vm_end - vma->vm_start, vma->vm_page_prot, 0))
return -EAGAIN;
- vma->vm_flags |= VM_IO;
#else
#if defined(__mc68000__)
#if defined(CONFIG_SUN3)
@@ -607,15 +638,12 @@
#elif defined(__i386__) || defined(__x86_64__)
if (boot_cpu_data.x86 > 3)
pgprot_val(vma->vm_page_prot) |= _PAGE_PCD;
-#elif defined(__mips__)
- pgprot_val(vma->vm_page_prot) &= ~_CACHE_MASK;
- pgprot_val(vma->vm_page_prot) |= _CACHE_UNCACHED;
-#elif defined(__arm__)
+#elif defined(__arm__) || defined(__mips__)
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
- /* This is an IO map - tell maydump to skip this VMA */
- vma->vm_flags |= VM_IO;
#elif defined(__sh__)
pgprot_val(vma->vm_page_prot) &= ~_PAGE_CACHABLE;
+#elif defined(__ia64__)
+ vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);
#else
#warning What do we have to do here??
#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)