diff -urpwN svgalib-1.9.17/kernel/svgalib_helper/Makefile svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/Makefile --- svgalib-1.9.17/kernel/svgalib_helper/Makefile 2002-10-28 18:25:47.000000000 +0200 +++ svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/Makefile 2003-08-03 14:34:40.000000000 +0200 @@ -1,45 +1,69 @@ include ../../Makefile.cfg -MODVER = $(shell grep CONFIG_MODVERSIONS $(INCLUDEDIR)/linux/autoconf.h) +ifndef INCLUDEDIR +INCLUDEDIR = /lib/modules/$(shell uname -r)/build/include +endif + +MODVER = $(shell grep CONFIG_MODVERSIONS $(INCLUDEDIR)/linux/autoconf.h 2>/dev/null) ifeq ($(MODVER),) @echo INCLUDEDIR is not set up correctly exit 1 endif -CFLAGS = -O2 -DLINUX -Dlinux -D__KERNEL__ -DMODULE -Wall $(DEBFLAGS) -CFLAGS += -I$(INCLUDEDIR) -CFLAGS += -DSVGALIB_HELPER_MAJOR=$(SVGALIB_HELPER_MAJOR) - -ifeq (1,$(findstring 1,$(MODVER))) - CFLAGS += -DMODVERSIONS -include $(INCLUDEDIR)/linux/modversions.h -endif - # Extract version number from headers. -VER = $(shell awk -F\" '/REL/ {print $$2}' $(INCLUDEDIR)/linux/version.h) +VER = $(shell awk -F\" '/REL/ {print $$2}' $(INCLUDEDIR)/linux/version.h 2>/dev/null) # Use version of current running kernel ifeq ($(VER),) VER = $(shell uname -r) endif +VER_MAJOR = $(shell echo $(VER) | cut -d. -f1) +VER_MINOR = $(shell echo $(VER) | cut -d. -f2) + +INCLUDES += -I$(INCLUDEDIR) +INCLUDES += -I$(INCLUDEDIR)/asm/mach-default + +#CFLAGS = -O2 -DLINUX -Dlinux -D__KERNEL__ -DMODULE -Wall $(DEBFLAGS) +CFLAGS = -O2 -DLINUX -Dlinux -D__KERNEL__ -DMODULE $(DEBFLAGS) -nostdinc -iwithprefix include +ifeq (2,$(VER_MAJOR)) + ifeq (6,$(VER_MINOR)) + CFLAGS += -DKBUILD_MODNAME="svgalib_helper" + endif +endif +CFLAGS += $(INCLUDES) +CFLAGS += -DSVGALIB_HELPER_MAJOR=$(SVGALIB_HELPER_MAJOR) + +ifeq (1,$(findstring 1,$(MODVER))) + CFLAGS += -DMODVERSIONS -include $(INCLUDEDIR)/linux/modversions.h +endif + TARGET = svgalib_helper OBJS = $(TARGET).o +ifeq (2,$(VER_MAJOR)) + ifeq (6,$(VER_MINOR)) + OBJS = $(TARGET).ko + endif +endif SRC = main.c interrupt.c i810.c -all: .depend $(TARGET).o +all: .depend $(OBJS) $(TARGET).o: $(SRC:.c=.o) $(LD) -r $^ -o $@ +$(TARGET).ko: $(TARGET).o + $(LD) -d -r $^ -o $@ + install: device modules_install -modules_install: $(TARGET).o +modules_install: $(OBJS) mkdir -p $(TOPDIR)/lib/modules/$(VER)/misc - install -m 0644 -c $(TARGET).o $(TOPDIR)/lib/modules/$(VER)/misc + install -m 0644 -c $(OBJS) $(TOPDIR)/lib/modules/$(VER)/misc device: - rm -f /dev/svgalib_helper* /dev/svga /dev/svga? + rm -f /dev/svgalib_helper* /dev/svga_helper* /dev/svga /dev/svga? mknod -m 666 /dev/svga c $(SVGALIB_HELPER_MAJOR) 0 mknod -m 666 /dev/svga1 c $(SVGALIB_HELPER_MAJOR) 1 mknod -m 666 /dev/svga2 c $(SVGALIB_HELPER_MAJOR) 2 @@ -47,7 +71,7 @@ device: mknod -m 666 /dev/svga4 c $(SVGALIB_HELPER_MAJOR) 4 clean: - rm -f *.o *~ core .depend *.bak *.orig + rm -f *.ko *.o *~ core .depend *.bak *.orig depend .depend dep: $(CC) $(CFLAGS) -M *.c > $@ diff -urpwN svgalib-1.9.17/kernel/svgalib_helper/kernel25compat.h svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/kernel25compat.h --- svgalib-1.9.17/kernel/svgalib_helper/kernel25compat.h 2002-09-10 20:20:13.000000000 +0200 +++ svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/kernel25compat.h 1970-01-01 02:00:00.000000000 +0200 @@ -1,20 +0,0 @@ -#define minor(x) MINOR(x) - -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) -#define my_remap_page_range(vma, start, ofs, len, prot) remap_page_range(start,ofs,len,prot) -#else -#define my_remap_page_range(vma, start, ofs, len, prot) remap_page_range(vma,start,ofs,len,prot) -#endif - -#ifndef _LINUX_DEVFS_FS_KERNEL_H -static inline int devfs_register_chrdev (unsigned int major, const char *name, - struct file_operations *fops) -{ - return register_chrdev (major, name, fops); -} -static inline int devfs_unregister_chrdev (unsigned int major,const char *name) -{ - return unregister_chrdev (major, name); -} -#endif - diff -urpwN svgalib-1.9.17/kernel/svgalib_helper/kernel26compat.h svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/kernel26compat.h --- svgalib-1.9.17/kernel/svgalib_helper/kernel26compat.h 1970-01-01 02:00:00.000000000 +0200 +++ svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/kernel26compat.h 2003-08-03 14:33:28.000000000 +0200 @@ -0,0 +1,46 @@ +#ifndef minor +#define minor(x) MINOR(x) +#endif + +#ifndef KERNEL_VERSION +# include +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) + +# ifdef KERNEL_2_6 +# undef KERNEL_2_6 +# endif + +#define my_remap_page_range(vma, start, ofs, len, prot) remap_page_range(start,ofs,len,prot) +# ifndef IRQ_NONE + typedef void irqreturn_t; +# endif +#else + +# ifndef KERNEL_2_6 +# define KERNEL_2_6 +# endif + +#define my_remap_page_range(vma, start, ofs, len, prot) remap_page_range(vma,start,ofs,len,prot) + +#include + +# ifdef CONFIG_DEVFS_FS +typedef void* devfs_handle_t; +# endif + +#endif + +#ifndef _LINUX_DEVFS_FS_KERNEL_H +static inline int devfs_register_chrdev (unsigned int major, const char *name, + struct file_operations *fops) +{ + return register_chrdev (major, name, fops); +} +static inline int devfs_unregister_chrdev (unsigned int major,const char *name) +{ + return unregister_chrdev (major, name); +} +#endif + diff -urpwN svgalib-1.9.17/kernel/svgalib_helper/main.c svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/main.c --- svgalib-1.9.17/kernel/svgalib_helper/main.c 2002-09-10 20:20:23.000000000 +0200 +++ svgalib-1.9.17.kernel2.6/kernel/svgalib_helper/main.c 2003-08-03 14:35:53.000000000 +0200 @@ -1,6 +1,12 @@ -#include +#include + +#if defined (CONFIG_MODVERSIONS) && !defined (MODVERSIONS) +# define MODVERSIONS +#endif #include /* printk() */ +#include + #include /* kmalloc() */ #include /* everything... */ #include /* error codes */ @@ -15,7 +21,7 @@ #include #include -#include "kernel25compat.h" +#include "kernel26compat.h" #include #include /* cli(), *_flags */ @@ -39,7 +45,7 @@ static struct sh_pci_device *sh_pci_devs static int irqs[MAX_NR_DEVICES]; -#ifdef CONFIG_DEVFS_FS +#if (defined CONFIG_DEVFS_FS) && (!defined KERNEL_2_6) static devfs_handle_t devfs_handle; #endif @@ -47,11 +53,11 @@ static int check_io_range(port,device) { return 1; } -static struct pci_dev *get_pci_dev(int pcipos, int minor) { +static struct pci_dev *get_pci_dev(int pcipos, int _minor) { - if(minor>=num_devices) return NULL; - if(minor>0) { - return sh_pci_devs[minor]->dev; + if(_minor>=num_devices) return NULL; + if(_minor>0) { + return sh_pci_devs[_minor]->dev; } else { if(pcipos>0 && pciposdev; @@ -60,11 +66,11 @@ static struct pci_dev *get_pci_dev(int p } -static int get_dev(int pcipos, int minor) { +static int get_dev(int pcipos, int _minor) { - if(minor>=num_devices) return 0; - if(minor>0) { - return minor; + if(_minor>=num_devices) return 0; + if(_minor>0) { + return _minor; } else { int i; int b, d; @@ -81,20 +87,33 @@ static int get_dev(int pcipos, int minor static volatile int vsync=0; static wait_queue_head_t vsync_wait; -static void vsync_interrupt(int irq, void *dev_id, struct pt_regs *regs) +static irqreturn_t vsync_interrupt(int irq, void *dev_id, struct pt_regs *regs) { struct sh_pci_device *dev = (struct sh_pci_device *)dev_id; if((char *)dev==sdev_id) { - if(!vga_test_vsync(dev))return; + if(!vga_test_vsync(dev)) +#ifndef KERNEL_2_6 + return; +#else + return IRQ_NONE; +#endif vga_ack_vsync(dev); } else { - if(!dev->test_vsync(dev)) return; + if(!dev->test_vsync(dev)) +#ifndef KERNEL_2_6 + return; +#else + return IRQ_NONE; +#endif dev->ack_vsync(dev); } vsync=0; wake_up_interruptible(&vsync_wait); +#ifdef KERNEL_2_6 + return IRQ_HANDLED; +#endif } @@ -103,10 +122,10 @@ static int svgalib_helper_ioctl( struct io_t iov; pcic_t pciv; - int minor = minor(inode->i_rdev); + int _minor = minor(inode->i_rdev); struct pci_dev *pdev; io_string_t iostr; - int i, ret; + int i = 0, ret; u8 pb; u16 pw; u32 pl; @@ -126,7 +145,7 @@ static int svgalib_helper_ioctl( struct if (iostr.length>4096) return -EINVAL; if ( (outb_str = kmalloc(iostr.length, GFP_KERNEL )) == NULL ) return -ENOMEM; copy_from_user(outb_str,iostr.string,iostr.length); - if(check_io_range(iostr.port,minor)) + if(check_io_range(iostr.port,_minor)) for(i=0; i5)) return -EINVAL; pciv.val=sh_pci_devs[i]->len[pciv.address]; copy_to_user((char *)arg,&pciv,sizeof(pciv)); @@ -248,7 +267,7 @@ static int svgalib_helper_ioctl( struct case _IOC_NR(SVGALIB_HELPER_IOCSPCIOUTB): copy_from_user(&pciv,(char *)arg,sizeof(pciv)); - pdev = get_pci_dev(pciv.pcipos, minor); + pdev = get_pci_dev(pciv.pcipos, _minor); if(!pdev) return -EINVAL; pb=pciv.val; pci_write_config_byte(pdev, pciv.address, pb); @@ -256,7 +275,7 @@ static int svgalib_helper_ioctl( struct case _IOC_NR(SVGALIB_HELPER_IOCSPCIOUTW): copy_from_user(&pciv,(char *)arg,sizeof(pciv)); - pdev = get_pci_dev(pciv.pcipos, minor); + pdev = get_pci_dev(pciv.pcipos, _minor); if(!pdev) return -EINVAL; pw=pciv.val; pci_write_config_word(pdev, pciv.address, pw); @@ -264,7 +283,7 @@ static int svgalib_helper_ioctl( struct case _IOC_NR(SVGALIB_HELPER_IOCSPCIOUTL): copy_from_user(&pciv,(char *)arg,sizeof(pciv)); - pdev = get_pci_dev(pciv.pcipos, minor); + pdev = get_pci_dev(pciv.pcipos, _minor); if(!pdev) return -EINVAL; pl=pciv.val; pci_write_config_dword(pdev, pciv.address, pl); @@ -284,17 +303,17 @@ static int svgalib_helper_ioctl( struct case _IOC_NR(SVGALIB_HELPER_IOCWAITRETRACE): /* Workaround for nvidia cards, which are not vga compatible */ - if(!minor && num_devices==2) minor=1; + if(!_minor && num_devices==2) _minor=1; - if(minor) { - i=sh_pci_devs[minor]->dev->irq; - dev_id = sh_pci_devs[minor]; + if(_minor) { + i=sh_pci_devs[_minor]->dev->irq; + dev_id = sh_pci_devs[_minor]; if(i==0 || i==-1 || i==255) return -EINVAL; } else dev_id = sdev_id; vsync=1; - if(minor) { + if(_minor) { request_irq(i, vsync_interrupt, SA_SHIRQ, "svgalib_helper", dev_id); } else { i=0; @@ -302,16 +321,16 @@ static int svgalib_helper_ioctl( struct request_irq(irqs[i++], vsync_interrupt, SA_SHIRQ, "svgalib_helper", dev_id); } - if(minor) { - sh_pci_devs[minor]->enable_vsync(sh_pci_devs[minor]); + if(_minor) { + sh_pci_devs[_minor]->enable_vsync(sh_pci_devs[_minor]); } else { - vga_enable_vsync(sh_pci_devs[minor]); + vga_enable_vsync(sh_pci_devs[_minor]); } interruptible_sleep_on(&vsync_wait); - if(minor) { - if(vsync) sh_pci_devs[minor]->ack_vsync(dev_id); + if(_minor) { + if(vsync) sh_pci_devs[_minor]->ack_vsync(dev_id); free_irq(i, dev_id); } else { i=0; @@ -331,17 +350,25 @@ static int svgalib_helper_ioctl( struct static int svgalib_helper_open( struct inode *inode, struct file * filp) { - int minor = minor(inode->i_rdev); + int _minor = minor(inode->i_rdev); - if(minor>=num_devices) return -ENODEV; + if(_minor>=num_devices) return -ENODEV; +#ifndef KERNEL_2_6 MOD_INC_USE_COUNT; +#else + try_module_get(THIS_MODULE); +#endif return 0; } static int svgalib_helper_release( struct inode *inode, struct file *filp) { +#ifndef KERNEL_2_6 MOD_DEC_USE_COUNT; +#else + module_put(THIS_MODULE); +#endif return 0; } @@ -399,14 +426,14 @@ int check_mem(int card, unsigned long st static int svgalib_helper_mmap(struct file *filp, struct vm_area_struct *vma) { unsigned long start=vma->vm_start; unsigned long end=vma->vm_end; - unsigned long minor = minor(filp->f_dentry->d_inode->i_rdev); + unsigned long _minor = minor(filp->f_dentry->d_inode->i_rdev); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,0) unsigned long ofs=vma->vm_pgoff*PAGE_SIZE; #else unsigned long ofs=vma->vm_offset; #endif - if(check_mem(minor, ofs, end-start)) return -EPERM; + if(check_mem(_minor, ofs, end-start)) return -EPERM; if(remap_cache(vma, ofs, start, end)) return -EAGAIN; return 0; } @@ -432,14 +459,20 @@ int init_module(void) int result, i, j; struct pci_dev *dev=NULL; #ifdef CONFIG_DEVFS_FS +# ifndef KERNEL_2_6 devfs_handle_t slave_handle; #endif +#endif /* * Register your major, and accept a dynamic number */ printk(KERN_INFO "svgalib_helper: Initializing, version %s\n", versionstr); +#ifndef KERNEL_2_6 result = devfs_register_chrdev(SVGALIB_HELPER_MAJOR, "svgalib_helper", &svgalib_helper_fops); +#else + result = register_chrdev(SVGALIB_HELPER_MAJOR, "svgalib_helper", &svgalib_helper_fops); +#endif if (result < 0) { printk(KERN_WARNING "svgalib_helper: can't get major %d\n",SVGALIB_HELPER_MAJOR); return result; @@ -453,15 +486,26 @@ int init_module(void) for(i=1;icolors) { case 1 << 24: @@ -1864,12 +1864,12 @@ return 0; } -static inline int col2bypp(struct info *iptr) +static inline int col2bypp(struct vgainfo *iptr) { return iptr->bytesperpixel; } -static int mach32_log2(struct info *iptr) +static int mach32_log2(struct vgainfo *iptr) { int res = -1, n = iptr->colors; @@ -1885,7 +1885,7 @@ static void mach32_modfill(const mode_entry * mode, int modemask, int forcein) { register int i; - register struct info *iptr; + register struct vgainfo *iptr; register unsigned wid, hei; float horz, vert, n_horz, n_vert, cmpvert; @@ -3061,7 +3061,7 @@ } static char * - colstr(struct info *mode) + colstr(struct vgainfo *mode) { static char str[4]; if (mode->colors <= 256) { diff -ur svgalib-1.9.17/src/drivers/millennium.c svgalib-1.9.17.kernel2.6/src/drivers/millennium.c --- svgalib-1.9.17/src/drivers/millennium.c 2002-08-04 11:24:30.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/millennium.c 2004-02-01 21:08:08.000000000 +0000 @@ -628,7 +628,7 @@ static int mil_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/mx.c svgalib-1.9.17.kernel2.6/src/drivers/mx.c --- svgalib-1.9.17/src/drivers/mx.c 2002-08-04 11:21:05.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/mx.c 2004-02-01 21:08:08.000000000 +0000 @@ -181,7 +181,7 @@ static int mx_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/neo.c svgalib-1.9.17.kernel2.6/src/drivers/neo.c --- svgalib-1.9.17/src/drivers/neo.c 2002-08-04 11:32:20.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/neo.c 2004-02-01 21:08:08.000000000 +0000 @@ -442,7 +442,7 @@ static int neo_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/nv3.c svgalib-1.9.17.kernel2.6/src/drivers/nv3.c --- svgalib-1.9.17/src/drivers/nv3.c 2002-08-04 10:35:40.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/nv3.c 2004-02-01 21:08:08.000000000 +0000 @@ -152,7 +152,7 @@ static int nv3_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/oak.c svgalib-1.9.17.kernel2.6/src/drivers/oak.c --- svgalib-1.9.17/src/drivers/oak.c 2002-08-04 11:33:29.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/oak.c 2004-02-01 21:08:08.000000000 +0000 @@ -275,7 +275,7 @@ static int oak_modeavailable(int mode) { const unsigned char *regs; - struct info *info; + struct vgainfo *info; regs = LOOKUPMODE(oak_modes, mode); if (regs == NULL || mode == GPLANE16) { diff -ur svgalib-1.9.17/src/drivers/paradise.c svgalib-1.9.17.kernel2.6/src/drivers/paradise.c --- svgalib-1.9.17/src/drivers/paradise.c 2002-04-20 22:47:27.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/paradise.c 2004-02-01 21:08:08.000000000 +0000 @@ -224,7 +224,7 @@ static int paradise_modeavailable(int mode) { const unsigned char *regs; - struct info *info; + struct vgainfo *info; #ifdef DEBUG fprintf(stderr,"paradise_modeavailable\n"); #endif diff -ur svgalib-1.9.17/src/drivers/pm2.c svgalib-1.9.17.kernel2.6/src/drivers/pm2.c --- svgalib-1.9.17/src/drivers/pm2.c 2002-10-15 14:14:40.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/pm2.c 2004-02-01 21:08:08.000000000 +0000 @@ -214,7 +214,7 @@ static int modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/r128.c svgalib-1.9.17.kernel2.6/src/drivers/r128.c --- svgalib-1.9.17/src/drivers/r128.c 2002-09-04 16:28:10.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/r128.c 2004-02-01 21:08:08.000000000 +0000 @@ -1024,7 +1024,7 @@ static int r128_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/rage.c svgalib-1.9.17.kernel2.6/src/drivers/rage.c --- svgalib-1.9.17/src/drivers/rage.c 2002-08-04 11:20:27.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/rage.c 2004-02-01 21:08:08.000000000 +0000 @@ -611,7 +611,7 @@ static int rage_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/rendition.c svgalib-1.9.17.kernel2.6/src/drivers/rendition.c --- svgalib-1.9.17/src/drivers/rendition.c 2002-08-04 11:22:18.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/rendition.c 2004-02-01 21:08:08.000000000 +0000 @@ -142,7 +142,7 @@ static int modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/s3.c svgalib-1.9.17.kernel2.6/src/drivers/s3.c --- svgalib-1.9.17/src/drivers/s3.c 2002-08-04 11:33:05.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/s3.c 2004-02-01 21:08:08.000000000 +0000 @@ -484,7 +484,7 @@ static int s3_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeInfo *modeinfo; ModeTiming *modetiming; diff -ur svgalib-1.9.17/src/drivers/savage.c svgalib-1.9.17.kernel2.6/src/drivers/savage.c --- svgalib-1.9.17/src/drivers/savage.c 2002-10-15 18:06:30.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/savage.c 2004-02-01 21:08:08.000000000 +0000 @@ -415,7 +415,7 @@ static int modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/sis.c svgalib-1.9.17.kernel2.6/src/drivers/sis.c --- svgalib-1.9.17/src/drivers/sis.c 2002-08-04 11:44:41.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/sis.c 2004-02-01 21:08:08.000000000 +0000 @@ -212,7 +212,7 @@ static int sis_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/skeleton.h svgalib-1.9.17.kernel2.6/src/drivers/skeleton.h --- svgalib-1.9.17/src/drivers/skeleton.h 2002-05-17 20:00:00.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/skeleton.h 2004-02-01 21:08:08.000000000 +0000 @@ -80,7 +80,7 @@ static int modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/trident.c svgalib-1.9.17.kernel2.6/src/drivers/trident.c --- svgalib-1.9.17/src/drivers/trident.c 2002-12-10 10:42:52.000000000 +0000 +++ svgalib-1.9.17.kernel2.6/src/drivers/trident.c 2004-02-01 21:08:08.000000000 +0000 @@ -290,7 +290,7 @@ static int modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/drivers/tvga8900.c svgalib-1.9.17.kernel2.6/src/drivers/tvga8900.c --- svgalib-1.9.17/src/drivers/tvga8900.c 2002-07-25 14:00:31.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/tvga8900.c 2004-02-01 21:08:08.000000000 +0000 @@ -498,7 +498,7 @@ static int tvga8900_modeavailable(int mode) { const unsigned char *regs; - struct info *info; + struct vgainfo *info; regs = LOOKUPMODE(tvga_modes, mode); if (regs == NULL || mode == GPLANE16) diff -ur svgalib-1.9.17/src/drivers/vesa.c svgalib-1.9.17.kernel2.6/src/drivers/vesa.c --- svgalib-1.9.17/src/drivers/vesa.c 2002-08-04 11:32:48.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/drivers/vesa.c 2004-02-01 21:08:08.000000000 +0000 @@ -139,7 +139,7 @@ static int vesa_modeavailable(int mode) { - struct info *info; + struct vgainfo *info; ModeTiming *modetiming; ModeInfo *modeinfo; diff -ur svgalib-1.9.17/src/libvga.h svgalib-1.9.17.kernel2.6/src/libvga.h --- svgalib-1.9.17/src/libvga.h 2002-08-01 10:33:32.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/libvga.h 2004-02-01 21:08:08.000000000 +0000 @@ -103,7 +103,7 @@ #define GPLANE16 G640x350x16 /* graphics mode information */ -struct info { +struct vgainfo { int xdim; int ydim; int colors; @@ -127,10 +127,10 @@ extern unsigned long __svgalib_mmio_base, __svgalib_mmio_size; extern unsigned long __svgalib_linear_mem_base, __svgalib_linear_mem_size; extern unsigned long __svgalib_mmio_base, __svgalib_mmio_size; -extern struct info CI; /* current video parameters */ +extern struct vgainfo CI; /* current video parameters */ extern int COL; /* current color */ extern int CM; /* current video mode */ -extern struct info infotable[]; +extern struct vgainfo infotable[]; extern int SCREENON; /* screen visible if != 0 */ extern unsigned long __svgalib_graph_base; extern unsigned char *GM; /* graphics memory frame */ diff -ur svgalib-1.9.17/src/vga.c svgalib-1.9.17.kernel2.6/src/vga.c --- svgalib-1.9.17/src/vga.c 2002-09-05 11:58:24.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/vga.c 2004-02-01 21:08:08.000000000 +0000 @@ -87,7 +87,7 @@ /* If == 0 then nothing is defined by the user... */ int __svgalib_default_mode = 10; -struct info infotable[] = +struct vgainfo infotable[] = { {80, 25, 16, 160, 0}, /* VGAlib VGA modes */ {320, 200, 16, 40, 0}, @@ -280,7 +280,7 @@ {0, 0, 0, 0, 0} }; -#define MAX_MODES (sizeof(infotable) / sizeof(struct info)) +#define MAX_MODES (sizeof(infotable) / sizeof(struct vgainfo)) void (*__svgalib_go_to_background) (void) = 0; void (*__svgalib_come_from_background) (void) = 0; @@ -372,7 +372,7 @@ static int flip_mode = TEXT; /* flipped video mode */ int CM = TEXT; /* current video mode */ -struct info CI; /* current video parameters */ +struct vgainfo CI; /* current video parameters */ int COL; /* current color */ static int initialized = 0; /* flag: initialize() called ? */ diff -ur svgalib-1.9.17/src/vga.h svgalib-1.9.17.kernel2.6/src/vga.h --- svgalib-1.9.17/src/vga.h 2002-08-04 10:31:07.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/src/vga.h 2004-02-01 21:08:08.000000000 +0000 @@ -534,6 +534,11 @@ #define BLITS_SYNC 0 #define BLITS_IN_BACKGROUND 0x1 +/* 2.6 Framebuffer code defines this; we don't need it */ +#ifdef ROP_XOR +# undef ROP_XOR +#endif + /* Raster ops. */ #define ROP_COPY 0 /* Straight copy. */ #define ROP_OR 1 /* Source OR destination. */ diff -ur svgalib-1.9.17/svpmi/svpmi.c svgalib-1.9.17.kernel2.6/svpmi/svpmi.c --- svgalib-1.9.17/svpmi/svpmi.c 1995-09-30 15:50:30.000000000 +0100 +++ svgalib-1.9.17.kernel2.6/svpmi/svpmi.c 2004-02-01 21:08:08.000000000 +0000 @@ -62,7 +62,7 @@ static int svpmi_modeavailable (int mode) { - struct info *info; + struct vgainfo *info; svpmi_modeentry *sm; if (mode < 10)