Skip to content
This repository was archived by the owner on Apr 18, 2026. It is now read-only.

Update for Kernel 6.13+ - #50

Open
feranick wants to merge 5 commits into
google:mainfrom
feranick:main
Open

feranick wants to merge 5 commits into
google:mainfrom
feranick:main

Conversation

@feranick

@feranick feranick commented Aug 4, 2025

Copy link
Copy Markdown
  • Remove deprecated call REMAKE_INITRD.
  • Use literal for MODULE_IMPORT_NS.
  • Use "noop_llseek" instead of deprecated "no_llseek".

@markfrancisonly

Copy link
Copy Markdown

Thank you. In honor of the trixie release a debian install script for those who might need it.

@feranick

feranick commented Aug 5, 2025

Copy link
Copy Markdown
Author

Thank you. In honor of the trixie release a debian install script for those who might need it.

Alternatively, debs are available in my fork (where this PR is coming from) and can be easily installed:

https://github.com/feranick/gasket-driver/releases/tag/1.0-18.4

@AaShiyana9

AaShiyana9 commented Aug 13, 2025

Copy link
Copy Markdown

feranick...Thank you so much....I have been struggling to get my Coral PCIE TPU's working on proxmox 9.0.4 kernel 6.14.8-2-pve and finally...finally...your fork provided the gasket-dkms_1.0-18.4_all.deb package that installed successfully and after a reboot...the apex module is loaded as confirmed below. THANK YOU!

┌──(root💀proxmox-halime)-[~]
└─# ls /dev/a*
/dev/apex_0 /dev/apex_1 /dev/autofs

@jarixe

jarixe commented Aug 14, 2025

Copy link
Copy Markdown

It worked, thank you Feranick!

@FrancesoM

FrancesoM commented Sep 2, 2025

Copy link
Copy Markdown

Just to help people who are searching for solutions on Raspberry. I had several build issues when intalling gasket through apt-get sudo apt-get install gasket-dkms libedgetpu1-std because the version that apt is pulling is not compatible with the 6.12 headers of the raspberry debian OS I am using (standard arm64 raspberry distro).

I solved by doing the following:

git clone https://github.com/google/gasket-driver.git coral-driver/git-source
cd coral-driver/git-source

# Modify the following, since noble doesn't work with raspberry OS
diff --git a/debian/changelog b/debian/changelog
index 3032563..c6afc2d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-gasket-dkms (1.0-18.4) noble; urgency=medium
+gasket-dkms (1.0-18.4) unstable; urgency=medium

# Build kernel modules
debuild -us -uc -tc -b

cd ..
sudo dpkg -i gasket-dkms_*.deb
sudo depmod -a
sudo modprobe apex

# Add udev rules as per documentation
sudo sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0660\", GROUP=\"apex\"' >> /etc/udev/rules.d/65-apex.rules"

sudo groupadd apex

sudo adduser $USER apex

# Now I can see the gasket and apex drivers
lsmod | grep apex
apex                   49152  0
gasket                114688  1 apex

# And for good measure I also have libedgetpu
dpkg -l | grep libedgetpu
ii  libedgetpu1-std:arm64                16.0                                    arm64        Support library for Edge TPU



@Popoff-fr

Copy link
Copy Markdown

Hi all,
Since upgrading to trixie 13.1, I've been unable to install the driver.
The update removed apex0 from /dev. And when I installed the @feranick version, it didn't work; whereas with trixie 13, the driver installed without any problems.
@feranick, if you have a solution, I'd love to hear it!

@feranick

Copy link
Copy Markdown
Author

Any log, error message? I don't use Trixie.

Have you tried installing the package again? Any error message?

@Popoff-fr

Popoff-fr commented Sep 15, 2025

Copy link
Copy Markdown

I use Proxmox (9.0.9).

When i execute :

dpkg -i gasket-dkms_1.0-18.4_all.deb

I get :

(Reading database ... 166525 files and directories currently installed.)
Preparing to unpack gasket-dkms_1.0-18.4_all.deb ...
Module gasket/1.0 for kernel 6.12.41+deb13-amd64 (x86_64):
Before uninstall, this module version was ACTIVE on this kernel.
Deleting /lib/modules/6.12.41+deb13-amd64/updates/dkms/gasket.ko.xz
Deleting /lib/modules/6.12.41+deb13-amd64/updates/dkms/apex.ko.xz
Running depmod..... done.

Module gasket/1.0 for kernel 6.12.43+deb13-amd64 (x86_64):
Before uninstall, this module version was ACTIVE on this kernel.
Deleting /lib/modules/6.12.43+deb13-amd64/updates/dkms/gasket.ko.xz
Deleting /lib/modules/6.12.43+deb13-amd64/updates/dkms/apex.ko.xz
Running depmod..... done.

