Update Error with Coral TPU Drivers

For those of you still having issues, have a look at the logs when installing the built .deb. In my case the debian package wasn't installing because for whatever reason the kernel headers were missing.

To fix this:
Code:
apt install pve-headers

Now everything is back to working as it was, thanks for the help guys :)

This fixed it for me as well.

I first installed the pve-headers (I had previously only done the pve-headers-6.5.11-4-pve), reinstalled the built gasket .deb, rebooted and it was back and working as before.

Thanks for your help
 
Could it be that the gasket or apex modules are still blacklisted somewhere in /etc/

To find out run:
grep -r apex /etc
 
Hi,

I Installed to my Proxmox LXC container with these instructions with latest 6.5.11-8-pve kernel but apex.ko and gasket.ko not loading.

Frigate:~# uname -a
Linux Frigate 6.5.11-8-pve #1 SMP PREEMPT_DYNAMIC PMX 6.5.11-8 (2024-01-30T12:27Z) x86_64 GNU/Linux
Frigate:~# modprobe apex
modprobe: ERROR: could not insert 'apex': Operation not permitted
Frigate:~# modprobe gasket
modprobe: ERROR: could not insert 'gasket': Operation not permitted

with root and sudo not helping.

Frigate:~# ls -l /dev/apex*
ls: cannot access '/dev/apex*': No such file or directory

Frigate:~# lspci -nn | grep 089a
03:00.0 System peripheral [0880]: Global Unichip Corp. Coral Edge TPU [1ac1:089a]

Some bug related to new kernel?

Thanks!
 
I also have no Apex_0 present under /dev but in my case the gasket module is trying to load but fails.

Code:
uname -a
Linux Proxmox 6.5.11-8-pve #1 SMP PREEMPT_DYNAMIC PMX 6.5.11-8 (2024-01-30T12:27Z) x86_64 GNU/Linux

I have followed this:
Code:
apt remove gasket-dkms
apt install dkms lsb-release sudo git dh-dkms devscripts pve-headers
git clone https://github.com/google/gasket-driver.git
cd gasket-driver/
debuild -us -uc -tc -b
cd ..
dpkg -i gasket-dkms_1.0-18_all.deb


Now I see:

Code:
lsmod | grep apex
apex                   28672  0
gasket                126976  1 apex

~ # dmesg | grep gasket
[  206.236943] gasket: module verification failed: signature and/or required key missing - tainting kernel

No output for:
Code:
dmesg | grep apex

As per here: google/gasket-driver#19 secure boot is not enabled.


I haven't been able to resolve this yet and cannot get Frigate working. Any help would be greatly appreciated!!
 
Hi,

I Installed to my Proxmox LXC container with these instructions with latest 6.5.11-8-pve kernel but apex.ko and gasket.ko not loading.

Frigate:~# uname -a
Linux Frigate 6.5.11-8-pve #1 SMP PREEMPT_DYNAMIC PMX 6.5.11-8 (2024-01-30T12:27Z) x86_64 GNU/Linux
Frigate:~# modprobe apex
modprobe: ERROR: could not insert 'apex': Operation not permitted
Frigate:~# modprobe gasket
modprobe: ERROR: could not insert 'gasket': Operation not permitted

with root and sudo not helping.

Frigate:~# ls -l /dev/apex*
ls: cannot access '/dev/apex*': No such file or directory

Frigate:~# lspci -nn | grep 089a
03:00.0 System peripheral [0880]: Global Unichip Corp. Coral Edge TPU [1ac1:089a]

Some bug related to new kernel?

Thanks!
The problem was confusion with vm, lxc ja passthrough things. I was trying this in LXC container, which was wrong. Got it working when did in Proxmox, now /dev/apex_0 also visible in LXC container.
 
The problem was confusion with vm, lxc ja passthrough things. I was trying this in LXC container, which was wrong. Got it working when did in Proxmox, now /dev/apex_0 also visible in LXC container.

