DisplayPort support for Nouveau
Summary
Enhanced support for DisplayPort in X and kernel drivers for NVIDIA hardware.
Owner
- Name: Ben Skeggs
- email: bskeggs@redhat.com
Current status
- Targeted release: Fedora 13
- Last updated: 2010-02-23
- Percentage of completion: 80%
Rawhide has the initial support for NVIDIA DisplayPort available in the nouveau kernel module. There's a serious limitation in the current code: it's not able to configure displays that weren't previously configured by the video BIOS, the reasons for this are known but a solution isn't yet available.
To date it's known to have been tested on:
NV96 + Dell 2408WFP NV96 + DP->VGA adaptor + Samsung 930B MacBook Pro with GeForce 9400 + DP->VGA adaptor + Samsung 930B
On the above configurations the displays operate as expected with the limitation mentioned above.
DisplayPort -> DVI connections should work as well as native DVI, and are not subject to the limitation mentioned above.
Detailed Description
DisplayPort is a new digital display connector and protocol. While much more capable than DVI, it's also much more complicated, and some work is needed to take advantage of it.
Benefit to Fedora
DisplayPort has a higher link bandwidth than dual-link DVI. Monitors can take advantage of this by providing higher resolutions, higher color depths, and higher refresh rates. DisplayPort also runs at a lower voltage than DVI and LVDS, using less power. Future laptops will likely switch to embedded DisplayPort for the local panel for this reason. With this feature, Fedora users can take advantage of the the technical superiority of DisplayPort.
Scope
Every device with a DisplayPort PHY will almost certainly need driver work to enable it. At the moment this includes the big three of intel, radeon, and nouveau. This feature only covers the nouveau driver. See the Intel DisplayPort feature and the Radeon DisplayPort feature for the other two. Some DisplayPort functionality will likely be common among all devices and can be lifted to helper routines in the X server or drm core.
Affected packages:
- kernel
- xorg-x11-server
- xorg-x11-drv-nouveau
How To Test
Test hardware with display port sources by connecting to a DisplayPort sink, DP-to-HDMI converter, DP-to-DVI converter, and DP-to-VGA converter. For each of these cases, also test hotplug switching. When laptops start showing up with embedded DisplayPort support, test the internal laptop screen.
Known DP sinks:
- Apple: 24" LED
- Dell: 2408WFP, 3008WFP
- HP: LP2275w, LP2480zx
User Experience
DisplayPort connections should Just Work.
Dependencies
DisplayPort sinks with EDID are required to support EDID 1.4. This is landed.
eDP sinks may use DisplayID instead. X implements a DisplayID decode but no fetch mechanism. But we don't have any eDP devices to test with yet, so who knows.
Possible common functionality: link/lane computation, manual link training, dongle identification, various other AUXCH services.
Some IHV communication may be necessary to get details on specific DP PHYs.
Contingency Plan
None necessary. It doesn't work in previous Fedora releases, so it can continue to not work in F13.
Documentation
Ideally, none needed, besides "DisplayPort just works now". It's not like we have documentation for DVI.
Release Notes
DisplayPort is likely to require kernel support in a much stronger way than DVI, since hotplugging the monitor requires another link training cycle, and the only reliable way to detect that is with interrupts. UMS configurations may accidentally work in some situations, but this is not recommended.