x86/ep80579: switch to 3.3
[openwrt/staging/dedeckeh.git] / package / ep80579-drivers / patches / 712-3.3-can-fixes.patch
diff --git a/package/ep80579-drivers/patches/712-3.3-can-fixes.patch b/package/ep80579-drivers/patches/712-3.3-can-fixes.patch
new file mode 100644 (file)
index 0000000..06a09e5
--- /dev/null
@@ -0,0 +1,41 @@
+--- a/Embedded/src/CAN/can_main.c
++++ b/Embedded/src/CAN/can_main.c
+@@ -72,6 +72,7 @@
+ #include "can_main.h"
+ #include "can_ioctl.h"
+ #include <linux/fs.h>
++#include <linux/module.h>
+ MODULE_AUTHOR("Intel(R) Corporation");
+@@ -110,7 +111,7 @@ struct file_operations file_ops = {
+     .owner        = THIS_MODULE,
+     .read        = can_read,
+     .write        = can_write,
+-    .ioctl        = can_dev_io,
++    .unlocked_ioctl = can_dev_io,
+     .open        = can_open,
+     .release     = can_release
+ };
+@@ -594,8 +595,7 @@ int icp_can_reset(can_os_t *can_os)
+ /*****************************************************************************
+  * Device IO control function. Used by user apps to configure CAN device.
+  *****************************************************************************/
+-int can_dev_io(struct inode *inode, struct file *filp, unsigned int cmd,
+-      unsigned long arg)
++long can_dev_io(struct file *filp, unsigned int cmd, unsigned long arg)
+ {
+     can_os_t *can_os;
+     unsigned int err=0;
+--- a/Embedded/src/CAN/can_main.h
++++ b/Embedded/src/CAN/can_main.h
+@@ -157,8 +157,7 @@ ssize_t can_write(
+ int icp_can_reset(
+     can_os_t *can_os);
+     
+-int can_dev_io(
+-    struct inode *inode, 
++long can_dev_io(
+     struct file *filp, 
+     unsigned int cmd, 
+     unsigned long arg);