LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   How do I force activation of TVOUT on Nvidia Geforce 8400GS? (https://www.linuxquestions.org/questions/linux-hardware-18/how-do-i-force-activation-of-tvout-on-nvidia-geforce-8400gs-618644/)

jsstevenson 02-04-2008 02:42 PM

How do I force activation of TVOUT on Nvidia Geforce 8400GS?
 
Hello...

I am having problems getting TVOUT to function using a Nvidia Geforce 8400GS POV card via the S-Video output on it!

If the computer is off and the SVideo is connected to the TV and I then switch on the computer, the VGA monitor does not start but remains in standby and the boot screen and splash screen and progress bar appears on the TV, so from this I know that the card is capable of pushing a signal through the s-video.

The problem is if I switch on computer and then connect SVideo to the computer once the BIOS splash has appeared, system starts as expected but I cannot produce an output on the TV.

I have edited xorg.conf and done plenty of research but to no avail!

I can test if the TV is acting as a display by typing xterm -display :0.1 purely to see if screen exists, which it never does! I simply get "xterm Xt error: Can't open display: :0.1" back!

I have examined the xorg log file and have concluded the problem is originating from the card attempting to obtain EDID information - that is, because it can't get info from TV it simply abandons the attempt to send a signal to the TV. This appears to be the key moment (from the xorg log) when it abandons the TV connection:

Quote:

(II) NVIDIA(1): Creating default Display subsection in Screen section
"Screen1" for depth/fbbpp 24/32
(==) NVIDIA(1): Depth 24, (==) framebuffer bpp 32
(==) NVIDIA(1): RGB weight 888
(==) NVIDIA(1): Default visual is TrueColor
(==) NVIDIA(1): Using gamma correction (1.0, 1.0, 1.0)
(**) NVIDIA(1): Option "TVStandard" "PAL-I"
(**) NVIDIA(1): Option "TVOutFormat" "SVIDEO"
(**) NVIDIA(1): Enabling RENDER acceleration
(**) NVIDIA(1): Forcing SVIDEO output
(**) NVIDIA(1): TV Standard string: "PAL-I"
(II) NVIDIA(1): NVIDIA GPU GeForce 8400 GS (G86) at PCI:1:0:0 (GPU-0)
(--) NVIDIA(1): Memory: 524288 kBytes
(--) NVIDIA(1): VideoBIOS: 60.86.4a.00.75
(II) NVIDIA(1): Detected PCI Express Link width: 16X
(--) NVIDIA(1): Interlaced video modes are supported on this GPU
(--) NVIDIA(1): Connected display device(s) on GeForce 8400 GS at PCI:1:0:0:
(--) NVIDIA(1): HP L1940T (CRT-1)
(--) NVIDIA(1): NVIDIA TV Encoder (TV-0)
(--) NVIDIA(1): HP L1940T (CRT-1): 400.0 MHz maximum pixel clock
(--) NVIDIA(1): NVIDIA TV Encoder (TV-0): 400.0 MHz maximum pixel clock
(--) NVIDIA(1): TV encoder: NVIDIA
(II) NVIDIA(1): Assigned Display Device: TV-0
(==) NVIDIA(1):
(==) NVIDIA(1): No modes were requested; the default mode "nvidia-auto-select"
(==) NVIDIA(1): will be used as the requested mode.
(==) NVIDIA(1):
(EE) NVIDIA(1): The requested configuration of display devices (TV-0) in
(EE) NVIDIA(1): MetaMode "nvidia-auto-select" is not supported on this
(EE) NVIDIA(1): GPU; none is recommended, instead.
(WW) NVIDIA(1):
(WW) NVIDIA(1): Unable to validate any modes; falling back to the default mode
(WW) NVIDIA(1): "nvidia-auto-select".
(WW) NVIDIA(1):
(EE) NVIDIA(1): The requested configuration of display devices (TV-0) in
(EE) NVIDIA(1): MetaMode "nvidia-auto-select" is not supported on this
(EE) NVIDIA(1): GPU; none is recommended, instead.
(EE) NVIDIA(1): Unable to use default mode "nvidia-auto-select".
(II) UnloadModule: "nvidia"
(II) UnloadModule: "wfb"
(II) UnloadModule: "fb"
What I want is to be able to force the card to send a signal to the TV regardless of its objections!! Does anyone have any ideas how this can be done?

Here is my xorg.conf - if you see anything wrong in here let me know, but as far as I can see, it should be working!

Code:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder3)  Fri Jan 11 15:05:59 PST 2008

