mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-11-02 03:17:48 +00:00
netifd: fix compile on older kernels
Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
54
patches/0040-netifd-fix-compile-on-older-kernels.patch
Normal file
54
patches/0040-netifd-fix-compile-on-older-kernels.patch
Normal file
@@ -0,0 +1,54 @@
|
||||
From 5bf7a4a5befe6add789249fe02b737e353137146 Mon Sep 17 00:00:00 2001
|
||||
From: John Crispin <john@phrozen.org>
|
||||
Date: Wed, 4 Aug 2021 08:36:30 +0200
|
||||
Subject: [PATCH] netifd: fix compile on older kernels
|
||||
|
||||
The ethtool features do not exist on ancient qualcomm kernels.
|
||||
Disable that feature if running on QCA.
|
||||
|
||||
Signed-off-by: John Crispin <john@phrozen.org>
|
||||
---
|
||||
.../config/netifd/patches/003-ethtool.patch | 31 +++++++++++++++++++
|
||||
1 file changed, 31 insertions(+)
|
||||
create mode 100644 package/network/config/netifd/patches/003-ethtool.patch
|
||||
|
||||
diff --git a/package/network/config/netifd/patches/003-ethtool.patch b/package/network/config/netifd/patches/003-ethtool.patch
|
||||
new file mode 100644
|
||||
index 0000000000..6aee86283e
|
||||
--- /dev/null
|
||||
+++ b/package/network/config/netifd/patches/003-ethtool.patch
|
||||
@@ -0,0 +1,31 @@
|
||||
+Index: netifd-2021-05-26-1eb0fafa/system-linux.c
|
||||
+===================================================================
|
||||
+--- netifd-2021-05-26-1eb0fafa.orig/system-linux.c
|
||||
++++ netifd-2021-05-26-1eb0fafa/system-linux.c
|
||||
+@@ -1578,6 +1578,8 @@ int system_vlandev_del(struct device *vl
|
||||
+ return system_link_del(vlandev->ifname);
|
||||
+ }
|
||||
+
|
||||
++#ifdef SPEED_400000
|
||||
++// ugly hack to detect if we are running on an ancient kernel
|
||||
+ static void
|
||||
+ system_set_ethtool_settings(struct device *dev, struct device_settings *s)
|
||||
+ {
|
||||
+@@ -1628,6 +1630,7 @@ system_set_ethtool_settings(struct devic
|
||||
+ ecmd.cmd = ETHTOOL_SSET;
|
||||
+ ioctl(sock_ioctl, SIOCETHTOOL, &ifr);
|
||||
+ }
|
||||
++#endif
|
||||
+
|
||||
+ void
|
||||
+ system_if_get_settings(struct device *dev, struct device_settings *s)
|
||||
+@@ -1852,7 +1855,9 @@ system_if_apply_settings(struct device *
|
||||
+ system_set_drop_unsolicited_na(dev, s->drop_unsolicited_na ? "1" : "0");
|
||||
+ if (apply_mask & DEV_OPT_ARP_ACCEPT)
|
||||
+ system_set_arp_accept(dev, s->arp_accept ? "1" : "0");
|
||||
++#ifdef SPEED_400000
|
||||
+ system_set_ethtool_settings(dev, s);
|
||||
++#endif
|
||||
+ }
|
||||
+
|
||||
+ int system_if_up(struct device *dev)
|
||||
--
|
||||
2.25.1
|
||||
|
||||
Reference in New Issue
Block a user