我可以在 Raspberry Pi 4b 上的 Ubuntu 22.04 上运行高于 5.15 的内核吗?

我可以在 Raspberry Pi 4b 上的 Ubuntu 22.04 上运行高于 5.15 的内核吗?

我有一台运行 Ubuntu 22.04 服务器(内核 5.15)的 Raspberry Pi 4b 4GB,我在其上运行 ROS2 Humble 进行机器人技术开发(需要 22.04)。我最近买了一个 Raspberry Pi 相机模块 3 作为我的机器人的相机,但它在这个操作系统上无法正常工作。我通过运行 Raspbian 验证了这个硬件组合,相机运行正常。

这个 GitHub 问题我尝试弄清楚如何让它工作,并被告知我运行的内核不包含 Sony IMX758 传感器所需的驱动程序。我被告知较新的内核版本可能会解决我的问题并内置驱动程序。

到目前为止,我一直在复制树莓派/LinuxUbuntu 提供的 linux-raspi 内核在树枝上applied/ubuntu/jammy-updates 5.15.0-1035.38(已应用补丁)。这只起到了部分作用,最终并没有启用相机。

我可以使用 ubuntu 22.04 (jammy) 运行高于 5.15 的内核吗?我注意到 Ubuntu rpi-kernel repo 中有一个 6.2.X 内核,标记为 mantic (23.10) 和 lunar (23.04)。如果是这样,我是否从树莓派/Linux(它有 6.1y 分支,我想我必须重新编译,或者 Ubuntu 的linux-raspi 内核,哪一个选择更好?

据我所知,内核适用于任何发行版特定的定制,所以理论上我可以简单地从树莓派/Linux并将 .deb 补丁应用到 Ubuntu?

如果有人能就下一步行动提出建议,那就太好了。我的链接中有错误日志GitHub 问题以及更多诊断。

答案1

我可以通过安装软件包将内核更新到 6.2.0-1004-raspiLinux-镜像-6.2.0-1004-raspi使用 apt。这会使用预编译的图像更新我的内核。

我可以通过将 Ubuntu lunar 源添加到 来访问此包/etc/apt/sources-list。我添加了以下几行:

# adding this to get the new 6.2.x kernel from lunar
deb http://ports.ubuntu.com/ubuntu-ports lunar main restricted
deb http://ports.ubuntu.com/ubuntu-ports lunar-updates main restricted
deb http://ports.ubuntu.com/ubuntu-ports lunar universe
deb http://ports.ubuntu.com/ubuntu-ports lunar-updates universe
deb http://ports.ubuntu.com/ubuntu-ports lunar multiverse
deb http://ports.ubuntu.com/ubuntu-ports lunar-updates multiverse
deb http://ports.ubuntu.com/ubuntu-ports lunar-backports main restricted 
universe multiverse
deb http://ports.ubuntu.com/ubuntu-ports lunar-security main restricted
deb http://ports.ubuntu.com/ubuntu-ports lunar-security universe
deb http://ports.ubuntu.com/ubuntu-ports lunar-security multiverse

然后我只需执行sudo apt updatesudo apt install linux-image-6.2.0-1004-raspi并在安装完成后重新启动。

atticus@rospi:~  
$ uname -a
Linux rospi 6.2.0-1004-raspi #5-Ubuntu SMP PREEMPT Mon Apr  3 11:15:14 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux

更新的内核并没有解决我想要修复的问题,因为我的 Raspberry Pi 相机模块 3 仍然无法在这个 Ubuntu 安装上运行,尽管存在正确的驱动程序,但我将创建一个关于该问题的新帖子。

atticus@rospi:~  
$ libcamera-hello 
Preview window unavailable
[0:13:33.922153143] [5185]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+19-960d0c1e
[0:13:33.961853643] [5186] ERROR V4L2 v4l2_device.cpp:93 'imx708': Failed to open V4L2 device '': No such file or directory
[0:13:33.961984865] [5186] ERROR RPI vc4.cpp:209 Failed to register camera imx708: -22
ERROR: *** no cameras available ***

相关内容