summarylogtreecommitdiffstats
path: root/linux-4.15.patch
diff options
context:
space:
mode:
Diffstat (limited to 'linux-4.15.patch')
-rw-r--r--linux-4.15.patch93
1 files changed, 93 insertions, 0 deletions
diff --git a/linux-4.15.patch b/linux-4.15.patch
new file mode 100644
index 000000000000..4af37fab7b77
--- /dev/null
+++ b/linux-4.15.patch
@@ -0,0 +1,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;
+
+