--- svgalib/kernel/svgalib_helper/kernel26compat.h 2008/10/16 23:28:58 1.1 +++ svgalib/kernel/svgalib_helper/kernel26compat.h 2008/10/16 23:34:41 @@ -117,7 +117,7 @@ static inline int devfs_unregister_chrde MKDEV(SVGALIB_HELPER_MAJOR, _minor), \ &sh_pci_devs[_minor]->dev->dev, _name); /* 2.6.26 changed class_device_create to device_create */ -#else +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) # define SLH_SYSFS_ADD_CONTROL \ device_create(svgalib_helper_class, NULL, \ MKDEV(SVGALIB_HELPER_MAJOR, 0), \ @@ -127,6 +127,18 @@ static inline int devfs_unregister_chrde device_create(svgalib_helper_class, &sh_pci_devs[_minor]->dev->dev, \ MKDEV(SVGALIB_HELPER_MAJOR, _minor), \ _name); +/* 2.6.27 changed device_create to device_create_drvdata */ +#else +# define SLH_SYSFS_ADD_CONTROL \ + device_create_drvdata(svgalib_helper_class, NULL, \ + MKDEV(SVGALIB_HELPER_MAJOR, 0), \ + "%s%d", "svga", 0); + +# define SLH_SYSFS_ADD_DEVICE(_name, _minor) \ + device_create_drvdata(svgalib_helper_class, \ + &sh_pci_devs[_minor]->dev->dev, \ + MKDEV(SVGALIB_HELPER_MAJOR, _minor), \ + "%s%d", _name, _minor); #endif # define SLH_SYSFS_REMOVE_DEVICE(i) \