Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 09-29-04, 10:25 PM   #1
kccricket
Registered User
 
kccricket's Avatar
 
Join Date: Jan 2003
Location: North Carolina, USA
Posts: 4
Send a message via ICQ to kccricket Send a message via AIM to kccricket
Question NVIDIA + VIA = No AGP 4x?

According to os-registry.c from the sources of the NVIDIA kernel module:

Code:
/*
 * Option: EnableVia4x
 *
 * Description:
 *
 * We've had problems with some Via chipsets in 4x mode, we need force
 * them back down to 2x mode. If you'd like to experiment with retaining
 * 4x mode, you may try setting this value to 1 If that hangs the system,
 * you're stuck with 2x mode; there's nothing we can do about it.
 *
 * Possible Values:
 *
 * 0: disable AGP 4x on Via chipsets (default)
 * 1: enable  AGP 4x on Via chipsets
 */
I know for a fact that my VIA KT400-based motherboard supports AGP 4x. I have the AGP bus set to 4x in the BIOS. I have compiled the NVIDIA kernel module with NVreg_EnableVia4x set to 1.

However, I am still unable to get 4x mode to work:

Code:
$ uname -a
Linux myrmidon 2.6.8-gentoo-r4 #1 Tue Sep 28 21:33:16 EDT 2004 i686 AMD Athlon(TM) XP 1800+ AuthenticAMD GNU/Linux

/proc/driver/nvidia $ cat version
NVRM version: NVIDIA Linux x86 NVIDIA Kernel Module  1.0-6111  Tue Jul 27 07:55:38 PDT 2004
GCC version:  gcc version 3.4.2 (Gentoo Linux 3.4.2-r2, ssp-3.4.1-1, pie-8.7.6.5)

/proc/driver/nvidia/cards $ cat 0
Model:           GeForce2 Ti
IRQ:             177
Video BIOS:      03.15.01.04.00
Card Type:       AGP

/proc/driver/nvidia/agp $ cat card
Fast Writes:     Supported
SBA:             Supported
AGP Rates:       4x 2x 1x 
Registers:       0x1f000217:0x1f000312

/proc/driver/nvidia/agp $ cat host-bridge 
Host Bridge:     VIA Technologies, Inc. VT8377 [KT400/KT600 AGP] Host Bridge
Fast Writes:     Supported
SBA:             Supported
AGP Rates:       2x 1x 
Registers:       0x1f000a13:0x00000312

/proc/driver/nvidia/agp $ cat status 
Status:          Enabled
Driver:          AGPGART
AGP Rate:        2x
Fast Writes:     Enabled
SBA:             Enabled
Has anyone had any success getting AGP 4x to work with a VIA (preferably a KT400) chipset?
__________________
-kccricket
* chirp * chirp *
kccricket is offline   Reply With Quote
Old 10-03-04, 04:09 PM   #2
Soluzar
Registered User
 
Join Date: Oct 2004
Posts: 34
Default Re: NVIDIA + VIA = No AGP 4x?

I'm using Gentoo 2004.2, on a VIA-KT400 based motherboard. I am using the FX5200, and I get AGP 8x. I can only presume that means that I have 4x working as well.

I honestly don't know why it works for me though. All I did was install it as normal. It's a slightly older version of the driver (5336) as that is what my distro provides as standard.

It clearly does work, but I have no idea what you need to change to make it work.
Soluzar is offline   Reply With Quote
Old 10-03-04, 05:51 PM   #3
kccricket
Registered User
 
kccricket's Avatar
 
Join Date: Jan 2003
Location: North Carolina, USA
Posts: 4
Send a message via ICQ to kccricket Send a message via AIM to kccricket
Default Re: NVIDIA + VIA = No AGP 4x?

Quote:
Originally Posted by Soluzar
I'm using Gentoo 2004.2, on a VIA-KT400 based motherboard. I am using the FX5200, and I get AGP 8x. I can only presume that means that I have 4x working as well.
Well, it doesn't say anything about 8x. I'm sure if I had an 8x-capable card, it would work for me, too. I was under the impression that it only disables 4x mode, and am still curious if anyone has 4x working on a VIA chipset with NVIDIA's drivers.
__________________
-kccricket
* chirp * chirp *
kccricket is offline   Reply With Quote
Old 10-03-04, 09:05 PM   #4
Soluzar
Registered User
 
