起因

笔记本是联想的小新,CPU为Ryzen 5800H,因为工作需要,需要在Ubuntu18.04上安装AMD的驱动,不然ROS运行带GPU的功能会有问题,Gazebo仿真也会卡死崩溃。

这个问题困扰了很久,今天终于解决了,记录一下。

解决方法

0 准备Ubuntu安装U盘

防止系统起不来,可以进U盘装机系统恢复。

1 更新系统固件

到 https://mirrors.tuna.tsinghua.edu.cn/kernel/firmware/?C=M&O=D 下载最新固件,拷贝整个目录覆盖/lib/firmware目录。

拷贝固件目录前可以先备份下老的固件,以防万一。如果系统起不来进Ubuntu装机盘恢复修改。

2 拷贝amd驱动库

备份你的/usr/lib/x86_64-linux-gnu/目录,然后从百度网盘下载我打包好的amd驱动库,解压到/usr/lib/x86_64-linux-gnu/目录。(先在外部解压然后sudo拷贝过去)

这些库是从朋友的ROS2GO系统里拷贝过来的,默认适配了Ubuntu18.04下的AMD核显驱动。

链接: https://pan.baidu.com/s/1wzsW7ljPzqiDUKoHTk0jqA 提取码: 7bh5 复制这段内容后打开百度网盘手机App,操作更方便哦

3 安装5.11.16内核

参考了这篇文章: https://blog.csdn.net/qq_45113070/article/details/118363502

到mainline下载5.11.16的内核:https://kernel.ubuntu.com/mainline/v5.11.16/

下载以下文件:

linux-headers-5.11.16-051116_5.11.16-051116.202104211235_all.deb
linux-headers-5.11.16-051116-generic_5.11.16-051116.202104211235_amd64.deb
linux-image-unsigned-5.11.16-051116-generic_5.11.16-051116.202104211235_amd64.deb
linux-modules-5.11.16-051116-generic_5.11.16-051116.202104211235_amd64.deb

然后安装内核:

sudo dpkg -i *.deb

安装完成后重启。

如果成功了,打开设置里面的关于,可以看到Graphics显示为Renoir而不是之前的llvmpipe。

4 如果不成功

回退之前的覆盖操作,重新启动,然后尝试之前能用的其他内核版本。