Glad you got it working. For me it still fails :-( I have read this could also be because my unit is faulty.. faulty units never initialise and get 'stuck' on ID 1a6e:089a.

I have ordered a replacement and will post my findings!
 
I've just updated my kernel to 6.5.13-1-pve from 6.5.11-8-pve and this seems to have killed my working setup. Have tried removing and rebuilding the modules, but they always end up with the vermagic showing previous kernel 6.5.11-8-pve. Any ideas how I can force this to 6.5.13-1-pve?

as below:
Code:
filename:       /var/lib/dkms/gasket/kernel-6.5.13-1-pve-x86_64/module/gasket.ko
author:         Rob Springer <rspringer@google.com>
license:        GPL v2
version:        1.1.4
description:    Google Gasket driver framework
import_ns:      DMA_BUF
srcversion:     2E9213B784051969509C03E
depends:       
retpoline:      Y
name:           gasket
vermagic:       6.5.11-8-pve SMP preempt mod_unload modversions
sig_id:         PKCS#7
signer:         DKMS module signing key
sig_key:        [redacted]
sig_hashalgo:   sha512
signature:      [redacted]
parm:           dma_bit_mask:int
 
Last edited:
I gave up with recent kernels. I got it working again with:

  1. Remove gasket-dkms
  2. Pin kernel 6.2.16-20-pve
  3. Use google repo:

Code:
echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | tee /etc/apt/sources.list.d/coral-edgetpu.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
apt-get update
apt-get install libedgetpu1-std

If this doesn't work you'll have to do a make reset on the host.

HOWEVER: These hoops I had to jump through were likely due to a faulty TPU - I ordered a replacement and not only does it run significantly cooler, but I haven't had an issue since. I suspect my original one was intermittently playing up. I can find others who have said the same in reviews on Amazon. Those that fail never change to
Code:
18d1:9302 Google Inc.
and get stuck on
Code:
1a6e:089a Global Unichip Corp.

YMMV.
 
After hours and hours of trying to get my pcie tpu working for my lxc container - it was the apex and gasket on the blacklist file!!!
Why are they in the blacklist? By default?
Commented them out, rebooted and then pcie tpu was finally found and frigate bounced back to life!!
 
On 6.5.13-5-pve, only got as far as. Subbing for solutions in the future.

gasket: module verification failed: signature and/or required key missing - tainting kernel
 
I had coral pcie and a coral usb working fine with frigate LXC container on Proxmox 8.1.10, but upgraded to 8.2.2 and now the pcie is no longer working, but the usb is fine.
 
Last edited:
I seem to have this problem. Running PVE 8.2, with an Ubuntu 22.04 VM and the apex doesn't show up in the VM. Strangely when I do
Code:
sudo dpkg-reconfigure gasket-dkms
both the TPUs show up as apex devices but as soon as I reboot they're gone again.

Anyone got any tips for how to build from the KyleGospo repo for Ubuntu? This is my only hope now...
 
I seem to have this problem. Running PVE 8.2, with an Ubuntu 22.04 VM and the apex doesn't show up in the VM. Strangely when I do
Code:
sudo dpkg-reconfigure gasket-dkms
both the TPUs show up as apex devices but as soon as I reboot they're gone again.

Anyone got any tips for how to build from the KyleGospo repo for Ubuntu? This is my only hope now...

Did you try @LiloBzH step by step in the VM? They should work as Ubuntu is a Debian based distro.

yeah

apt remove gasket-dkms
apt install git
apt install devscripts
apt install dh-dkms

In HOME

git clone https://github.com/google/gasket-driver.git
cd gasket-driver/
debuild -us -uc -tc -b
cd..
dpkg -i gasket-dkms_1.0-18_all.deb

apt update && apt upgrade

if no error => reboot !
 
I seem to have this problem. Running PVE 8.2, with an Ubuntu 22.04 VM and the apex doesn't show up in the VM. Strangely when I do
Code:
sudo dpkg-reconfigure gasket-dkms
both the TPUs show up as apex devices but as soon as I reboot they're gone again.

Anyone got any tips for how to build from the KyleGospo repo for Ubuntu? This is my only hope now...
This procedure worked for me.
 
Did you mean 8.1.10 and 8.2.2? If not they are pretty old versions. Just follow @LiloBzH step by step post but replacing the git repository with https://github.com/KyleGospo/gasket-dkms.

Yes, Fixed the typo.

Went through the steps and it's working again. Thanks man..

apt remove gasket-dkms
apt install dkms lsb-release sudo git dh-dkms devscripts pve-headers
git clone https://github.com/KyleGospo/gasket-dkms
cd gasket-dkms
debuild -us -uc -tc -b
cd ..
dpkg -i gasket-dkms_1.0-18_all.deb

--

2024-04-25 19:34:27.653970380 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as pci
2024-04-25 19:34:27.656362076 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as usb
2024-04-25 19:34:27.656426461 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
2024-04-25 19:34:27.656493311 [2024-04-25 19:34:27] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
 
Last edited:
  • Like
Reactions: cray-
Yes, Fixed the typo.

Went through the steps and it's working again. Thanks man..

apt remove gasket-dkms
apt install dkms lsb-release sudo git dh-dkms devscripts pve-headers
git clone https://github.com/KyleGospo/gasket-dkms
cd gasket-dkms
debuild -us -uc -tc -b
cd ..
dpkg -i gasket-dkms_1.0-18_all.deb

--

2024-04-25 19:34:27.653970380 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as pci
2024-04-25 19:34:27.656362076 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as usb
2024-04-25 19:34:27.656426461 [2024-04-25 19:34:25] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
2024-04-25 19:34:27.656493311 [2024-04-25 19:34:27] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
Thank you for the detailed instructions. This worked for me.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!