openwrt/package/kernel/lantiq/ltq-vdsl-vr11-mei/patches/001-fix-compile.patch
Martin Schiller bc442076f2 kernel: add new ltq-vdsl-vr11-mei driver
This uses version 1.11.1 of the drv_mei_cpe package from the Intel UGW
8.5.2.10 for the VRX518.

Signed-off-by: Martin Schiller <ms.3headeddevs@gmail.com>
[updated for kernel 5.10]
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
[update to 1.11.1, switch to tag tarball, update patches]
Signed-off-by: Andre Heider <a.heider@gmail.com>
[update for kernel 5.15]
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-01-16 23:41:41 +00:00

89 lines
2.8 KiB
Diff

--- a/src/drv_mei_cpe_linux.c
+++ b/src/drv_mei_cpe_linux.c
@@ -1534,7 +1534,7 @@ struct proc_entry {
char name[32];
proc_rd_callback_t rd;
proc_wr_callback_t wr;
- struct file_operations ops;
+ struct proc_ops ops;
int entity;
};
@@ -2068,16 +2068,15 @@ static int mei_proc_single_open(struct i
static void mei_proc_entry_create(struct proc_dir_entry *parent_node,
struct proc_entry *proc_entry)
{
- memset(&proc_entry->ops, 0, sizeof(struct file_operations));
- proc_entry->ops.owner = THIS_MODULE;
+ memset(&proc_entry->ops, 0, sizeof(struct proc_ops));
- proc_entry->ops.open = mei_proc_single_open;
- proc_entry->ops.release = single_release;
+ proc_entry->ops.proc_open = mei_proc_single_open;
+ proc_entry->ops.proc_release = single_release;
- proc_entry->ops.read = seq_read;
- proc_entry->ops.llseek = seq_lseek;
+ proc_entry->ops.proc_read = seq_read;
+ proc_entry->ops.proc_lseek = seq_lseek;
if (proc_entry->wr)
- proc_entry->ops.write = proc_entry->wr;
+ proc_entry->ops.proc_write = proc_entry->wr;
proc_create_data(proc_entry->name,
(S_IFREG | S_IRUGO),
--- a/src/drv_mei_cpe_linux.h
+++ b/src/drv_mei_cpe_linux.h
@@ -31,6 +31,7 @@
#include <linux/module.h>
#include <linux/sched.h>
+#include <linux/sched/signal.h>
#include <linux/interrupt.h>
#include <linux/version.h>
#include <linux/crc32.h>
@@ -122,7 +123,7 @@ typedef int (*MEI_RequestIrq_WrapLinux_t
/**
Function typedef for the Linux free_irq()
*/
-typedef void (*MEI_FreeIrq_WrapLinux_t)( unsigned int usedIrq,
+typedef const void *(*MEI_FreeIrq_WrapLinux_t)( unsigned int usedIrq,
void *usedDevId );
--- a/src/drv_mei_cpe_linux_proc_config.c
+++ b/src/drv_mei_cpe_linux_proc_config.c
@@ -1277,13 +1277,12 @@ static int mei_proc_single_open(struct i
return single_open(file, mei_seq_single_show, PDE_DATA(inode));
}
-static struct file_operations proc_ops = {
- .owner = THIS_MODULE,
- .open = mei_proc_single_open,
- .release = single_release,
- .read = seq_read,
- .llseek = seq_lseek,
- .write = MEI_ProcWriteConfig
+static struct proc_ops proc_ops = {
+ .proc_open = mei_proc_single_open,
+ .proc_release = single_release,
+ .proc_read = seq_read,
+ .proc_lseek = seq_lseek,
+ .proc_write = MEI_ProcWriteConfig
};
/**
--- a/src/mei_cpe_appl_osmap.h
+++ b/src/mei_cpe_appl_osmap.h
@@ -38,10 +38,6 @@ extern "C"
#include <errno.h>
#include <ctype.h>
#include <sys/ioctl.h>
-
-extern int snprintf (char *__restrict __s, size_t __maxlen,
- __const char *__restrict __format, ...)
- __THROW __attribute__ ((__format__ (__printf__, 3, 4)));
#endif
/* ==========================================================================