mirror of
https://aur.archlinux.org/yt6801-dkms.git
synced 2026-05-06 07:43:28 +00:00
fix 6.15+ kernel
thanks to @Eumeryx
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
pkgbase = yt6801-dkms
|
||||
pkgdesc = Kernel module for Motorcomm YT6801 ethernet controller (DKMS)
|
||||
pkgver = 1.0.30
|
||||
pkgrel = 3
|
||||
pkgrel = 4
|
||||
url = https://www.motor-comm.com/product/ethernet-control-chip
|
||||
arch = x86_64
|
||||
license = GPL-2.0-or-later
|
||||
depends = dkms
|
||||
source = https://www.motor-comm.com/Public/Uploads/uploadfile/files/20250430/yt6801-linux-driver-1.0.30.zip
|
||||
source = 6.15-fix.patch
|
||||
source = fix.patch
|
||||
source = drop-flags.patch
|
||||
sha256sums = 3dd7173a935da10fb9dfa537fd2bf4d6d3ae90c1d12e8091054667fb911bd6c4
|
||||
sha256sums = 3a3ba74d3a22ac8e1c1cf6c8b28fe4df1c84ad589dd1c5b537fc84a7e1902f93
|
||||
sha256sums = ef1855465b9f3c4102ce88dedb4beaaa12bf2a951adbe220ec617a17eb80c861
|
||||
sha256sums = 814c6a121b392f512ec4c8898dd9f6c50ae3ff9d946bc1d115135fa6f5c6a897
|
||||
|
||||
pkgname = yt6801-dkms
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
--- a/src/fuxi-gmac-phy.c
|
||||
+++ b/src/fuxi-gmac-phy.c
|
||||
@@ -368,6 +368,6 @@
|
||||
|
||||
void fxgmac_phy_timer_destroy(struct fxgmac_pdata *pdata)
|
||||
{
|
||||
- del_timer_sync(&pdata->expansion.phy_poll_tm);
|
||||
+ timer_shutdown_sync(&pdata->expansion.phy_poll_tm);
|
||||
DPRINTK("fxgmac_phy_timer removed\n");
|
||||
}
|
||||
@@ -1,24 +1,25 @@
|
||||
# Maintainer: Shiina Rikka <rikka@rikka.im>
|
||||
# Contributor: Eumeryx <eumeryx@foxmail.com>
|
||||
|
||||
_pkgbase=yt6801
|
||||
pkgname=yt6801-dkms
|
||||
pkgver=1.0.30
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Kernel module for Motorcomm YT6801 ethernet controller (DKMS)"
|
||||
arch=('x86_64')
|
||||
url="https://www.motor-comm.com/product/ethernet-control-chip"
|
||||
license=('GPL-2.0-or-later')
|
||||
depends=('dkms')
|
||||
source=('https://www.motor-comm.com/Public/Uploads/uploadfile/files/20250430/yt6801-linux-driver-1.0.30.zip'
|
||||
'6.15-fix.patch'
|
||||
'fix.patch'
|
||||
'drop-flags.patch')
|
||||
sha256sums=('3dd7173a935da10fb9dfa537fd2bf4d6d3ae90c1d12e8091054667fb911bd6c4'
|
||||
'3a3ba74d3a22ac8e1c1cf6c8b28fe4df1c84ad589dd1c5b537fc84a7e1902f93'
|
||||
'ef1855465b9f3c4102ce88dedb4beaaa12bf2a951adbe220ec617a17eb80c861'
|
||||
'814c6a121b392f512ec4c8898dd9f6c50ae3ff9d946bc1d115135fa6f5c6a897')
|
||||
|
||||
prepare() {
|
||||
cd ${srcdir}
|
||||
patch -p1 < 6.15-fix.patch
|
||||
patch -p1 < fix.patch
|
||||
patch -p1 < drop-flags.patch
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
--- a/src/fuxi-gmac-net.c
|
||||
+++ b/src/fuxi-gmac-net.c
|
||||
@@ -772,7 +772,9 @@
|
||||
static void fxgmac_tx_hang_timer_handler(unsigned long data)
|
||||
#endif
|
||||
{
|
||||
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,16,0))
|
||||
+ struct fxgmac_channel *channel = timer_container_of(channel, t, expansion.tx_hang_timer);
|
||||
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
|
||||
struct fxgmac_channel *channel = from_timer(channel, t, expansion.tx_hang_timer);
|
||||
#else
|
||||
struct fxgmac_channel *channel = (struct fxgmac_channel *)data;
|
||||
--- a/src/fuxi-gmac-phy.c 2025-04-28 13:51:16.000000000 +0800
|
||||
+++ b/src/fuxi-gmac-phy.c 2025-08-14 23:18:43.972276438 +0800
|
||||
@@ -322,7 +322,9 @@
|
||||
static void fxgmac_phy_link_poll(unsigned long data)
|
||||
#endif
|
||||
{
|
||||
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,16,0))
|
||||
+ struct fxgmac_pdata *pdata = timer_container_of(pdata, t, expansion.phy_poll_tm);
|
||||
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
|
||||
struct fxgmac_pdata *pdata = from_timer(pdata, t, expansion.phy_poll_tm);
|
||||
#else
|
||||
struct fxgmac_pdata *pdata = (struct fxgmac_pdata*)data;
|
||||
@@ -350,7 +352,9 @@
|
||||
|
||||
int fxgmac_phy_timer_init(struct fxgmac_pdata *pdata)
|
||||
{
|
||||
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,16,0))
|
||||
+ timer_init_key(&pdata->expansion.phy_poll_tm, NULL, 0, "fuxi_phy_link_update_timer", NULL);
|
||||
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
|
||||
init_timer_key(&pdata->expansion.phy_poll_tm, NULL, 0, "fuxi_phy_link_update_timer", NULL);
|
||||
#else
|
||||
init_timer_key(&pdata->expansion.phy_poll_tm, 0, "fuxi_phy_link_update_timer", NULL);
|
||||
@@ -368,6 +372,10 @@
|
||||
|
||||
void fxgmac_phy_timer_destroy(struct fxgmac_pdata *pdata)
|
||||
{
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,15,0))
|
||||
+ timer_shutdown_sync(&pdata->expansion.phy_poll_tm);
|
||||
+#else
|
||||
del_timer_sync(&pdata->expansion.phy_poll_tm);
|
||||
+#endif
|
||||
DPRINTK("fxgmac_phy_timer removed\n");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user