Index: mini.c
===================================================================
--- mini.c	(Revision 993)
+++ mini.c	(Revision 994)
@@ -307,7 +307,7 @@
 
 /*****************************************************************************/
 
-void cyclic_task(unsigned long data)
+static void cyclic_task(struct timer_list *data)
 {
     // receive process data
     down(&master_sem);
@@ -492,8 +492,7 @@
 #endif
 
     printk(KERN_INFO PFX "Starting cyclic sample thread.\n");
-    init_timer(&timer);
-    timer.function = cyclic_task;
+    timer_setup(&timer, cyclic_task, 0);
     timer.expires = jiffies + 10;
     add_timer(&timer);
 
Index: tty.c
===================================================================
--- tty.c	(Revision 993)
+++ tty.c	(Revision 994)
@@ -40,6 +40,7 @@
 #endif
 
 #include "../../include/ecrt.h" // EtherCAT realtime interface
+#include "../../include/ectty.h"
 
 #include "serial.h"
 
@@ -116,7 +117,7 @@
 
 /*****************************************************************************/
 
-void cyclic_task(unsigned long data)
+static void cyclic_task(struct timer_list *data)
 {
     // receive process data
     down(&master_sem);
@@ -214,8 +215,7 @@
     domain1_pd = ecrt_domain_data(domain1);
 
     printk(KERN_INFO PFX "Starting cyclic sample thread.\n");
-    init_timer(&timer);
-    timer.function = cyclic_task;
+    timer_setup(&timer, cyclic_task, 0);
     timer.expires = jiffies + 10;
     add_timer(&timer);
 
Index: cdev.c
===================================================================
--- cdev.c	(Revision 993)
+++ cdev.c	(Revision 994)
@@ -62,10 +62,10 @@
 #define PAGE_FAULT_VERSION KERNEL_VERSION(2, 6, 23)
 
 #if LINUX_VERSION_CODE >= PAGE_FAULT_VERSION
-static int eccdev_vma_fault(struct vm_area_struct *, struct vm_fault *);
+//static int eccdev_vma_fault(struct vm_area_struct *, struct vm_fault *);
+static int eccdev_vma_fault(struct vm_fault *);
 #else
-static struct page *eccdev_vma_nopage(
-        struct vm_area_struct *, unsigned long, int *);
+static struct page *eccdev_vma_nopage(struct vm_area_struct *, unsigned long, int *);
 #endif
 
 /*****************************************************************************/
@@ -253,10 +253,11 @@
  * \return Zero on success, otherwise a negative error code.
  */
 static int eccdev_vma_fault(
-        struct vm_area_struct *vma, /**< Virtual memory area. */
+//        struct vm_area_struct *vma, /**< Virtual memory area. */
         struct vm_fault *vmf /**< Fault data. */
         )
 {
+    struct vm_area_struct *vma = vmf->vma;
     unsigned long offset = vmf->pgoff << PAGE_SHIFT;
     ec_cdev_priv_t *priv = (ec_cdev_priv_t *) vma->vm_private_data;
     struct page *page;
@@ -273,8 +274,7 @@
     get_page(page);
     vmf->page = page;
 
-    EC_MASTER_DBG(priv->cdev->master, 1, "Vma fault, virtual_address = %p,"
-            " offset = %lu, page = %p\n", vmf->virtual_address, offset, page);
+    EC_MASTER_DBG(priv->cdev->master, 1, "Vma fault, virtual_address = %p," " offset = %lu, page = %p\n", vmf->address, offset, page);
 
     return 0;
 }
Index: master.c
===================================================================
--- master.c	(Revision 993)
+++ master.c	(Revision 994)
@@ -44,6 +44,7 @@
 #include <linux/device.h>
 #include <linux/version.h>
 #include <linux/hrtimer.h>
+#include <uapi/linux/sched/types.h>
 #include "globals.h"
 #include "slave.h"
 #include "slave_config.h"