Module gasket/1.0 for kernel 6.14.8-2-pve (x86_64):
Before uninstall, this module version was ACTIVE on this kernel.
Deleting /lib/modules/6.14.8-2-pve/updates/dkms/gasket.ko.xz
Deleting /lib/modules/6.14.8-2-pve/updates/dkms/apex.ko.xz
Running depmod... done.

Deleting module gasket/1.0 completely from the DKMS tree.
Unpacking gasket-dkms (1.0-18.4) over (1.0-18.4) ...
Setting up gasket-dkms (1.0-18.4) ...
Loading new gasket/1.0 DKMS files...
Building for 6.12.41+deb13-amd64, 6.12.43+deb13-amd64 and 6.14.8-2-pve

Building initial module gasket/1.0 for 6.12.41+deb13-amd64
Sign command: /lib/modules/6.12.41+deb13-amd64/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module(s).... done.
Signing module /var/lib/dkms/gasket/1.0/build/gasket.ko
Signing module /var/lib/dkms/gasket/1.0/build/apex.ko
Installing /lib/modules/6.12.41+deb13-amd64/updates/dkms/gasket.ko.xz
Installing /lib/modules/6.12.41+deb13-amd64/updates/dkms/apex.ko.xz
Running depmod.... done.

Building initial module gasket/1.0 for 6.12.43+deb13-amd64
Sign command: /lib/modules/6.12.43+deb13-amd64/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module(s).... done.
Signing module /var/lib/dkms/gasket/1.0/build/gasket.ko
Signing module /var/lib/dkms/gasket/1.0/build/apex.ko
Installing /lib/modules/6.12.43+deb13-amd64/updates/dkms/gasket.ko.xz
Installing /lib/modules/6.12.43+deb13-amd64/updates/dkms/apex.ko.xz
Running depmod..... done.

Building initial module gasket/1.0 for 6.14.8-2-pve
Sign command: /lib/modules/6.14.8-2-pve/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module(s).... done.
Signing module /var/lib/dkms/gasket/1.0/build/gasket.ko
Signing module /var/lib/dkms/gasket/1.0/build/apex.ko
Installing /lib/modules/6.14.8-2-pve/updates/dkms/gasket.ko
Installing /lib/modules/6.14.8-2-pve/updates/dkms/apex.ko
Running depmod... done.

everything looks good

Except that after a reboot I don't have /dev/apex0

Until now this procedure worked

@Popoff-fr

Copy link
Copy Markdown
Screenshot 2025-09-15 at 16-41-13 beelink - Proxmox Virtual Environment

@feranick

Copy link
Copy Markdown
Author

I can see you have several kernels installed. 6.12 is the stable in trixie, but you also have 6.14 which is not. Which one are you actually using as primary (uname -a)? Are yo uusing any specific configuration that is not part of trixie?

@Popoff-fr

Copy link
Copy Markdown

I'm using version 6.14.11-2-pve, which is the version used by proxmox 9.0.9. I don't know why I have different kernels installed.

@umaks8

umaks8 commented Sep 30, 2025

Copy link
Copy Markdown

All fine on Proxmox 9.0.10 kernel 6.14.11-3-pve! @feranick thanks a lot 👍

root@pve:~# uname -a
Linux pve 6.14.11-3-pve #1 SMP PREEMPT_DYNAMIC PMX 6.14.11-3 (2025-09-22T10:13Z) x86_64 GNU/Linux

root@pve:~# ls /dev/apex*
/dev/apex_0

@Popoff-fr fyi

@bluearcher-bc

Copy link
Copy Markdown

Has any one tried this on 6.16? I'm thinking of trying Debian 13 backports 6.16.3

@gusvendegna

Copy link
Copy Markdown

You are the greatest. Thank you.

@hitoy

hitoy commented Nov 17, 2025

Copy link
Copy Markdown

@feranick feranick i have tried your last released, but not working for 6.12.58, the lasted longterm kernel

@Popoff-fr

Copy link
Copy Markdown

@feranick feranick i have tried your last released, but not working for 6.12.58, the lasted longterm kernel

Are you on proxmox?

seuros added a commit to seuros/gasket-driver that referenced this pull request Dec 11, 2025
Changes from google#50 by @feranick:
- Remove .llseek = no_llseek line entirely (cleaner than noop_llseek)
- Add kernel version check for MODULE_IMPORT_NS (6.13+ needs quotes)
- Remove deprecated REMAKE_INITRD from DKMS config

This is more future-proof than the previous sed-based approach.
Works on kernels 6.12-6.17+.

Co-authored-by: Nicola Ferralis <feranick@hotmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants