On Sat, Feb 11, 2017 at 07:48:52PM +0100, Noralf Trønnes wrote:
+const struct file_operations tinydrm_fops = {Just spotted this while doing a drive-by refactoring, this doesn't really
+ .owner = THIS_MODULE,
+ .open = drm_open,
+ .release = drm_release,
+ .unlocked_ioctl = drm_ioctl,
+#ifdef CONFIG_COMPAT
+ .compat_ioctl = drm_compat_ioctl,
+#endif
+ .poll = drm_poll,
+ .read = drm_read,
+ .llseek = no_llseek,
+ .mmap = drm_gem_cma_mmap,
+};
+EXPORT_SYMBOL(tinydrm_fops);
work. The THIS_MODULE must be in the source code for your driver, and
can't be in some helper library module like tinydrm.ko.
I'm working on a macro to make this easier, and I guess you could try to
integrate that into your driver macro somehow (probably simplest to
generate the entire structure and just pass name+desc to that macro,
everything else is boilerplate anyway).
I'll cc you on that patch.