# Xorg configuration created by pyxf86config

Section "ServerLayout"
    Identifier    "Default Layout"
    Screen      0  "Screen0" 0 0
        Screen        1        "Screen1" RightOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
EndSection

Section "Module"
    Load          "glx"
EndSection

Section "InputDevice"
    # generated from default
    Identifier    "Mouse0"
    Driver        "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "Emulate3Buttons" "no"
    Option        "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    Identifier    "Keyboard0"
    Driver        "kbd"
    Option        "XkbModel" "pc105"
    Option        "XkbLayout" "gb"
EndSection
       
Section "Monitor"
            Identifier    "Monitor0"
            VendorName    "HP"
            ModelName      "L1940T"
            HorizSync      30.0 - 110.0
            VertRefresh    50.0 - 150.0
            Option        "DPMS"
EndSection

Section "Monitor"
        Identifier        "Television"
        Option                "DPMS"
#        Horizsync      30-50
#        Vertrefresh    60
#        DisplaySize    799 509
#        Option          "Metamodes" "1024x768_50" "800x600_50" "704x480_50" "640x480_50" "640x400_50"
EndSection

Section "Device"
            Identifier    "VGA_Geforce"
            Driver        "nvidia"
        BusID                "PCI:1:0:0"
        Screen                0
#        Option                "UseEdid" "False"
#        Option                "ConnectedMonitor" "CRT-1"
EndSection

Section "Device"
        Identifier        "SVideo_Geforce"
        Driver                "nvidia"
        BUSID                "PCI:1:0:0"
        Screen                1
        Option                "TVStandard" "PAL-I"
        Option                "TVOutFormat" "SVIDEO"

#        Option                "TVOutFormat" "Composite"
#        Option                "TVOutFormat" "Scart"
#        Option                "TVOutFormat" "Component"
#        Option                "TVOutFormat" "AutoSelect"
#        Option                "TVOverScan" "0.6"
#        Option                "ConnectedMonitor" "CRT-1,TV-0"
#        Option                "UseEdid" "False"
#        Option                "ModeValidation" "TV: NoEdidModes, NoMaxPClkCheck, NoVesaModes"

EndSection

Section "Screen"
        Identifier    "Screen0"
            Device        "VGA_Geforce"
            Monitor        "Monitor0"
            DefaultDepth    24
            SubSection    "Display"
                Modes "1280x1024" "1024x768" "800x600" "640x480"
                Viewport    0 0
                Depth      24
            EndSubSection
EndSection

Section "Screen"
        Identifier        "Screen1"
        Device                "SVideo_Geforce"
        Monitor                "Television"
#        SubSection "Display"
#                Modes "1024x768_50" "800x600_50" "852x480_50" "704x480_50" "640x480_50" "640x400_50"
#                Modes "640x480"
#                Depth 24
#        EndSubSection
EndSection

Thanks in advance for any help.

p.s. I am running Ubuntu 7.10 using kernel 2.6.22-14-generic with the nvidia restricted drivers

simick1712 02-05-2008 12:20 PM

You may want to have a look at NVTV (http://sourceforge.net/projects/nv-tv-out/), which is supposed to be able to enable the TV-out on Nvidia cards.

Simon.

tksko 02-05-2008 05:37 PM

HI!

i have exactly the same problem in Windows XP!

i know this is a linux forum but the same is happening to me!!

when i start the computer with the svideo cable plugged it boots from the TV and when windows loads it goes to the lcd (not both at the same time)

then i can never get back to the tv!

i try to force the detection but nothing! the tv is dead!

the dual view doesnt work too!!

what can i do??

do i have to buy a new video card??

simick1712 02-07-2008 09:11 AM

Is the computer a laptop? If so, it's more than likely has a button on it that you'll need to press to switch the output from LCD to TV. It's usually the FN key + one of the F# keys.

jsstevenson 02-08-2008 04:16 AM

Thanks simick1712....

No machine is not a laptop.

Here is the lspci information:

Code:

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller (rev 02)
00:01.0 PCI bridge: Intel Corporation 82G33/G31/P35/P31 Express PCI Express Root Port (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)
00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 (rev 02)
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IR (ICH9R) LPC Interface Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400 GS (rev a1)
03:00.0 SATA controller: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)
03:00.1 IDE interface: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
05:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 46)
05:02.0 Ethernet controller: Macronix, Inc. [MXIC] MX987x5 (rev 25)

