summarylogtreecommitdiffstats
path: root/linux-4.15.patch
blob: 4af37fab7b770974a33417f0c9212f59119a5611 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
--- r8101-1.032.04/src/r8101_n.c.old
+++ r8101-1.032.04/src/r8101_n.c
@@ -211,7 +211,11 @@
 
 static void rtl8101_dsm(struct net_device *dev, int dev_state);
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
 static void rtl8101_esd_timer(unsigned long __opaque);
+#else
+static void rtl8101_esd_timer(struct timer_list *timer_list);
+#endif
 
 static void rtl8101_hw_phy_config(struct net_device *dev);
 
@@ -220,7 +224,12 @@
 static void rtl8101_tx_clear(struct rtl8101_private *tp);
 static void rtl8101_rx_clear(struct rtl8101_private *tp);
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
 static void rtl8101_link_timer(unsigned long __opaque);
+#else
+static void rtl8101_link_timer(struct timer_list *timer_list);
+#endif
+
 static void rtl8101_aspm_fix1(struct net_device *dev);
 
 static int rtl8101_open(struct net_device *dev);
@@ -9132,8 +9141,11 @@
 {
         struct rtl8101_private *tp = netdev_priv(dev);
         struct timer_list *timer = &tp->link_timer;
-
-        setup_timer(timer, rtl8101_link_timer, (unsigned long)dev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
+        setup_timer(timer, rtl8101_link_timer, (unsigned long)tp);
+#else
+        timer_setup(timer, rtl8101_link_timer, 0);
+#endif
         mod_timer(timer, jiffies + RTL8101_LINK_TIMEOUT);
 }
 
@@ -9147,7 +9159,11 @@
         struct rtl8101_private *tp = netdev_priv(dev);
         struct timer_list *timer = &tp->esd_timer;
 
-        setup_timer(timer, rtl8101_esd_timer, (unsigned long)dev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
+        setup_timer(timer, rtl8101_esd_timer, (unsigned long)tp);
+#else
+        timer_setup(timer, rtl8101_esd_timer, 0);
+#endif
         mod_timer(timer, jiffies + RTL8101_ESD_TIMEOUT);
 }
 
@@ -10486,10 +10502,16 @@
 }
 
 static void
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
 rtl8101_esd_timer(unsigned long __opaque)
 {
-        struct net_device *dev = (struct net_device *)__opaque;
-        struct rtl8101_private *tp = netdev_priv(dev);
+        struct rtl0101_private *tp = (struct rtl8101_private *)__opaque;
+#else
+rtl8101_esd_timer(struct timer_list *timer_list)
+{
+        struct rtl8101_private *tp = container_of(timer_list, struct rtl8101_private, esd_timer);
+#endif
+        struct net_device *dev = tp->dev;
         struct pci_dev *pdev = tp->pci_dev;
         struct timer_list *timer = &tp->esd_timer;
         unsigned long timeout = RTL8101_ESD_TIMEOUT;
@@ -10597,10 +10619,16 @@
 }
 
 static void
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
 rtl8101_link_timer(unsigned long __opaque)
 {
-        struct net_device *dev = (struct net_device *)__opaque;
-        struct rtl8101_private *tp = netdev_priv(dev);
+        struct rtl8101_private *tp = (struct rtl8101_private *)__opaque;
+#else
+rtl8101_link_timer(struct timer_list *timer_list)
+{
+        struct rtl8101_private *tp = container_of(timer_list, struct rtl8101_private, link_timer);
+#endif
+        struct net_device *dev = tp->dev;
         struct timer_list *timer = &tp->link_timer;
         unsigned long flags;