summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJSH2018-02-09 14:27:27 -0500
committerJSH2018-02-09 14:27:27 -0500
commite405d3f3a6e93b2bae7f1c94282361d9a1d09edc (patch)
tree881ef5e6893de1b7c1e162308539a4b7387c168e
parent5b4d13e71c76ae6403d71366d7a7f8b6f4361687 (diff)
downloadaur-e405d3f3a6e93b2bae7f1c94282361d9a1d09edc.tar.gz
Linux 4.15 patch
-rw-r--r--.SRCINFO5
-rw-r--r--PKGBUILD14
-rw-r--r--linux-4.15.patch93
3 files changed, 104 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f964c9b98c60..c0cd07f58244 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Fri Nov 10 21:29:05 UTC 2017
+# Fri Feb 9 19:26:48 UTC 2018
pkgbase = r8101-dkms
pkgdesc = r8101 realtek lan drivers (DKMS)
pkgver = 1.032.04
- pkgrel = 2
+ pkgrel = 3
url = http://www.realtek.com.tw/
arch = i686
arch = x86_64
@@ -13,6 +13,7 @@ pkgbase = r8101-dkms
provides = r8101
conflicts = r8101
source = http://12244.wpc.azureedge.net/8012244/drivers/rtdrivers/cn/nic/0008-r8101-1.032.04.tar.bz2
+ source = linux-4.15.patch
source = dkms.conf
sha256sums = cb73c2bae347709009db0de657f7bd0e4a293abf6e8e60a07a97a47867f7b5f7
sha256sums = 2846e89fe3fd68c64c71a0f1150873a061571acc63e65cca6d825df7985ad7b5
diff --git a/PKGBUILD b/PKGBUILD
index 49d84e9ebcf3..b549af42ca6b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
_pkgbase=r8101
pkgname=r8101-dkms
pkgver=1.032.04
-pkgrel=2
+pkgrel=3
pkgdesc="r8101 realtek lan drivers (DKMS)"
arch=('i686' 'x86_64')
url="http://www.realtek.com.tw/"
@@ -15,13 +15,14 @@ provides=("${_pkgbase}")
conflicts=("${_pkgbase}")
source=("http://12244.wpc.azureedge.net/8012244/drivers/rtdrivers/cn/nic/0008-${_pkgbase}-${pkgver}.tar.bz2"
+ 'linux-4.15.patch'
'dkms.conf')
-#prepare() {
-# cd "r8101-$pkgver"
-#
-# patch -p1 -i ../linux-4.11.patch
-#}
+prepare() {
+ cd "r8101-$pkgver"
+
+ patch -p1 -i "../linux-4.15.patch"
+}
package() {
@@ -38,4 +39,5 @@ package() {
"${pkgdir}"/usr/src/${_pkgbase}-${pkgver}/
}
sha256sums=('cb73c2bae347709009db0de657f7bd0e4a293abf6e8e60a07a97a47867f7b5f7'
+ 'dc568a0d1f265ae96c76919eab289b727990594906c4ea340c9f9a6f5d4384f6'
'2846e89fe3fd68c64c71a0f1150873a061571acc63e65cca6d825df7985ad7b5')
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;
+
+