aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch')
-rw-r--r--package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch95
1 files changed, 95 insertions, 0 deletions
diff --git a/package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch b/package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch
new file mode 100644
index 0000000000..c97ec4d94b
--- /dev/null
+++ b/package/kernel/lantiq/ltq-vectoring/patches/001-fix-compile.patch
@@ -0,0 +1,95 @@
+--- a/src/vectoring/Makefile
++++ b/src/vectoring/Makefile
+@@ -1,5 +1,5 @@
+-obj-$(CONFIG_PTM_VECTORING) += ifxmips_vectoring.o
+-obj-y += ifxmips_vectoring_stub.o
+-ifeq ($(CONFIG_DSL_MEI_CPE_DRV),)
+-obj-$(CONFIG_PTM_VECTORING) += ifxmips_vectoring_test.o
+-endif
++obj-m += ltq_vectoring.o
++ltq_vectoring-objs = ifxmips_vectoring.o ifxmips_vectoring_stub.o
++
++obj-m += ltq_vectoring_test.o
++ltq_vectoring_test-objs = ifxmips_vectoring_test.o
+--- a/src/vectoring/ifxmips_vectoring.c
++++ b/src/vectoring/ifxmips_vectoring.c
+@@ -30,9 +30,11 @@
+ /*
+ * Common Head File
+ */
++#include <linux/version.h>
+ #include <linux/kernel.h>
+ #include <linux/module.h>
+ #include <linux/etherdevice.h>
++#include <linux/proc_fs.h>
+
+ /*
+ * Chip Specific Head File
+@@ -239,7 +241,7 @@ static int netdev_event_handler(struct n
+ && event != NETDEV_UNREGISTER )
+ return NOTIFY_DONE;
+
+- netif = (struct net_device *)netdev;
++ netif = netdev_notifier_info_to_dev(netdev);
+ if ( strcmp(netif->name, "ptm0") != 0 )
+ return NOTIFY_DONE;
+
+@@ -356,6 +358,7 @@ static int proc_write_dbg(struct file *f
+ return count;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,6,0)
+ static struct file_operations g_proc_file_vectoring_dbg_seq_fops = {
+ .owner = THIS_MODULE,
+ .open = proc_read_dbg_seq_open,
+@@ -364,6 +367,15 @@ static struct file_operations g_proc_fil
+ .llseek = seq_lseek,
+ .release = single_release,
+ };
++#else
++static struct proc_ops g_proc_file_vectoring_dbg_seq_fops = {
++ .proc_open = proc_read_dbg_seq_open,
++ .proc_read = seq_read,
++ .proc_write = proc_write_dbg,
++ .proc_lseek = seq_lseek,
++ .proc_release = single_release,
++};
++#endif
+
+ static int proc_read_dbg_seq_open(struct inode *inode, struct file *file)
+ {
+--- a/src/vectoring/ifxmips_vectoring_test.c
++++ b/src/vectoring/ifxmips_vectoring_test.c
+@@ -1,6 +1,8 @@
++#include <linux/version.h>
+ #include <linux/kernel.h>
+ #include <linux/module.h>
+ #include <linux/proc_fs.h>
++#include <linux/seq_file.h>
+
+ #include "ifxmips_vectoring_stub.h"
+
+@@ -82,6 +84,7 @@ static int proc_write_vectoring(struct f
+ return count;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,6,0)
+ static struct file_operations g_proc_file_vectoring_seq_fops = {
+ .owner = THIS_MODULE,
+ .open = proc_read_vectoring_seq_open,
+@@ -90,6 +93,15 @@ static struct file_operations g_proc_fil
+ .llseek = seq_lseek,
+ .release = single_release,
+ };
++#else
++static struct proc_ops g_proc_file_vectoring_seq_fops = {
++ .proc_open = proc_read_vectoring_seq_open,
++ .proc_read = seq_read,
++ .proc_write = proc_write_vectoring,
++ .proc_lseek = seq_lseek,
++ .proc_release = single_release,
++};
++#endif
+
+ static int proc_read_vectoring_seq_open(struct inode *inode, struct file *file)
+ {