[packages/vpb-driver] - build fixes for kernel 6.5+
baggins
baggins at pld-linux.org
Wed Dec 20 22:01:30 CET 2023
commit d015d284c20bd4a57985c56b6da4d564eb7dcbce
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Wed Dec 20 21:52:35 2023 +0100
- build fixes for kernel 6.5+
kernel-6.5.patch | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
vpb-driver.spec | 2 ++
2 files changed, 64 insertions(+)
---
diff --git a/vpb-driver.spec b/vpb-driver.spec
index 225a799..49ded06 100644
--- a/vpb-driver.spec
+++ b/vpb-driver.spec
@@ -42,6 +42,7 @@ Patch6: kernel-5.13.patch
Patch7: kernel-5.17.patch
Patch8: kernel-5.18.patch
Patch9: pthread.patch
+Patch10: kernel-6.5.patch
URL: http://www.voicetronix.com.au/downloads.htm#linux
BuildRequires: rpmbuild(macros) >= 1.701
%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
@@ -159,6 +160,7 @@ p=`pwd`\
%patch7 -p1
%patch8 -p1
%patch9 -p1
+%patch10 -p1
%if %{without kernel}
%{__sed} -i -e 's,subdirs += $(srcdir)/vtcore $(srcdir)/vpb,,' src/Makefile.in
diff --git a/kernel-6.5.patch b/kernel-6.5.patch
new file mode 100644
index 0000000..a706ddf
--- /dev/null
+++ b/kernel-6.5.patch
@@ -0,0 +1,62 @@
+--- vpb-driver-4.2.58/src/vtcore/vtcore_main.c.orig 2023-12-20 21:05:22.000000000 +0100
++++ vpb-driver-4.2.58/src/vtcore/vtcore_main.c 2023-12-20 21:32:27.930068617 +0100
+@@ -120,8 +120,11 @@
+ static struct class *vt_class;
+ #define device_create(c,p,n,d,u,...) device_create_drvdata(c,p,n,d,u , ## __VA_ARGS__)
+
+-#else
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(6,5,0)
+ static struct class *vt_class;
++#else
++ static const struct class __vt_class;
++ static const struct class *vt_class = &__vt_class;
+
+ #endif
+
+@@ -335,11 +335,17 @@
+ }
+
+ /* register the vtcore class for sysfs and udev */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6,5,0)
+ vt_class = class_create( THIS_MODULE, NAME );
+ if( IS_ERR(vt_class) ) {
+ ret = PTR_ERR(vt_class);
+ goto hell_5;
+ }
++#else
++ ret = class_register(vt_class);
++ if (ret)
++ goto hell_5;
++#endif
+ d = device_create(vt_class, NULL, vtcore->dev, NULL, "vt0");
+ if( IS_ERR(d) ) {
+ ret = PTR_ERR(d);
+--- vpb-driver-4.2.58/src/vpb/vpb.c.orig 2023-12-20 21:48:28.444029156 +0100
++++ vpb-driver-4.2.58/src/vpb/vpb.c 2023-12-20 21:51:21.398373018 +0100
+@@ -182,8 +182,11 @@
+ static struct class *vpb_class;
+ #define device_create(c,p,n,d,u,...) device_create_drvdata(c,p,n,d,u , ## __VA_ARGS__)
+
+- #else
++ #elif LINUX_VERSION_CODE < KERNEL_VERSION(6,5,0)
+ static struct class *vpb_class;
++ #else
++ static const struct class __vpb_class;
++ static const struct class *vpb_class = &__vpb_class;
+
+ #endif
+ #endif
+@@ -358,7 +361,13 @@
+ #ifdef USE_UDEV
+ printk(KERN_INFO NAME": Setting up udev...\n");
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6,5,0)
+ vpb_class = class_create(THIS_MODULE, NAME);
++#else
++ ret = class_register(vpb_class);
++ if (ret)
++ goto hell;
++#endif
+
+ {
+ struct device *d = device_create(vpb_class, NULL, MKDEV(major, 0), NULL, "vpb0");
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/vpb-driver.git/commitdiff/d015d284c20bd4a57985c56b6da4d564eb7dcbce
More information about the pld-cvs-commit
mailing list