Join Date: Oct 2004
Posts: 34
Default Re: NVIDIA + VIA = No AGP 4x?

Ahh. Yeah, you could be right. Sorry about that.
Soluzar is offline   Reply With Quote
Old 10-04-04, 08:52 AM   #5
uberpenguin
BISCUIT HAMMER
 
Join Date: Apr 2003
Location: Georgia, USA
Posts: 18
Send a message via AIM to uberpenguin Send a message via Yahoo to uberpenguin
Default Re: NVIDIA + VIA = No AGP 4x?

I have the same problem; no matter what I cannot get the driver to put my AGP 4x card into that mode on a VIA KT133A chipset (older than yours)... The nvidia Linux driver has always (read: the past 2.5 years or so that I've used it) seemed to have some problem or another with VIA chipsets.

-uberpenguin
uberpenguin is offline   Reply With Quote
Old 10-04-04, 02:07 PM   #6
kmike
Registered User
 
Join Date: Aug 2004
Posts: 34
Default Re: NVIDIA + VIA = No AGP 4x?

Quote:
Originally Posted by uberpenguin
I have the same problem; no matter what I cannot get the driver to put my AGP 4x card into that mode on a VIA KT133A chipset (older than yours)...
My KT133A board (Iwill KK266A) doesn't have any trouble handling AGP 4x. In fact, 4x worked even back when I was using 31.23 drivers. It worked fine with GF2MX and now with GF 6800 Maybe only some revisions of KT133/133A are affected?
Code:
root@xt:~)cat /proc/driver/nvidia/agp/status 
Status:          Enabled
Driver:          NVIDIA
AGP Rate:        4x
Fast Writes:     Enabled
SBA:             Enabled
root@xt:~)fgrep KT133 /proc/pci 
    Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 3).
    PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (rev 0).
kmike is offline   Reply With Quote
Old 10-05-04, 08:47 PM   #7
Kr0n0
Debian GNU/Linux User
 
Join Date: Sep 2004
Location: Spain
Posts: 1
Send a message via ICQ to Kr0n0
Default Re: NVIDIA + VIA = No AGP 4x?

First, sorry for my english
I have a A7V8X Asus motherboard with the VIA KT400 chipset too, with a Geforce FX 5900XT and AGP 8x working right now under Debian unstable:

/proc/driver/nvidia/agp/version:

NVRM version: NVIDIA Linux x86 NVIDIA Kernel Module 1.0-6111 Tue Jul 27 07:55:38 PDT 2004
GCC version: gcc versión 3.4.2 (Debian 3.4.2-2)

/proc/driver/nvidia/agp/host-brigde:

Host Bridge: VIA Technologies, Inc. VT8377 [KT400/KT600 AGP] Host Bridge
Fast Writes: Supported
SBA: Supported
AGP Rates: 8x 4x
Registers: 0x1f000a1b:0x1f000b1a

/proc/driver/nvidia/agp/card:

Fast Writes: Supported
SBA: Supported
AGP Rates: 8x 4x
Registers: 0x1f000e1b:0x1f000312

/proc/driver/nvidia/cards:

Model: GeForce FX 5900XT
IRQ: 16
Video BIOS: 04.35.20.32.00
Card Type: AGP

and for dmesg from x.org 6.8.1:
agpgart: Found an AGP 3.5 compliant device at 0000:00:00.0.
agpgart: Putting AGP V3 device at 0000:00:00.0 into 8x mode
agpgart: Putting AGP V3 device at 0000:01:00.0 into 8x mode

I had a geforce 4 MX 440 running ok with agp 4x two weeks ago before I've updated it. The strange thing is your host-bridge saying that you only can get agp 2x... perhaps are you running an old kernel or an old agpgart version? (I'm running 2.6.8.1)
Kr0n0 is offline   Reply With Quote
Old 10-05-04, 10:14 PM   #8
kccricket
Registered User
 
kccricket's Avatar
 
Join Date: Jan 2003
Location: North Carolina, USA
Posts: 4
Send a message via ICQ to kccricket Send a message via AIM to kccricket
Default Re: NVIDIA + VIA = No AGP 4x?

