Loading pkgs/os-specific/linux/ch9344/default.nix +1 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ stdenv.mkDerivation rec { patches = [ ./fix-linux-6-12-build.patch ./fix-linux-6-15-build.patch ./fix-linux-6-16-build.patch ]; sourceRoot = "${src.name}/driver"; Loading pkgs/os-specific/linux/ch9344/fix-linux-6-16-build.patch 0 → 100644 +16 −0 Original line number Diff line number Diff line diff --git a/ch9344.c b/ch9344.c index 36402c0..9f0df54 100644 --- a/ch9344.c +++ b/ch9344.c @@ -929,7 +929,11 @@ static void timer_function(unsigned long arg) static void timer_function(struct timer_list *t) { unsigned char *buffer; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 16, 0)) + struct ch9344_ttyport *ttyport = timer_container_of(ttyport, t, timer); +#else struct ch9344_ttyport *ttyport = from_timer(ttyport, t, timer); +#endif int fifolen = kfifo_len(&ttyport->rfifo); int len; Loading
pkgs/os-specific/linux/ch9344/default.nix +1 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ stdenv.mkDerivation rec { patches = [ ./fix-linux-6-12-build.patch ./fix-linux-6-15-build.patch ./fix-linux-6-16-build.patch ]; sourceRoot = "${src.name}/driver"; Loading
pkgs/os-specific/linux/ch9344/fix-linux-6-16-build.patch 0 → 100644 +16 −0 Original line number Diff line number Diff line diff --git a/ch9344.c b/ch9344.c index 36402c0..9f0df54 100644 --- a/ch9344.c +++ b/ch9344.c @@ -929,7 +929,11 @@ static void timer_function(unsigned long arg) static void timer_function(struct timer_list *t) { unsigned char *buffer; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 16, 0)) + struct ch9344_ttyport *ttyport = timer_container_of(ttyport, t, timer); +#else struct ch9344_ttyport *ttyport = from_timer(ttyport, t, timer); +#endif int fifolen = kfifo_len(&ttyport->rfifo); int len;