Imx519_kernel_driver on Raspberry Pi Bullseye reports unsupported kernel version 5.15.74-v8+

Hi all, hoping someone can help. I’ve got an IMX519 camera that I’m trying to get working on my Pi, but I keep getting an error when running the install script. Can we have updated drivers please? The install just keeps telling me my kernel is unsupported and won’t go any further. Not really sure what I’m doing wrong here.

Hey, happy to dig into this with you. Can you paste the output you’re seeing? The exact error message plus a bit of your environment would help, specifically:

  • Hardware revision (from cat /proc/cpuinfo | grep Revision)
  • Kernel version (uname -a)
  • The driver package/version you’re trying to install

That should tell us pretty quickly what’s going on.

Sure, here’s what I’ve got:

Hardware Revision: d03115
Kernel Version: 5.15.74-v8+
Package: imx519_kernel_driver – bullseye-arm64-v5

And when I run the install it prints this:

You are using an unsupported kernel version, please install the official SD Card image(do not execute rpi-update)

Thanks, that’s exactly what I needed. That error is coming straight from the driver install script, and it’s triggered because of the kernel you’re on.

Your kernel is 5.15.74-v8+. That -v8+ suffix is the giveaway — it means you’re running a kernel that didn’t come from the official Raspberry Pi OS image. Most of the time this happens when rpi-update has been run at some point, which pulls in a newer/unsupported kernel that the prebuilt driver modules weren’t compiled against.

Two things to sort out here: get back onto a supported kernel, and then install the latest driver. Are you able to check whether you (or a tutorial you followed) ran rpi-update? Also, what does uname -r and the contents of /boot/config.txt’s camera-related lines look like?

Ah, that might be it. I did follow an older guide that told me to run rpi-update to get the camera working. I didn’t realise that was the problem.

uname -r gives me: 5.15.74-v8+

For config.txt I’ve got these lines added:

dtoverlay=imx519
camera_auto_detect=0

I’m not sure if those are right either.

One more thing — I also notice the driver package I was using (bullseye-arm64-v5) seems a bit old compared to what’s mentioned in the docs. Is there a newer one I should be on?

Yes, good catch — there is a newer driver release. A new version of the imx519 driver was released recently (the bullseye-arm64-v5 package you’re on is the older one). But before we touch that, let’s fix the kernel, because the driver install will keep refusing until the kernel is supported.

The problem is your current kernel (5.15.74-v8+) is simply not one the driver supports. Since it came from rpi-update, the cleanest fix is to reflash with the official Raspberry Pi OS image rather than trying to walk the kernel back manually:

Use one of the official images there. Do NOT run rpi-update on it — that’s the whole reason you ended up on an unsupported kernel in the first place. Once you’re booted on the stock kernel from the official image, come back and we’ll get the fresh driver installed.

OK so I reflashed with the official Raspberry Pi OS (bullseye) image from that link and I did NOT run rpi-update this time. Now uname -r shows:

5.15.84-v8+

I kept my dtoverlay=imx519 and camera_auto_detect=0 lines. Should I now install the newer driver package? And do I need to worry about the kernel version again?

That looks much better — and see how the kernel changed on its own now that you’re on the official image? That’s the supported kernel, so the driver should install cleanly.

Please reinstall the driver again, using the latest released version (the newest one went out just recently — that’s the updated imx519_kernel_driver rather than the older bullseye-arm64-v5 package you had). The install script will pick the correct modules for your kernel this time.

After it finishes, reboot, then check that the camera is detected with:

libcamera-hello --list-cameras

Paste the output here and we’ll confirm everything’s talking.

Ran the install with the latest driver and rebooted. libcamera-hello --list-cameras now shows:

Available cameras
0 : imx519 [4656x3496] (/base/soc/i2c0mux/i2c@1/imx519@1a)

So it’s finally detecting. Tested a still capture and it worked. Thanks for the help — the rpi-update thing was clearly the root cause.

Nice one, that output is exactly what we want to see. Quick recap for anyone finding this thread later:

  • Root cause: the kernel was 5.15.74-v8+, which is an unsupported kernel — almost always the result of running rpi-update. On top of that, the driver package in use (bullseye-arm64-v5) was an older release.
  • Fix: install the official Raspberry Pi OS image (do not run rpi-update, so you stay on a supported kernel), then reinstall the latest released imx519_kernel_driver.
  • Verify with libcamera-hello --list-cameras — the imx519 should show up under the i2c0mux bus.

Short version of the error message you’ll see if you skip the kernel step: “You are using an unsupported kernel version, please install the official SD Card image (do not execute rpi-update).” If you hit that, sort the kernel first, then grab the newest driver. Glad it’s up and running!