summarylogtreecommitdiffstats
path: root/patch.diff
blob: daebe0e157af9a407787ea0b8e704e53dba344aa (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
diff --git a/src/dkms.conf b/src/dkms.conf
index 78eaf8b..9d93675 100644
--- a/src/dkms.conf
+++ b/src/dkms.conf
@@ -1,8 +1,5 @@
 PACKAGE_NAME="yt6801"
 PACKAGE_VERSION="1.0.31"
-CLEAN="make clean"
-MAKE[0]="make"
 BUILT_MODULE_NAME[0]="yt6801"
 DEST_MODULE_LOCATION[0]="/kernel/drivers/net/ethernet/motorcomm"
 AUTOINSTALL="yes"
-REMAKE_INITRD="yes"
diff --git a/src/fuxi-gmac-net.c b/src/fuxi-gmac-net.c
index 3e643f9..fea4c97 100644
--- a/src/fuxi-gmac-net.c
+++ b/src/fuxi-gmac-net.c
@@ -771,7 +771,9 @@ static void fxgmac_tx_hang_timer_handler(struct timer_list *t)
 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;
diff --git a/src/fuxi-gmac-phy.c b/src/fuxi-gmac-phy.c
index 36d4fb3..8bd9533 100644
--- a/src/fuxi-gmac-phy.c
+++ b/src/fuxi-gmac-phy.c
@@ -324,7 +324,9 @@ static void fxgmac_phy_link_poll(struct timer_list *t)
 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;
@@ -352,7 +354,9 @@ static void fxgmac_phy_link_poll(unsigned long data)
 
 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);
@@ -370,6 +374,10 @@ int fxgmac_phy_timer_init(struct fxgmac_pdata *pdata)
 
 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");
 }
diff --git a/src/fuxi-gmac.h b/src/fuxi-gmac.h
index 539b507..2435f0c 100644
--- a/src/fuxi-gmac.h
+++ b/src/fuxi-gmac.h
@@ -50,6 +50,8 @@
 #define FXGMAC_NS_IFA_LOCAL_LINK     1
 #define FXGMAC_NS_IFA_GLOBAL_UNICAST 2
 
+#define FXGMAC_INT_MODERATION_ENABLED 1
+
 #define FXGMAX_ASPM_WAR_EN
 /* Descriptor related parameters */
 #if FXGMAC_TX_HANG_TIMER_ENABLED