https://bugzilla.kernel.org/show_bug.cgi?id=212279
Bug ID: 212279 Summary: AMDGPU doesn’t expose any way of setting the full RGB range [ryzen+ mobile] Product: Drivers Version: 2.5 Kernel Version: all Hardware: All OS: Linux Tree: Mainline Status: NEW Severity: enhancement Priority: P1 Component: Video(DRI - non Intel) Assignee: drivers_video-dri@kernel-bugs.osdl.org Reporter: ledufff@hotmail.com Regression: No
Hello, I'd like to address that there's no way to set full RGB range to HDMI for my Thinkpad E495 (AMD Ryzen 5 3500U). I tried editing the edid.bin with wxedid but had no luck.
Is there a plan to enable this in the near future?.
Thanks.
https://bugzilla.kernel.org/show_bug.cgi?id=212279
Alex Deucher (alexdeucher@gmail.com) changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |alexdeucher@gmail.com
--- Comment #1 from Alex Deucher (alexdeucher@gmail.com) --- IIRC, the driver sets full or limited range automatically based on the EDID.
https://bugzilla.kernel.org/show_bug.cgi?id=212279
--- Comment #2 from Neil (ledufff@hotmail.com) --- Created attachment 295873 --> https://bugzilla.kernel.org/attachment.cgi?id=295873&action=edit edid-decode
Here is the edid file for my TV (works full rgb range with windows 10) I will try to edit the file with wxEDID now, but, it would be less tedious if it were automatic as you say.
https://bugzilla.kernel.org/show_bug.cgi?id=212279
--- Comment #3 from Neil (ledufff@hotmail.com) --- Created attachment 295875 --> https://bugzilla.kernel.org/attachment.cgi?id=295875&action=edit edited edid with wxedid
Got it! I failed at editing the file first because it was a 0 byte file (didn't had my TV connected lol!) So. I followed this video https://www.youtube.com/watch?v=tYYMiX7dlak And basically did the following in my debian sid partition (I will describe it for anyone interested):
To find my TV edid $ find /sys/devices/pci*/ -name edid Grab/copy the desired edid file to my home folder $ cp /sys/devices/pci0000:00/0000:00:08.1/0000:05:00.0/drm/card0/card0-HDMI-A-1/edid ~/edid.bin
Then edited that file with wxedid to change the following: SPF: Supported features = vsig_format to 0b00 CHD: CEA-861 header = YCbCr 4:2:2 to 0 CHD: CEA-861 header = YCbCr 4:4:4 to 0 VSD: Vendor Specific Data Block = DC_Y444 to 0
Then before saving the file I clicked Options > Recalc checksum (otherwise the system will not use your edited edid!), after that I did saved the file, and copied that new modified edid file to /lib/firmware/edid/edid.bin To use the new edid, I added 'drm_kms_helper.edid_firmware=HDMI-A-1:edid/edid.bin' to /etc/default/grub (to the line GRUB_CMDLINE_LINUX="foo") updated initramfs with 'sudo update-initramfs -u' and then updated grub as well with 'sudo update-grub'.
Note: I compiled the latest wxedid from sourceforge, and, 'options > recalc checksum' option is MISSING at least for me. That's why the process was failing for me. Luckily for me debian has a wxedid in their repo that has the recalc checksum option.
Now... bit of work ain't it? I don't know if this happens because of my TV, I haven't tried with other monitors/televisions. But a bit of improvement in the matter would be GREAT.
dri-devel@lists.freedesktop.org