Fedora 14, NVDIA/nouveau, and the big TV |
2011-04-03
|
A few weeks ago my root hard drive died on the media machine at home. Time to do the upgrade dance on a new drive. I jumped from Fedora 11 to Fedora 14.
Boy was I in for a surprise display-wise - it felt like it was 2001 all over again.
I connect the media machine with an NVidia GeForce 6200 card and its VGA output to the big screen TV. That worked fine before, albeit with the proprietary NVidia drivers. I don't use the DVI output because I don't have a cable.
So, the monitor preferences only show resolutions up to 1024x768, when in Fedora 11 it had no problem doing 1920x1080. I tried to fiddle with some xrandr stuff adding modelines but didn't find anything that worked well. It was a bit of a pain too; you're supposed to be able to delete modes you added, but I just got
$ xrandr --rmmode "ATSC-1080-60p"
X Error of failed request: BadAccess (attempt to access private resource denied)
Major opcode of failed request: 149 (RANDR)
Minor opcode of failed request: 17 (RRDestroyMode)
Serial number of failed request: 27
Current serial number in output stream: 28
whenever I tried.
In the end I created a little script that made testing and adjusting mode lines easier for me, like so:
export DISPLAY=:0
export MODE="ATSC-1080-60p-5"
xrandr --newmode "$MODE" 148.5 1920 2000 2056 2200 1080 1082 1088 1125
xrandr --addmode VGA-1 "$MODE"
xrandr --output VGA-1 --mode "$MODE"
I tried to install the nvidia drivers from rpmforge. Sadly the latest kernel oopses on this machine (not sure yet why), and there were no built modules for the original Fedora 14 kernel release. After I realized that all older kernels are removed from updates and can be gotten from Koji, the build system, I was on my way to reboot into a working kernel with nvidia drivers installed.
Except that those only found 640x480 and 320x240 resolutions. And adding modelines using xrandr doesn't even work there.
Remove all nvidia drivers, reboot with a nouveau driver enabled, and tinker some more. None of the lines in this MythTV modeline database for Sonys actually worked. The ones I generated with cvt or gtf where displaced way to the right.
Eventually I stumbled upon this HTPC howto with an ATSC-1080-60p modeline that almost worked - the image was just slightly to the right. So, re-reading ESR's XFree86 modeline howto (after ten years or so ?) helped me do the final adjustments. Now just to make the settings permanent.
Of course, the proper fix would just have been to plug in a DVI to HDMI cable, and rely on EDID (which I assume works). Haven't bought the cable yet though. Neither my Sony TV nor my Sony amplifier have a DVI input, and I don't know of a way to pull in digital sound through a DVI to HDMI converter.
But I do wonder why the system was able to automatically detect and go to 1920x1080 in my previous (but broken) Fedora 11 setup...
And people say that Linux is ready for consumer desktops. It’s ready for the grandmother. It’s ready for non-technical people. Rubbish.
Comment by Bob Bobson — 2011-04-03 @ 12:28
Sound over a DVI/HDMI cable works fine normally. Just adjust the output device in the volume-control applet and it works. Must be some amazing pulseaudio magic.
Just as a sidenote: VGA isn’t really a good choice for such a big display quality-wise.
Comment by Johannes — 2011-04-03 @ 12:40
@Johannes: I don’t think it’s possible to do sound over a DVI cable. DVI is display only. HDMI can carry sound, of course. So if I take the DVI output from my computer and use a HDMI converter afaik I will only get video, not audio.
And VGA looks just as crisp as DVI does on this TV I have. I expected VGA to suck as well, but I’m proven wrong.
Comment by Thomas — 2011-04-03 @ 13:06
rpmfusion’s nvidia driver packages offer an “akmod-nvidia” variant which will recompile the module at boot time if there’s a kernel version mismatch, thus ensuring you’ve always got one no matter how crazy the kernel team get with their updates.
I doubt that would help with your resolution problem (that’s very weird, that is, since it worked in 11), but I thought I should point it out.
Comment by Matt Walton — 2011-04-03 @ 15:14
http://en.wikipedia.org/wiki/Digital_Visual_Interface#HDMI_audio_support says:
“Due to electrical and pin compatibility between the DVI and HDMI, only a simple passive adapter (or DVI-D to HDMI cable) is necessary in order for the PC to output HDMI to a compatible HDMI-display (such as a television), and take advantage of HDMI features (such as audio output.)”
Comment by Debarshi Ray — 2011-04-03 @ 15:24
@Thomas: I did Audio over DVI-2-HDMI-Cable with a ATI Radeon HD3650 and it worked without problems so I guess it’s possible. HDMI uses the exact same signals as DVI apart from (optional) encrpytion.
Comment by Johannes — 2011-04-03 @ 17:54
@Johannes: OK, I’m intrigued – how does that work ? What cable did you get ? Where does the audio come from ? How does it get on the DVI cable ? Some kind of adapter from coaxial digital output ?
Comment by Thomas — 2011-04-03 @ 19:19
Hello i suggest you ask on #fedora IRC channel as lot has changed from Fedora 11 to Fedora 14…
Comment by Jay — 2011-04-03 @ 18:15
I’ve had problems with older HDTV’s not sending proper EDID’s. Not much you can do about that. Perhaps when the proprietary driver has trouble reading the EDID it just exposes every common resolution and lets the user decide.?
Comment by Leif — 2011-04-03 @ 18:59
p.s. comments don’t show up in chrome.
Comment by Leif — 2011-04-03 @ 19:00
Hey.
I have yet to find a DVI to HDMI adapter that doesn’t work ;) Personally I have a cable with DVI on one end and HDMI on the other and everything just works. You say that you have an older NVIDIA card so you probably have to connect the SPDIF output on your mother board to the SPDIF input on the graphics card. At least my 8600 GT has one. You’ll probably have to shop around for the right cable though :/
Comment by DeeJay1 — 2011-04-04 @ 04:42
@Thomas: Many modern video cards feature a digital audio unit and that’s were the audio comes from. My ATI/AMD here has it (with DVI) and the NVidia in my mediacenter also has it (though it has a HDMI connector). You simply tell pulseaudio (or alsa) to use the sound device on the video card instead of the other sound card.
To prove, this is what lspci gives me for the ATI card:
01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3600 Series
01:00.1 Audio device: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
The first line is the video card and the second is the integrated audio controller
Comment by Johannes — 2011-04-04 @ 09:15
I don’t have that in my media center, but I do have it on my desktop IIRC. For some reason I thought that only worked on HDMI though. Thanks for pointing that out, I’ll try with a DVI-HDMI converter.
Comment by Thomas — 2011-04-04 @ 11:02
Hi Thomas,
The nvidia drivers at RPMforge are no longer maintained. We recommend everyone to move to the ELRepo project for kernel modules and hardware drivers for RHEL. You will probably have more luck compiling the nvidia drivers from ELRepo on Fedora.
Comment by Dag Wieers — 2011-04-09 @ 23:52