lantiq: Make ATM and PTM drivers compatible with kernel 4.1
[openwrt-working-2016/.git] / package / kernel / lantiq / ltq-ptm / src / ifxmips_ptm_adsl.c
index 391d56cf09dd94766ba1a411c73e83809e938bd6..38001c3171f95371234db3fa5a373ab34513864f 100644 (file)
@@ -815,6 +815,7 @@ static void skb_swap(struct sk_buff *skb)
 
 static INLINE void proc_file_create(void)
 {
+#if defined(ENABLE_DBG_PROC) && ENABLE_DBG_PROC
     struct proc_dir_entry *res;
 
     g_ptm_dir = proc_mkdir("driver/ifx_ptm", NULL);
@@ -849,7 +850,6 @@ static INLINE void proc_file_create(void)
   #endif
 #endif
 
-#if defined(ENABLE_DBG_PROC) && ENABLE_DBG_PROC
     res = create_proc_entry("dbg",
                             0,
                             g_ptm_dir);
@@ -1442,7 +1442,7 @@ static int ifx_ptm_init(void)
     init_tables();
 
     for ( i = 0; i < ARRAY_SIZE(g_net_dev); i++ ) {
-        g_net_dev[i] = alloc_netdev(0, g_net_dev_name[i], ether_setup);
+        g_net_dev[i] = alloc_netdev(0, g_net_dev_name[i], NET_NAME_UNKNOWN, ether_setup);
         if ( g_net_dev[i] == NULL )
             goto ALLOC_NETDEV_FAIL;
         ptm_setup(g_net_dev[i], i);
@@ -1455,7 +1455,11 @@ static int ifx_ptm_init(void)
     }
 
     /*  register interrupt handler  */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)
+    ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, 0, "ptm_mailbox_isr", &g_ptm_priv_data);
+#else
     ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, IRQF_DISABLED, "ptm_mailbox_isr", &g_ptm_priv_data);
+#endif
     if ( ret ) {
         if ( ret == -EBUSY ) {
             err("IRQ may be occupied by other driver, please reconfig to disable it.");