Quote:
Originally Posted by Kr0n0
I had a geforce 4 MX 440 running ok with agp 4x two weeks ago before I've updated it. The strange thing is your host-bridge saying that you only can get agp 2x... perhaps are you running an old kernel or an old agpgart version? (I'm running 2.6.8.1)
As you can tell from the uname output I included in the original post, I'm running 2.6.8.1. Here it is again for reference:
Code:
$ uname -a
Linux myrmidon 2.6.8-gentoo-r6 #2 Mon Oct 4 21:11:38 EDT 2004 i686 AMD Athlon(TM) XP 1800+ AuthenticAMD GNU/Linux
From this dmesg output, I can assume that the issue is not actually with the NVIDIA drivers, but either agpgart or my mainboard:
Code:
Linux agpgart interface v0.100 (c) Dave Jones
agpgart: Detected VIA KT400/KT400A/KT600 chipset
agpgart: major_version was >= 3
agpgart: Inside check_via_agp3.
agpgart: Inside checking for legacy.
agpgart: Maximum main memory to use for agp memory: 690M
agpgart: AGP aperture is 64M @ 0xf8000000
agpgart: Found an AGP 3.5 compliant device at 0000:00:00.0.
agpgart: Device is in legacy mode, falling back to 2.x
agpgart: Putting AGP V2 device at 0000:00:00.0 into 2x mode
agpgart: Putting AGP V2 device at 0000:01:00.0 into 2x mode
agpgart: Found an AGP 3.5 compliant device at 0000:00:00.0.
agpgart: Device is in legacy mode, falling back to 2.x
agpgart: Putting AGP V2 device at 0000:00:00.0 into 2x mode
agpgart: Putting AGP V2 device at 0000:01:00.0 into 2x mode
The three lines after the "Detected VIA..." bit were actually added to the kernel module by me. I had noticed the notices about legacy mode after I started this thread, so I began a bit of amateur kernel hacking. As near as I can tell, the hardware seems to be correctly identifying itself as AGP V3.5, but either the agpgart or via_agp module isn't reporting the hardware as such.

In the file drivers/char/agp/generic.c in the kernel source in a function called "agp_generic_enable":
Code:
	/* Do AGP version specific frobbing. */
	if(agp_bridge->major_version >= 3) {
		pci_read_config_dword(agp_bridge->dev,
			agp_bridge->capndx+AGPSTAT, &agp3);

		/* Check to see if we are operating in 3.0 mode */
		if (agp3 & AGPSTAT_MODE_3_0) {
		    printk (KERN_INFO PFX "We have AGP 3.0!!\n"); // Added by kccricket
			/* If we have 3.5, we can do the isoch stuff. */
		    if (agp_bridge->minor_version >= 5) {
			    printk (KERN_INFO PFX "We have AGP 3.5!!!\n"); // Added by kccricket
				agp_3_5_enable(agp_bridge);
		    }
			agp_device_command(command, TRUE);
			return;
		} else {
		    /* Disable calibration cycle in RX91<1> when not in AGP3.0 mode of operation.*/
		    command &= ~(7<<10) ;
		    pci_read_config_dword(agp_bridge->dev, agp_bridge->capndx+AGPCTRL, &temp);
		    temp |= (1<<9);
		    pci_write_config_dword(agp_bridge->dev, agp_bridge->capndx+AGPCTRL, temp);

		    printk (KERN_INFO PFX "Device is in legacy mode,"
				" falling back to 2.x\n");
		}
	}
For me, it makes it into "if(agp_bridge->major_version >= 3)", but doesn't make it into "if (agp3 & AGPSTAT_MODE_3_0)". I wish I knew what that meant, but I'm not skilled enough with C to follow the logic of this module.

At this point, I thought to myself, "Well, it seems to be an issue with agpgart. I'll try NVIDIA's gart!" So, I rmmod agpgart and set NvAGP=1. I start X again, verify that it is actually using NV's gart, but still only 2x.

I'm nearly out of ideas. I think I'm going to try a different kernel patchset next.
__________________
-kccricket
* chirp * chirp *
kccricket is offline   Reply With Quote

Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
Need Help Installing NVIDIA Tesla M2070Q in Linux RHEL5 Ferianto85 NVIDIA Linux 0 05-18-12 08:35 PM
Nvidia Vanta AGP vs Intel i815 AGP Gator Other Desktop Graphics Cards 3 08-27-02 11:35 AM
nvidia drivers in a motherboard with AGP 1.0 (motherboard MVP3+) knocker NVIDIA Linux 1 08-19-02 01:57 AM

All times are GMT -5. The time now is 08:07 PM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright ©1998 - 2014, nV News.