Bug 108997

Summary: RX460: Some Resolution-Refresh Combinations Unavailable when Connected via DisplayPort
Product: DRI Reporter: Mingcong Bai <jeffbai>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED MOVED QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
EDID Dump (from Xorg.0.log)
none
Kernel Configuration - 4.19.0 none

Description Mingcong Bai 2018-12-09 23:38:34 UTC
- Xorg Server version: 1.20.3
- XRandR version: 1.5.0
- Xf86-Video-AMDGPU version: 18.0.1
- Kernel parameters: root=UUID=dfd3d587-145e-4c01-af04-a3e24c59e95c rw quiet rw rd.auto rd.auto=1 splash vfio-pci.ids=10de:1c03,1022:145f,1022:1457 modprobe.blacklist=nouveau iommu=pt amd_iommu=on kvm-amd.avic=1 kvm-amd.nested=1 clocksource=tsc kvm.ignore_msrs=1 pcie_acs_override=multifunction rd.driver.pre=vfio-pci video=efifb:off

--------

Xorg.conf:

Section "Device"
	Identifier	"Device 0"
	Driver		"amdgpu"
	VendorName	"Advanced Micro Devices, Inc."
	BusID		"PCI:34:0:0"
	Option		"IgnoreEDID"		"true"
	Option		"UseEDID"		"false"
EndSection

Section "Monitor"
	Identifier	"Monitor 0"
	VendorName	"SAMSUNG"
	ModelName	"900SL"
	Option		"UseEDID"	"false"
	Option		"UseEDIDFreqs"	"false"
	Option		"DDC"		"false"
	HorizSync	30.0 - 96.0
	VertRefresh	50.0 - 100.0
	Modeline	"1600x1200_76.00"  207.50  1600 1720 1888 2176  1200 1203 1207 1256 -hsync +vsync
       Option		"PreferredMode" "1600x1200_76.00"
EndSection

--------

While connecting my XFX Radeon RX460 Slim to a Samsung 900SL CRT monitor via a DisplayPort to VGA converter cable, 1600x1200@76Hz is not available, despite the factory specs...

1600 x 1200 / 76 Hz
1600 x 1200 / 70 Hz
1600 x 1200 / 65 Hz
1280 x 1024 / 89 Hz
1024 x 768 / 119 Hz
800 x 600 / 152 Hz
640 x 480 / 160 Hz 

When attempting to create a new custom mode...

mingcongbai@NetVista [ / ] $ cvt 1600 1200 76
# 1600x1200 75.92 Hz (CVT) hsync: 95.36 kHz; pclk: 207.50 MHz
Modeline "1600x1200_76.00"  207.50  1600 1720 1888 2176  1200 1203 1207 1256 -hsync +vsync

mingcongbai@NetVista [ / ] $ xrandr --newmode "1600x1200_76.00"  207.50  1600 1720 1888 2176  1200 1203 1207 1256 -hsync +vsync

mingcongbai@NetVista [ / ] $ xrandr --addmode DisplayPort-0 "1600x1200_76.00"

mingcongbai@NetVista [ / ] $ xrandr --output DisplayPort-0 --mode "1600x1200_76.00"
xrandr: Configure crtc 0 failed

I have an NVIDIA GeForce GTX1060 passed through to a Windows 10 VM, connected via a DisplayPort to VGA, and VGA to BNC 5-pin connector, in this case, 1600x1200 is available and displays a correct image.

I have also tried to connect the RX460 with the DP-VGA-BNC cable, which yielded the same result.
Comment 1 Mingcong Bai 2018-12-09 23:55:28 UTC
I'm able to get the full 1600x1200@76Hz image with an active HDMI to VGA adapter. The image is a bit ghosted, but it's probably just the converter.
Comment 2 Mingcong Bai 2018-12-10 00:15:20 UTC
Created attachment 142766 [details]
EDID Dump (from Xorg.0.log)
Comment 3 Mingcong Bai 2018-12-10 00:16:04 UTC
The EDID data (obtained from Xorg.0.log output and attached above) also suggests that such mode is possible (unless I misunderstood something).

