diff options
Diffstat (limited to 'linux-4.15.patch')
-rw-r--r-- | linux-4.15.patch | 93 |
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; + + |