I have now identified that xorg is recognising that a device (i.e. TV) is attached to the video card but it seems to be unable to find and set a suitable resolution and refresh rate!

paul123 03-06-2008 03:46 PM

Hi

Im currently struggling with the same problem. I cant get my sanyo 32" flat screen up and running on Gusty using a 8400GS. I had been able to run the flat screen from my onboard Nvidia 6150. Resolutions come up on flat screen as ubuntu is booting. This doesnt happen off the 8400GS, just blue screen with "no input signal" displayed from TV.

Im using the composite output to PC input on flat screen.

How comes the onboard nvidia 6150 works? Is it the driver?

Im not to good on video problems but im wondering if I change settings for screen to 'generic plug and play' in gusty? Because it feels to me that its just not being detected correctly? Your thread seems to confirm this.

Have you tried ntv-out? Im not to sure how it works.

Anyway if I make any progress tonight I will post.

debianese 09-20-2009 03:14 PM

Has anyone solved this problem yet??

Because i am struggling with exactly the same problem now. i can't get it working altough my xorg.conf should be correct.

When i boot with cable connected to PC everything is on tv, but as soo as the X-Server starts it switches to my Monitor..

Please help!!

pdallas 08-07-2011 12:07 PM

Problem solved for me
 
Hi, this is an old chestnut and I wonder whether anyone cares about TV Outs any more, but I'll pen in my experience after having sweated over the problem for two weeks, in case I help someone:

I'm running an elderly GeForce 2mx/mx400, connected to my old TV. My PC is a dual Pentium II (yes, they still exist!), runing LXDE over OpenSuse 11.4. I wanted the PC to work only with the TV, without an accompanying computer monitor. Hence my difficulty; information on this configuration (i.e. without a computer monitor) is pretty scant.

All older GeForces are basically the same. Nvidia have a great instruction sheet, which you can download from ftp://download.nvidia.com/XFree86/Li...DME/README.txt.
Other than this, I got lots of info by reading my Xorg.0.log file.

This is what I did to get things working:

- Connect TV ONLY.
- Boot linux in failsafe mode.
- Log in as root.
- Edit your /etc/modprobe.d/50-blacklist.conf file, and add the following line:
blacklist nouveau
- Reboot in failsafe mode, and log in as root.
- You MUST do a full software update, which takes hours.
- Add the following repository:
Repository name: nvidia
URL: ftp://download.nvidia.com/opensuse/11.4/
- Open software management. This will have the following selected for installation:
nvidia-gfx-kmp-default
x11-video-nvidia
or whichever other nvidia driver is applicable to your card.
- Copy file /etc/X11/xorg.conf.install to /etc/X11/xorg.conf.
- Make the changes shown below in red to /etc/X11/xorg.conf. Note that these were for PAL-B with a resolution of 720x576, which is appropriate for most TVs in Europe; maybe you need a different configuration in your country. See below for more info.
Code:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder75)  Wed Oct 27 19:20:23 PDT 2010

Section "ServerLayout"
    Identifier    "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier    "Mouse0"
    Driver        "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/psaux"
    Option        "Emulate3Buttons" "no"
    Option        "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier    "Keyboard0"
    Driver        "kbd"
EndSection

Section "Monitor"
    Identifier    "Monitor0"
    VendorName    "Unknown"
    ModelName      "Unknown"
    HorizSync      28.0 - 33.0
    VertRefresh    43.0 - 72.0
#    Option        "DPMS"

EndSection

Section "Device"
    Identifier    "Device0"
    Driver        "nvidia"
    VendorName    "NVIDIA Corporation"
    Option "NvAGP" "0"
EndSection

Section "Screen"
    Identifier    "Screen0"
    Device        "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option "TVStandard" "PAL-B"
    Option "ConnectedMonitor" "TV"
    Option "TVOutFormat" "SVIDEO"
    Option "IgnoreEDID" "1"

    SubSection    "Display"
        Depth      24
        Modes      "720x576"
    EndSubSection
