aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/linux.scm3
-rw-r--r--gnu/packages/patches/ddcci-driver-linux-linux-6.8.patch36
3 files changed, 39 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 2556b2a198..7f43f57f57 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1099,6 +1099,7 @@ dist_patch_DATA = \
%D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dbxfs-remove-sentry-sdk.patch \
+ %D%/packages/patches/ddcci-driver-linux-linux-6.8.patch \
%D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/dee-vapi.patch \
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 751fdb5d4c..8a849d146a 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1748,7 +1748,8 @@ graphics card on Optimus laptops.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "19vi7dk4jv5wm18cznz4lj2fb1c7m7j3ig62x4a6qy9djxf9z472"))))
+ (base32 "19vi7dk4jv5wm18cznz4lj2fb1c7m7j3ig62x4a6qy9djxf9z472"))
+ (patches (search-patches "ddcci-driver-linux-linux-6.8.patch"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f ; no tests
diff --git a/gnu/packages/patches/ddcci-driver-linux-linux-6.8.patch b/gnu/packages/patches/ddcci-driver-linux-linux-6.8.patch
new file mode 100644
index 0000000000..89ded73c14
--- /dev/null
+++ b/gnu/packages/patches/ddcci-driver-linux-linux-6.8.patch
@@ -0,0 +1,36 @@
+Retrieved from: https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/3eb20df68a545d07b8501f13fa9d20e9c6f577ed.patch
+
+From 7f851f5fb8fbcd7b3a93aaedff90b27124e17a7e Mon Sep 17 00:00:00 2001
+From: Bruno Inec <contact@sweenu.xyz>
+Date: Wed, 20 Mar 2024 10:36:56 +0100
+Subject: [PATCH] Compatibility with Linux 6.8
+
+---
+ ddcci/ddcci.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ddcci/ddcci.c b/ddcci/ddcci.c
+index 87b0818..6073c75 100644
+--- a/ddcci/ddcci.c
++++ b/ddcci/ddcci.c
+@@ -1666,7 +1666,7 @@ static int ddcci_detect(struct i2c_client *client, struct i2c_board_info *info)
+ pr_debug("detected %d:%02x\n", client->adapter->nr, outer_addr);
+
+ /* set device type */
+- strlcpy(info->type, (outer_addr == DDCCI_DEFAULT_DEVICE_ADDR) ? "ddcci" : "ddcci-dependent", I2C_NAME_SIZE);
++ strscpy(info->type, (outer_addr == DDCCI_DEFAULT_DEVICE_ADDR) ? "ddcci" : "ddcci-dependent", I2C_NAME_SIZE);
+
+ return 0;
+ }
+@@ -1824,7 +1824,7 @@ static struct i2c_driver ddcci_driver = {
+ #else
+ .remove = ddcci_remove,
+ #endif
+- .class = I2C_CLASS_DDC,
++ .class = I2C_CLASS_SPD,
+ .detect = ddcci_detect,
+ .address_list = I2C_ADDRS(
+ DDCCI_DEFAULT_DEVICE_ADDR>>1
+--
+GitLab
+