]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/video/fbmem.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux...
[linux-2.6-omap-h63xx.git] / drivers / video / fbmem.c
index 98843c2ecf733a17e0742109fa63009d47c9b405..217c5118ae9e71818ea80014cb2b54cb8c63c707 100644 (file)
@@ -28,9 +28,7 @@
 #include <linux/proc_fs.h>
 #include <linux/seq_file.h>
 #include <linux/console.h>
-#ifdef CONFIG_KMOD
 #include <linux/kmod.h>
-#endif
 #include <linux/err.h>
 #include <linux/device.h>
 #include <linux/efi.h>
@@ -837,13 +835,6 @@ fb_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
        return (cnt) ? cnt : err;
 }
 
-#ifdef CONFIG_KMOD
-static void try_to_load(int fb)
-{
-       request_module("fb%d", fb);
-}
-#endif /* CONFIG_KMOD */
-
 int
 fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var)
 {
@@ -979,6 +970,7 @@ fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var)
 
                                info->flags &= ~FBINFO_MISC_USEREVENT;
                                event.info = info;
+                               event.data = &mode;
                                fb_notifier_call_chain(evnt, &event);
                        }
                }
@@ -1085,10 +1077,8 @@ fb_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
                    return -EINVAL;
                if (con2fb.framebuffer < 0 || con2fb.framebuffer >= FB_MAX)
                    return -EINVAL;
-#ifdef CONFIG_KMOD
                if (!registered_fb[con2fb.framebuffer])
-                   try_to_load(con2fb.framebuffer);
-#endif /* CONFIG_KMOD */
+                   request_module("fb%d", con2fb.framebuffer);
                if (!registered_fb[con2fb.framebuffer])
                    return -EINVAL;
                event.info = info;
@@ -1326,10 +1316,8 @@ fb_open(struct inode *inode, struct file *file)
        if (fbidx >= FB_MAX)
                return -ENODEV;
        lock_kernel();
-#ifdef CONFIG_KMOD
        if (!(info = registered_fb[fbidx]))
-               try_to_load(fbidx);
-#endif /* CONFIG_KMOD */
+               request_module("fb%d", fbidx);
        if (!(info = registered_fb[fbidx])) {
                res = -ENODEV;
                goto out;
@@ -1442,9 +1430,8 @@ register_framebuffer(struct fb_info *fb_info)
                        break;
        fb_info->node = i;
 
-       fb_info->dev = device_create_drvdata(fb_class, fb_info->device,
-                                            MKDEV(FB_MAJOR, i), NULL,
-                                            "fb%d", i);
+       fb_info->dev = device_create(fb_class, fb_info->device,
+                                    MKDEV(FB_MAJOR, i), NULL, "fb%d", i);
        if (IS_ERR(fb_info->dev)) {
                /* Not fatal */
                printk(KERN_WARNING "Unable to create device for framebuffer %d; errno = %ld\n", i, PTR_ERR(fb_info->dev));