mingcongbai@NetVista [ / ] $ cat edid.bin | edid-decode 
EDID version: 1.2
Manufacturer: SAM Model 4db9 Serial Number 1346842937
Analog display, Input voltage level: 0.7/0.3 V
Sync: Separate Composite SyncOnGreen Serration 
Maximum image size: 36 cm x 27 cm
Gamma: 2.28
DPMS levels: Standby Suspend Off
RGB color display
First detailed timing is preferred timing
Supports GTF timings within operating range
Display x,y Chromaticity:
  Red:   0.6376, 0.3251
  Green: 0.2763, 0.5957
  Blue:  0.1425, 0.0664
  White: 0.2832, 0.2978
Established timings supported:
  720x400@70Hz 9:5 HorFreq: 31469 Hz Clock: 28.320 MHz
  720x400@88Hz 9:5 HorFreq: 39500 Hz Clock: 35.500 MHz
  640x480@60Hz 4:3 HorFreq: 31469 Hz Clock: 25.175 MHz
  640x480@67Hz 4:3 HorFreq: 35000 Hz Clock: 30.240 MHz
  640x480@72Hz 4:3 HorFreq: 37900 Hz Clock: 31.500 MHz
  640x480@75Hz 4:3 HorFreq: 37500 Hz Clock: 31.500 MHz
  800x600@56Hz 4:3 HorFreq: 35200 Hz Clock: 36.000 MHz
  800x600@60Hz 4:3 HorFreq: 37900 Hz Clock: 40.000 MHz
  800x600@72Hz 4:3 HorFreq: 48100 Hz Clock: 50.000 MHz
  800x600@75Hz 4:3 HorFreq: 46900 Hz Clock: 49.500 MHz
  832x624@75Hz 4:3 HorFreq: 49726 Hz Clock: 57.284 MHz
  1280x768i@87Hz 5:3 HorFreq: 35522 Hz Clock: 44.900 MHz
  1024x768@60Hz 4:3 HorFreq: 48400 Hz Clock: 65.000 MHz
  1024x768@70Hz 4:3 HorFreq: 56500 Hz Clock: 75.000 MHz
  1024x768@75Hz 4:3 HorFreq: 60000 Hz Clock: 78.750 MHz
  1280x1024@75Hz 5:4 HorFreq: 80000 Hz Clock: 135.000 MHz
  1152x870@75Hz 192:145 HorFreq: 67500 Hz Clock: 108.000 MHz
Standard timings supported:
  640x480@85Hz 4:3 HorFreq: 43300 Hz Clock: 36.000 MHz
  800x600@85Hz 4:3 HorFreq: 53700 Hz Clock: 56.250 MHz
  1024x768@85Hz 4:3 HorFreq: 68700 Hz Clock: 94.500 MHz
  1280x1024@85Hz 5:4 HorFreq: 91100 Hz Clock: 157.500 MHz
  1600x1200@75Hz 4:3 HorFreq: 93800 Hz Clock: 202.500 MHz
  1024x768@100Hz 4:3
Detailed mode: Clock 157.500 MHz, 352 mm x 264 mm
               1280 1344 1504 1728 hborder 0
               1024 1025 1028 1072 vborder 0
               +hsync +vsync 
               VertFreq: 85 Hz, HorFreq: 91145 Hz
Monitor ranges (GTF): 50-160Hz V, 30-96kHz H, max dotclock 210MHz
Monitor name: S/M 900SL
Serial number: H3NN105750
Checksum: 0xe0 (valid)
Comment 4 Mingcong Bai 2018-12-10 02:21:48 UTC
Using the same cable, the NVIDIA GeForce GTX1060 using proprietary driver version 410.66 is able to drive 1600x1200@76Hz with no issue.
Comment 5 Mingcong Bai 2018-12-10 02:27:56 UTC
Created attachment 142767 [details]
Kernel Configuration - 4.19.0
Comment 6 Martin Peres 2019-11-19 09:07:49 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/drm/amd/issues/639.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.