# agpgart problem (again!)

## barlad

Hello there,

Everytime I run startx I get the following error : (I have NvAGP 3 in my XF86Config so it tries to run agpgart first)

"1: NVRM: AGPGART: unable to retrieve symbol table"

here is what agpgart says when it is launched at boot (it's compiled in the kernel) : 

"agpgart: Maximum main memory to use for agp memory: 941M

agpgart: Detected an Intel E7205 Chipset.

agpgart: no supported devices found."

AGP is still activated and OpenGL works good (8000fps in 16bits - default size) thanks to nvidia agp drivers but I would rather like to use AGPGART (I heard of better performances).

Here is my current configuration:

kernel 2.4.20-ck4 patched with AGP3.0 compliance/E7205 Support

GeForce ti4600

Nvidia 41.91 drivers.

Anyway, I have the same problem with beta kernels (it's even worse). 

Anyone have an idea please? If not, anyone actually managed to use AGPGART as AGP driver with a granite bay chipset ? (E7205/E7505)

Thanks in advance.

----------

## BonezTheGoon

Does your GeForce ti4600 support AGP 3.0 (8X)?  I have heard many reports about the new AGP 3.0 motherboard behaving very strangely with auto-detection of the video card and then setting the AGP rate (1,2,4, :Cool:  without allowing you to have any say in the matter at all.

One idea I had is that if your mainboard is detecting your card as AGP 4X and you are compiling support for AGP 8X into your kernel the error about "agpgart: no supported devices found" may be referring to your CARD not the AGP slot.  Given it recognizes your chipset and correctly identifies it I would be inclined to think that the error is refering to your video card and not to the AGP slot.

If this is indeed what is happening my suggestion is to leave out the patch for AGP 3.0 (8X) support given that your hardware on your mainboard has probably throttled back down to AGP 4X for your video card.

I have no idea what your card should support (hence my first sentance) -- but pretty much my whole post assumes that your card is an AGP 4X part.  If it is actually an AGP 3.0 part check your BIOS to see what mode it is running it in.

Just some ideas, nothing concrete here.

Regards,

BonezTheGoon

----------

## barlad

Nah I do not think my graphic card supports 8x although my motherboard does.

The problem is that the E7205 detection patch is the AGP3.0 support patch (not sure why). I have to patch my kernel to get the chipset properly recognized, otherwise it does not see it. Same goes for 2.5 kernels, I have to say yes to the option "AGP3.0 compliance" to be able to say yes to "E7205/E7505 support". 

That's really wierd... looks like I am bound to use nvidia drivers, unless there is another solution ?  :Smile: 

----------

## klausx

Hy there,

i have the same problems. GeForce4 Ti 4600 AGP 4x, and ASUS P2G8X AGP 8x, the BIOS detects correct AGP 4x.

agpgart exits with the same errors, even agp_try_unsupported wont work. nvagp will not work, Monitor losses not sync, but system crashes.

Tested with 2.4.19-r10 and 2.4.20-r1 (patched or not), on Xfree-4.2.1 and Nvidia 3.1.3.9 and 4.1.9.1. 

BTW: The 3.1.3.9 will never works , since i upgraded to gcc-3.1.

The Kernle 2.5.65 dosent boot. 

But there is evern another problem:

The Board support udma5, my HDs udma6 (2xMaxtor 6E040L0). But the HDs wont run with DMA. So i have 4,9 GB/s. (Tested with ct's hdbench under WinXP: 54 MB/s)

I will test the latest ac-kernel, hopefully it will work.

Are there any fixes for the DMA-Mode ?

Regards

Klaus Schäfer

----------

## BonezTheGoon

OK so this problem has got my attention.  I tried googling around the web and found this on kernel traffic.  It mostly seems to give all the info that you posted about the patch barlad, however it seems (and this is just opinion speaking) that the wording indicates that the patch provides support for "AGP 3.0 compliance" but that it is not supposed to be a pre-requisite in the kernel to use the Granite bay chipset.  Maybe there are more than one patch floating around?  You might take another look to see if you can exclude the "AGP 3.0 compliance" from your kernel config and only include the Granite Bay chipset support (E7205/E7505.)  What do you think?

Regards,

BonezTheGoon

----------

## barlad

E7205/E7505 chipsets are based on AGP3.0, that's why the patch provided by Jeff Hartman allows at the same time AGP3.0 compliance and the use of E7205/E7505 chipsets. E7205 chipset will not work without AGP3.0 support.

For example, in the latest 2.5 kernels (2.5.64-5), you are forced to activate AGP3.0 compliance before being able to activate E7205 support.

That problem is really wierd. lspci also lists my agp as "Unknown Device 255d" and agpgart v0.100 (2.5 kernels) does not detect the chipset even with all the required options activated.

I wish I could just have the report from ONE person that got that chipset recognized and had the drivers work so I could keep faith.

----------

## klausx

Yes we need someone how got ist working, and can probabyl write a little HowTo. 

The Intel support olny anwers: 

"Contact your Linux manufacturer for assistance in this issue."

I dont think that this is a good idea. 

The patch was send from: matthew.e.tolentino@intel.com

(http://lists.insecure.org/linux-kernel/2002/Oct/8472.html)

This attached was corrupt, a correct follows.

I think that someone, with better english, should try to connect 

Matthew and ask him how it goes.

by 

Klaus

----------

## barlad

I made a thread on the portage&development forums.

I am not sure yet - because I am really a newbie - but obviously the intel E7205 driver included in kernel 2.5 is bugged as hell.

Now maybe I was just drunk, but I noticed the Makefile in char/drivers/agp/ is wrong, the name in the KConfig for the E7205 support option is not the same than the one in the Makefile. Thus the E7205 module is never compiled, whatever option you choose.

I fixed the Makefile and tried to compile i7x05-agp module (or even compile in the kernel) , it failed for a few reasons (missing ";" at some lines, undeclared stuff and so on...).

I will try to fix it for the fun of it, that's going to be an entertaining way to learn C.  I would report that bug if I was sure it was one but since I am so newbie, I am afraid that I just misunderstood everything and that it's me fucking up so I will wait for someone more skilled to notice that and report it.

Anyway if by some miracle, I find a way to solve the problem... I will post it.

As for E7205 support in 2.4 kernels, at least the chipset is detected... the "NVRM : AGPGART : failed to load symbol table" error is apparently due to nvidia drivers. As for the "unsupported devices found" thing, that remains a mystery.

Anyway, I am having some fun digging through the sources. That's like deciphering an egyptian parchment one symbol at a time.

----------

## barlad

UPDATE : 

I fixed the makefile in drivers/char/agp/ of 2.5.65 kernels and fixed in part the i7x05-agp file. Now the module properly compiles. 

I just tested it and E7X05 chipset is properly recognized, AGP memory is also correctly set up. 

It fails at getting the aperture_size though. Looks I am going to have some fun this week-end.

If anyone feels like working on that too and wants the few basic lines I already wrote, let me know  :Smile: 

----------

## klausx

Did you think, that your patch is working for Kernel 2.4.20 too ?

I  didnt get the 2.5.65 running so far. (stand still after booting the kernel). So i think its better for me to not use any development stuff.

I still have my trouble with editing small shell-scripts, because i am so stupid and never have learned any programming lanuage.

hope you enjoy this weekend. Let me know, when you got it. Perhaps you can send me tips/config to get the Kernel running.

thanks for your work.

By

Klaus

----------

## barlad

No the patch is not going to work for 2.4 kernels sorry. It only fixes some problems with the i7x05 file of 2.5 kernels (well it does not fix much at the moment). 

That said, you should not need any thing for 2.4 kernels. The patch released by Jeff Hartmann works well. The chipset is properly recognized. 

That said, it is a bit useless if you are using nvidia drivers since they seem to be incompatible with each other when it comes to E7205 chipset. 

The only thing that may have to be fixed is the "No supported devices found" error.  I think that one may be due to bad registers provided in the file because a quick look at the intel spec sheet seemed to indicate that they are different.That said, I am not sure of anything yet and considering my newbieness, I am going quite slowly  :Smile: .

You can find Jeff Hartmann's patch for 2.4 kernel on google (try : E7205 support in 2.4 kernels) or if you wish, I can send it to you.

If you have a problem with the 2.5.65 kernel, don't hesitate to post on the concerned forum, we may be able to help!

----------

## klausx

I m think i understod.

The Patch for 2.4 dont work with Nvidia-Modules. So i have to use the nv-Modules that comes with XFree. For that i have the "basic" AGP 3.0 support, but no 3D acceleration. 

That will explain why the system will only run probably, when the nvidia-module is used and the agpgart-module isnt loaded.

Is it right ? 

Will the 3D acceleration comes back when i emerge mesa ?

Is this a problem with the nvidia-modul (action from nvidia is required, to support the AGP 3.0 interface), or is this fixed, when i use the kernel 2.5  ?

regards

Klaus

----------

## barlad

No, you have three main ways to handle 3d acceleration with your current hardware :

- use NV Xfree Driver + AGPGART driver (it works)

- use Nvidia binary drivers + AGPGART driver (it does not work with E7205 chipset)

- use Nvidia binary drivers + Nvidia AGP driver which is included in nvidia binaries drivers (it works)

Option 1 and 3 work, Option 2 does not work and will not till nvidia update their drivers.

Option 3 is quite fine, it's even maybe the best. If your nvidia binary drivers work then there is no reason to worry. 

Only reason I am bitching about E7205 drivers is because... well I like when things work. But even if by some sort of miracle I fixed E7205 driver under 2.5 kernels, it would not help me much because I still could not use agpgart with my nvidia binary drivers

If you are using nvidia binary drivers, the patch for 2.4 kernels is more or less useless for you, it's just to have the satisfaction of a "E7205 chipset detected" message. 

If you are not using nvidia  binary drivers, because you do not have a nvidia card or whatever else, then you need that patch to have 3d acceleration.

----------

## klausx

Youre right. 

My VIA-KT133-Board never goes with NvAGP, but the Intel 7205 do it. I have not tested it, because the last two jears it never works.

Under 

www.minion.de

are patched Nvidia-Drivers, if it helps someone.

Now i want to get my HDs using DMA, so i will to search at google.

I will test the Kernel 2.5 when it is ready.

By

Klaus

----------

