lspci 给出的结果
1002 是 ATI 的
1028 是 Dell 的
确实是 DELL 专门定制的型号
不是慢慢卡死,系统是新装的,Firefox 没加扩展。
搜了一下 AMDGPU 支持的显卡,有 R7 240 没有 R5 的,不敢强上啊
sudo hwinfo --gfxcard
[sudo] root 的密码:
13: PCI 100.0: 0300 VGA compatible controller (VGA)
[Created at pci.386]
Unique ID: VCu0.C3JT4o6UEgB
Parent ID: vSkL.Gb_I9tRl5S4
SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.0
SysFS BusID: 0000:01:00.0
Hardware Class: graphics card
Model: “Dell Radeon R5 240 OEM”
Vendor: pci 0x1002 “ATI Technologies Inc”
Device: pci 0x6611 “Oland [Radeon HD 8570 / R7 240/340 / Radeon 520 OEM]”
SubVendor: pci 0x1028 “Dell”
SubDevice: pci 0x210b “Radeon R5 240 OEM”
Driver: “radeon”
Driver Modules: “radeon”
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
Memory Range: 0xf7e00000-0xf7e3ffff (rw,non-prefetchable)
I/O Ports: 0xe000-0xefff (rw)
Memory Range: 0x000c0000-0x000dffff (rw,non-prefetchable,disabled)
IRQ: 30 (2679 events)
Module Alias: “pci:v00001002d00006611sv00001028sd0000210Bbc03sc00i00”
Driver Info #0:
Driver Status: radeon is active
Driver Activation Cmd: “modprobe radeon”
Driver Info #1:
Driver Status: amdgpu is active
Driver Activation Cmd: “modprobe amdgpu”
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #11 (PCI bridge)
Primary display adapter: #13
以上的信息是不是表示
显卡现在用的是 radeon 驱动,
系统装了两种驱动,一是 radeon、另一是 amdgpu。
要用 redeon,运行 modprobe radeon
换用 amdgpu,运行 modprobe amdgpu
是这个意思吗?
两个命令都运行过,没有回应。
如果想换成 amdgpu 驱动,要怎么处理?
修改文件/etc/modprobe.d/50-blacklist.conf
,添加一行
blacklist radeon
最好还是不要用 amdgpu…只是用另一个问题替代另一问题…OLand 系列还是在 /etc/modprobe.d/radeon.conf 里
options radeon vce=0
把 VCE 禁了应该就行了…
在文件最后一行加入 blacklist radeon,重启后,
还是显示:
wuxinxin@localhost:~> sudo lspci -k | grep -EA3 ‘VGA|3D|Display’
[sudo] root 的密码:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Oland XT [Radeon HD 8670 / R7 250/350] (rev 83)
Subsystem: Dell Device 0083
Kernel driver in use: radeon
Kernel modules: radeon, amdgpu
看来是没有效果
生命在于折腾
/etc/modprobe.d/目录下没有找到 radeon.conf 这个文件。
wuxinxin@localhost:/etc/modprobe.d> cat radeon.conf
options radeon vce=0
重启后,还是显示
Kernel driver in use: radeon
Kernel modules: radeon, amdgpu
没有生效。
参考搜到的资料
/etc/modprobe.d/amdgpu.conf
options amdgpu si_support=1
options amdgpu cik_support=1
/etc/modprobe.d/radeon.conf
options radeon si_support=0
options radeon cik_support=0
重启也不见效
中提到
I was able to change the driver to amdgpu .
I changed my kernel parameters (/boot/syslinux/syslinux.cfg).
However, amdgpu doesn’t provide VCE and UVD support for my GPU. So, I am gonna revert back to the radeon driver and hope that the VCE bug gets fixed.
虽然该链接中的作者最终又从 amdgpu 改回 radeon(站长上面就说过的,两个都不是什么好东西)
我还是想试试每一种可能。
openSUSE 没有相对应的文件,如何修改 kernel parameters 来达到换用 amdgpu 的目的?
YaST 的内核设置好像可以改,选 pci 设备然后填驱动,重启生效。
在 openSUSE 的 Wiki 上找到介绍
试一试再说
你这不已经生效了,用 radeon 禁 vce…
误会了,我现在是想将 radeon 改成 amdgpu,虽然前面你已经提示过这两个都不好用,我还是想折腾一下试一试,牛角尖里出不来了。HE HE
这东西的核心就是 R7 250 同款。(理论上讲,BIOS 弄一下,应该可以超到 250)
我当初想买,后来买了 240。
打算开核成 250。
然后开核失败挂掉了……
现在在用开核后的 RX550。
我感觉你的显卡是驱动有问题。
这个卡显然是该用 AMDGPU 驱动的。
因为我最多就是 Firefox 卡死。
缓过来 Firefox 可以接着用。
或者直接杀掉 Firefox 重开就行了。
不如说,稍微有点姿势都会知道,amd 搞开核,七搞八搞,是常识。
搞完之后驱动就不工作了?
显卡就不用了?
win 下还能改驱动签名,自适应新增加的计算单元。
Linux 下就直接不能?
稍微有点常识都会知道这是不可能的啦。
每切出一个新型号,驱动工程师就要重写一遍驱动?
怎么可能嘛,当然是检测计算单元自动适配啦。
Vbios 才几百 KB,不可能搞很复杂的东西。
最多就是设置 FLAG,配置显存,其实的交给驱动。
就这么简单。
相对应的,除开 OEM 的 PCB 有问题之外,还有核心设计时弄出的问题,这一般会让整个家族的显卡都会有问题(比如直通 AMD 显卡时会有个重置不了的问题,RDNA2 之前都有这个问题)。
最后就是,除开 VEGA,RDNA(1/2)确实改动比较多,amd 这几年的显卡,不是换马甲就是在换工艺重置,核心根本就没有变过,这能有个锤子通用性的问题……
如果能有很多变化,amd 的显卡这几年就不会这么拉了……
/etc/modprobe.d/radeon.conf 里添加
options radeon vce=0
禁用 VCE。
结合网络上搜到的信息,这个方法应该可以消除启动过程中的
出错提示:
Radeon 0000:01:00.0:failed VCE resume (-110)
并且运行:
systool -vm radeon
会看到 VCE 参数变化。
经过验证,以上提到的两个结果都没有出现。
并且 Firefox 还是会卡死,所以放弃这个办法。
确实是 radeon 驱动和 Firefox 不合的问题,
不过我的 Firefox 一旦卡死就缓不过来了,也没办法直接杀掉,反而等久了连系统都卡死。
只能到 tty 下去重启系统。
在众人的热心帮助下,解决了这个问题,总结一下两个月来的收获。
AMD Radeon R5 240(1002:6611)
AMD Radeon R5 340X(1002:6610)
这两张显卡在 Firefox 经常卡死的原因是驱动 radeon 和 Firefox 不合。
解决方法:
一、最土豪的办法是买张新的高端显卡;
二、最鸵鸟的办法是不再用 Firefox;
三、最容易的办法是拔掉鸡肋显卡,改用主板集成;
四、最最容易的办法是禁用驱动 radeon 改用驱动 amdgpu。
YaST->引导加载器->内核参数->可选内核命令行参数
加入
amdgpu.si_support=1 radeon.si_support=0