EndSection

- Reboot normally (i.e. not in failsafe mode), and everything should work fine.

During my search, I discovered the following:

1. The nv and nouveau drivers don't really work for me. Sorry... nvidia's proprietary drivers are fine, though.

2. Once you have installed the nvidia drivers, you can get an enormous amount of information (including the modes your nvidia card supports) doing the following:
  • Boot linux in normal mode (not failsafe mode!), but force runlevel 3 by adding the number 3 at the end of the grub boot command line.
  • Log in as root.
  • Type startx -- -logverbose 5 (as you see it, with all the dashes).
  • XWindows will probably not start, but file /var/log/Xorg.0.log will now have an enormous amount of information regarding your nvidia card's capabilities, and potential problems.

3. Option NvAGP 0 essentially disables AGP and forces the card into PCI mode. This is not a good idea, but I found it necessary on my PC. Without this, to get a working screen it was necessary to press Ctrl-Alt-F1 to enter a text mode, then Ctrl-Alt-F7 to return to X-Windows; even this wasn't very reliable. You might not need it, though.

4. Option IgnoreEDID 1 is a Godsend. Without it, my TV (an old Philips) did not work at all! It obviously reports resolutions the nvidia card couldn't support, or maybe it just reports rubbish. Without this option I either got a black screen on the TV, a totally unlocked mess on the TV, or a heavily squashed picture which was reported as 1440x600. Weird...

5. Resolutions: I used 720x576, which is fine for PAL-B here in Europe. nvidia state that 800x600 and 640x480 are safer bets; I suppose they are, at least for starters. As stated earlier, check your /var/log/Xorg.0.log file after startx -- -logverbose 5, and this will list all the resolutions the card will support on TV out.

6. Note that (at least for my configuration), nvidia state that the HorizSync and VertRefresh settings in xorg.conf are ignored, and the capabilities of the TV driver chip are used instead. So, in principle, HorizSync and VertRefresh need not (should not?) be set. I set them to the values reported by the driver in my /var/log/Xorg.0.log file after startx -- -logverbose 5.

It's a lot of hard work, but the results are worth it! I now have really great picture on my TV, with no "black borders" around the picture and no need for a computer monitor.

Good luck!

pdallas 08-14-2011 11:15 AM

...after a bit of experimentation, here is my "final howto" for Opensuse 11.4, in case someone is interested:

- Connect VGA monitor only.
- Start Suse Linux 11.4 installer from CD-ROM. In the CD-ROM boot menu (where "Boot from Hard Disk", "Installation" etc. are shown), you MUST:
- Select Text Mode (by pressing F3).
- Add the following on the "boot options" line: brokenmodules=nouveau

- Install Suse Linux. In bootloader setup, set VGA mode to 0x300.

- While selecting installation options, set default runlevel to 3.

When opensuse 11.4 is installed, you MUST do a full software update, which takes hours (overnight recommended).

- Add the following text in /etc/modprobe.d/50-blacklist.conf (probably already there, do a search for it):
blacklist noveau
- Reboot

- Copy file /etc/X11/xorg.conf.install to /etc/X11/xorg.conf.
- Make the changes shown in the post above in red to /etc/X11/xorg.conf. Note that these are for PAL-B with a resolution of 720x576, which is appropriate for most TVs in Europe; you may need a different configuration in your country.

- In yast, add repository:
Repository name: nvidia
URL: ftp://download.nvidia.com/opensuse/11.4/
- Open software management. This will have the following selected for installation:
nvidia-gfx-kmp-default
x11-video-nvidia

- Edit /etc/inittab, and change the line
id:3:initdefault:
to
id:5:initdefault:

- Turn PC off (type poweroff)
- Connect TV ONLY.
- Boot normally. It should work!

7. Once everything is working, you might want to experiment with the NvAGP option. The setting I have used ("0") is the safe option, but not necessarily the fastest.

8. On my TV, 800x600 is too small and 720x576 extends beyond the screen. I found that the LXDE openbox manager allows the setting of margins, so that the raster fits perfectly on my TV screen. I suppose Gnome, KDE, XFCE gblah will have something similar.


All times are GMT -5. The time now is 06:51 PM.