[心得] 让 AMDGPU 当 amdgpu.dc=1 时输出 RGB 格式的方法

楼主: s9209122222 (海海海)   2018-04-13 16:00:28
由于 AMD 目前貌似没办法使用 xrandr 切换成 RGB 输出,
所以 AMD 默认一律是使用 YCbCr444 作为输出格式,
今天终于在网络上找到了解决方法,所以用 PTT 当作备份,
防止以后忘记怎么做。
1. 找到 edid 档的路径并复制到家目录
sudo find /sys/devices/pci*/*/*/*/*/*HDMI* -name "*edid*"
2. 从 SourceForge 下载 wxEDID 并安装(要确保有装 wxgtk2)
3. 用 wxEDID 编辑刚刚复制的档案,并编辑以下选项
(1)SPF: Supported features -> vsig_format -> 把 0b01 变成 0b00
(2)CHD: CEA-861 header -> 把 YCbCr420 和 YCbCr444 设成 0
(3)VSD: Vendor Specific Data Block -> 将 DC_Y444 设成 0
4. 选择面板上的 Option -> Recalc Checksum
5. 储存
6. 将编辑完的档案移动到 /lib/firmware/edid/edid.bin
edid 这个资料夹要自己创
7. 编辑 /etc/default/grub
在开机选项后方加上 drm_kms_helper.edid_firmware=edid/edid.bin,像这样:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amdgpu.dc=1 drm_kms_helper.edid_firmware=edid/edid.bin"
8. sudo grub-mkconfig -o /boot/grub/grub.cfg
9. 重开机
作者: ddtsatan   2018-04-13 22:28:00
作者: rexsony (雷克斯索尼)   2018-04-15 14:18:00
作者: holishing   2018-04-16 01:43:00
纯推分享

Links booklink

Contact Us: admin [ a t ] ucptt.com