linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: Dual Athlon, AGP, and PCI
       [not found] <200108050019.f750J6t24095@antimatter.net>
@ 2001-08-05 10:42 ` Paul G. Allen
       [not found]   ` <20010805095853.04315de4.dlooney1@home.com>
  0 siblings, 1 reply; 11+ messages in thread
From: Paul G. Allen @ 2001-08-05 10:42 UTC (permalink / raw)
  To: Dieter Nützel, Linux kernel developer's mailing list,
	kplug-list

Dieter Nützel wrote:
> 
> Hello Paul,
> 
> would you be so kind to do some benchmarks on your GREAT dual Athlon system?
> Maybe unixbench-4.1.0?
> 
> http://lbs.sourceforge.net/
> http://www.tux.org/pub/tux/benchmarks/System/unixbench/
> 

Results are on my web site at:

http://24.5.14.144:3000/unixbench/

I've never run this before nor have I seen results of other machines so
I have no idea if these results are good, bad, or what. Can anyone clue
me in?

PGA

-- 
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
       [not found]   ` <20010805095853.04315de4.dlooney1@home.com>
@ 2001-08-06  0:15     ` Paul G. Allen
  0 siblings, 0 replies; 11+ messages in thread
From: Paul G. Allen @ 2001-08-06  0:15 UTC (permalink / raw)
  To: kplug-list, Linux kernel developer's mailing list

David Looney wrote:
> 

[SNIP]
> In general your dual athlon system whupped mine good, especially in the Dhrystone/Whetstone categories (more than 2x), and it did ~50% better in almost every category except process creation (some overhead for dual cpu machines ?) So it would seem to scale reasonably.
> 
> OTOH, what about bang for buck ?  I built the basic machine (case/power supply/motherboard/cpu/mem/20 GB HD/8MB matrox AGP) for about $280, but added about another $170 of stuff (PCI sound, PCI linmodem, NIC, panasonic CD/CDR/CDRW). I am sure others out there could probably do much better though, as I just bought stuff from catalogs or retail, and didn't scrounge.
> 

~$2600 for this machine:

Dual Athlon 1.4GHz (non-MP) ($229 ech.)
Tyan K7 Thunder ($600)
 - Dual Channel Ultra 160 SCSI (AIC7899P)
 - ATA 100 IDE
 - Dual 3c980 TX 10/100 NICs
 - 4 port USB
 - 6 64/32-bit PCI 2.0 slots
 - 1 AGP Pro slot
 - Onboard I/O
 - Winbond hardware monitor
256MB ECC Reg. DDR SDRAM ($99)
IBM Ultra 160 36GB HDD ($609)
IBM ATA100 30GB HDD ($169)
Yamaha DVD-ROM ($30)
Sony 52x CDROM ($40)
Asus V8200 (GeForce 3) Deluxe (64MB DDR) ($415)
Sound Blaster Live! ($99)
Full Tower case w/NMB 450W power supply ($159)


I ran the test in multi-user mode (silly me, I was half asleep when I
ran it and not thinking :). I will run it in single in a bit and re-post
the results. I also need to find a 3D/graphics benchmark besides Quake
3. (Hey, anyone remember how to enable the FPS display in Quake 3?)

PGA

-- 
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
@ 2001-08-05  3:52 Paul G. Allen
  0 siblings, 0 replies; 11+ messages in thread
From: Paul G. Allen @ 2001-08-05  3:52 UTC (permalink / raw)
  To: Linux kernel developer's mailing list, kplug-list; +Cc: modegard

Just an update as to progress with this dual Athlon.

I've managed to find time around a hectic work schedule to get IDE
and
AGP support working. hadparm -v  right after boot shows DMA enabled.
hdparm -t now produces 35.89MB/sec (consistently) as compared to 2.5
previously. This is also a full 10MB/sec. better than I had
previously
after tweaking the IDE settings with hdparm after booting.

AGP is working with both the agpgart driver and the NVidia driver,
but
FW still does not. I have not spent much time on this though.

I need to do some more testing, etc. before I submit any code
changes
(and it might be a good ide if I upgraded to one of the latest
releases/patches as well).

PGA
-- 
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
  2001-08-04 10:42     ` Vojtech Pavlik
@ 2001-08-04 20:20       ` Paul G. Allen
  0 siblings, 0 replies; 11+ messages in thread
From: Paul G. Allen @ 2001-08-04 20:20 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: Linux kernel developer's mailing list, kplug-list

Vojtech Pavlik wrote:
> 
> On Fri, Aug 03, 2001 at 05:19:31AM -0700, Paul G. Allen wrote:
> 
> > 00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] ISA
> > (rev 02)00: 22 10 10 74 0f 00 00 02 02 00 01 06 00 00 80 00
> > 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> > 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> > 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 
> The name of this chip is "Viper Plus".
> 

Thank you. :)

-- 
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
  2001-08-03 12:19   ` Paul G. Allen
@ 2001-08-04 10:42     ` Vojtech Pavlik
  2001-08-04 20:20       ` Paul G. Allen
  0 siblings, 1 reply; 11+ messages in thread
From: Vojtech Pavlik @ 2001-08-04 10:42 UTC (permalink / raw)
  To: Paul G. Allen; +Cc: Linux kernel developer's mailing list, kplug-list

On Fri, Aug 03, 2001 at 05:19:31AM -0700, Paul G. Allen wrote:
 
> 00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] ISA
> (rev 02)00: 22 10 10 74 0f 00 00 02 02 00 01 06 00 00 80 00
> 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

The name of this chip is "Viper Plus".

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
  2001-08-03 11:37     ` Anders Peter Fugmann
@ 2001-08-04  0:12       ` Paul G. Allen
  0 siblings, 0 replies; 11+ messages in thread
From: Paul G. Allen @ 2001-08-04  0:12 UTC (permalink / raw)
  Cc: linux-kernel

Anders Peter Fugmann wrote:
> 
> Paul G. Allen wrote:
> 
> > Anders Peter Fugmann wrote:
> [SNIP]
> >>I have an UP system with the AMD761 chipset.
> >>
> >
> > The AMD762 has a different ID and is not recognized (the 761 is 7006,
> > and 762 is 700c), which throws a small wrench into things.
> 
> I'm not shure why. You stated that AGPGART worked with the
> try_unsopported=1 parameter (and that you had hacked the code to accept
> it anyways).

It's better (to me) to have it in the code than to have to add it at module load time. Also, I compiled agpgart into the kernel, not as a module.

> 
> >>
> >>(try look in NVIDIA_kernel-1.0-1251/os-registry.c for more parameters)
> >>
> >
> > I'll take a look, again after the project Database is rebuilt. (Without
> > "Understand for C++" I'd still be quite lost looking through all this
> > code!)
> 
> You do not need C experience to look at that code. It just states all
> possible module parameters in C form, and has a comment to them all.

Sorry for the confusion.

I have plenty of C/C++ experience, but anyone looking at 2M+ lines of sparsely commented source code and trying to get a quick understanding of how things work
needs help.

Understand for C++ is a C/C++ source code browser. It parses a C/C++ source tree and creates documentation that allows easy browsing of call trees, include
trees, declarations, global object usage, and more. It allowed me to quickly find the applicable code and see what was happening. I can even show you a complete
graphic of the entire kernel start sequence from (I hope I remember the function name here) start_kernel to nearly any function thereafter.

The only caveat is sometimes in order to create all this you have to tell Understand which directory to find a header/include file in, and if you're not sure
which is the correct one (in the case of multiple headers of the same name) you could get a little lost when looking at the resulting documentation.

In the case of the above - PCI IDs, AGP support, etc. - I have never looked at any kernel source before and I had no idea even where to start. After running it
through Understand, a couple clicks of a mouse and I can find nearl any object I want and know where it's used and why.


> 
> >
> >
> >>It works like a charm on my machine.
> >>
> >>Btw, if you want to make the NVidia module devfs aware please let me
> >>know and I'll send you a patch.
> >>
> >
> >
> > Hmmm, it might be nice.
> >

> 
> Ill create a patch for it this weekend.
> 

Thanks,

PGA

-- 
Paul G. Allen
UNIX Admin II/Programmer
Akamai Technologies, Inc.
www.akamai.com
Work: (858)909-3630
Cell: (858)395-5043

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
       [not found] ` <3B6939BA.30001@fugmann.dhs.org>
       [not found]   ` <3B693D6F.AD0DB931@randomlogic.com>
@ 2001-08-03 12:19   ` Paul G. Allen
  2001-08-04 10:42     ` Vojtech Pavlik
  1 sibling, 1 reply; 11+ messages in thread
From: Paul G. Allen @ 2001-08-03 12:19 UTC (permalink / raw)
  To: Linux kernel developer's mailing list; +Cc: kplug-list

(Alan - please read below for the IDs you requested)


Anders Peter Fugmann wrote:
> 

[SNIP]
> 
> I have an UP system with the AMD761 chipset.
> Agpgart is working here with NVidias driver. Its own agp-module makes
> the system crash hard. As for the FW and SBA, there must be something
> you have overlooked when reading Nvidias code. It is default disabled,
> but you can enable it with module the module parameters:
> 
> NVreg_EnableAGPFW=1

Will not work on my system, but I haven't spent a lot of time on it yet.

> NVreg_EnableAGPSBA=1

Works. I changed the default in the code to 1 to enable it all the time
(it can still be set to 0 [disabled] by setting it with insmod).

> 
> (try look in NVIDIA_kernel-1.0-1251/os-registry.c for more parameters)

I looked and saw nothing else that might help me out. I did quickly scan
the rest of the code and added the AMD-762 ID and description (BTW,
anyone know what the REAL name of the MP chips are? I used Irongate MP),
and changed the description for the GeForce ID to something more
meaningful, to produce the following:

[root@keroon /root]# cat /proc/nv/card0 
----- Driver Info ----- 
NVRM Version: 1.0-1251
------ Card Info ------
Model:        GeForce3 DDR
IRQ:          17
------ AGP Info -------
AGP status:   Enabled
AGP Driver:   AGPGART
Bridge:       AMD Irongate MP
SBA:          Supported [enabled]
FW:           Supported [disabled]
Rates:        4x 2x 1x  [4x]
Registers:    0x0f000217:0x00000304
[root@keroon /root]# 

I also managed to get it to work with the NVidia AGP driver (as opposed
to agpgart), but still without FW. I swear FW works on my A7V133 with
this same video card.



Alan,

   I created a new file - amd7411.c - based upon the previous file for
the AMD7409. I added IDs to pci_ids.h, pci.h, etc. in an effort to
support the different AMD devices. My kernel loads the AMD7411 driver
now, but does not enable DMA, etc., although using hdparm to enable
everything seems more reliable now.

Below is the output from lspci -vvv and lspci -x for my system as it
sits now. (Hmmm, looking at it I think I mis-named a couple of the
devices. Oh well - too much work, too little sleep [thank you SirCam,
Code Red, et. al] :)


[root@keroon /root]# lspci -vvv | more
00:00.0 Host bridge: Advanced Micro Devices [AMD] AMD-762 [Irongate MP]
System Controller (rev 11)
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
	Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort+ >SERR- <PERR-
	Latency: 64
	Region 0: Memory at f4000000 (32-bit, prefetchable) [size=64M]
	Region 1: Memory at f0004000 (32-bit, prefetchable) [size=4K]
	Region 2: I/O ports at 1c30 [disabled] [size=4]
	Capabilities: [a0] AGP version 2.0
		Status: RQ=15 SBA+ 64bit- FW+ Rate=x1,x2
		Command: RQ=0 SBA+ AGP+ 64bit- FW- Rate=<none>

00:01.0 PCI bridge: Advanced Micro Devices [AMD] AMD-766 [Irongate MP]
PCI Bridge (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
	Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
	Latency: 99
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=68
	I/O behind bridge: 0000f000-00000fff
	Memory behind bridge: f2000000-f2ffffff
	Prefetchable memory behind bridge: f8000000-fc0fffff
	BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-

00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] ISA
(rev 02)
	Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
	Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
	Latency: 0

00:07.1 IDE interface: Advanced Micro Devices [AMD] AMD-766 [Cobra MP]
IDE (rev 01) (prog-if 8a [Master SecP PriP])
	Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
	Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
	Latency: 64
	Region 4: I/O ports at f000 [size=16]

00:07.3 Bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] Bridge
(rev 01)
	Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
	Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-


-------------------------


[root@keroon /root]# lspci -x | more
00:00.0 Host bridge: Advanced Micro Devices [AMD] AMD-762 [Irongate MP]
System Controller (rev 11)
00: 22 10 0c 70 06 00 10 22 11 00 00 06 00 40 00 00
10: 08 00 00 f4 08 40 00 f0 31 1c 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00

00:01.0 PCI bridge: Advanced Micro Devices [AMD] AMD-766 [Irongate MP]
PCI Bridge
00: 22 10 0d 70 07 00 20 02 00 00 04 06 00 63 01 00
10: 00 00 00 00 00 00 00 00 00 01 01 44 f1 01 20 22
20: 00 f2 f0 f2 00 f8 00 fc 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 ff 00 0c 00

00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] ISA
(rev 02)00: 22 10 10 74 0f 00 00 02 02 00 01 06 00 00 80 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00:07.1 IDE interface: Advanced Micro Devices [AMD] AMD-766 [Cobra MP]
IDE (rev 01)
00: 22 10 11 74 05 00 00 02 01 8a 01 01 00 40 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 01 f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00:07.3 Bridge: Advanced Micro Devices [AMD] AMD-766 [Cobra MP] Bridge
(rev 01)
00: 22 10 13 74 00 00 80 02 01 00 80 06 00 40 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

---------------------------------


PGA

--
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
       [not found]   ` <3B693D6F.AD0DB931@randomlogic.com>
@ 2001-08-03 11:37     ` Anders Peter Fugmann
  2001-08-04  0:12       ` Paul G. Allen
  0 siblings, 1 reply; 11+ messages in thread
From: Anders Peter Fugmann @ 2001-08-03 11:37 UTC (permalink / raw)
  To: Paul G. Allen; +Cc: linux-kernel


Paul G. Allen wrote:

> Anders Peter Fugmann wrote:
[SNIP]
>>I have an UP system with the AMD761 chipset.
>>
> 
> The AMD762 has a different ID and is not recognized (the 761 is 7006,
> and 762 is 700c), which throws a small wrench into things.


I'm not shure why. You stated that AGPGART worked with the 
try_unsopported=1 parameter (and that you had hacked the code to accept 
it anyways).


>>
>>(try look in NVIDIA_kernel-1.0-1251/os-registry.c for more parameters)
>>
> 
> I'll take a look, again after the project Database is rebuilt. (Without
> "Understand for C++" I'd still be quite lost looking through all this
> code!)


You do not need C experience to look at that code. It just states all 
possible module parameters in C form, and has a comment to them all.

> 
> 
>>It works like a charm on my machine.
>>
>>Btw, if you want to make the NVidia module devfs aware please let me
>>know and I'll send you a patch.
>>
> 
> 
> Hmmm, it might be nice.
> 
> Thanks for the input.
> 
> PGA
> 
> 


Ill create a patch for it this weekend.

Regards
Anders Fugmann.






^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
  2001-08-02  9:21 Paul G. Allen
  2001-08-02 13:15 ` Joshua M. Thompson
@ 2001-08-03  4:42 ` Agus Budy Wuysang
       [not found] ` <3B6939BA.30001@fugmann.dhs.org>
  2 siblings, 0 replies; 11+ messages in thread
From: Agus Budy Wuysang @ 2001-08-03  4:42 UTC (permalink / raw)
  To: Paul G. Allen, Linux Kernel Mailing List

"Paul G. Allen" wrote:
> 
> The NVidia driver, as advertised, will use its own AGP driver, Jeff's
> agpgart driver, or fall back to PCI mode. According to NVidia, you can
> enable the different modes by setting NVagp in XF86Config-4 to a number.
> I set it to use agpgart. Here's the rub.

My mainboard is Abit KT7A, when I was using kernel 2.2.x
I could use NV internal AGP support, after upgrading
kernel to 2.4.x I have to use AGPGART, otherwise it will
fall back to PCI mode.

> Using the same software I used to generate the Kernel source
> documentation on my web server, I took a look at the NVidia driver. I
> found a lot of useful DEBUG code and I found some conditional code that
> allows the NVidia driver to use agpgart. Neither code section was being
> compiled either by the Makefile or the RPM .spec file. So, I modified
> the Makefile for NVdriver (-DDEBUG and -DAGPGART), compiled and
> installed NVdriver, and restarted X. Black screen and Ctrl+Alt+Del.

You don't need to to do this, it is in NVdia README

Option "NvAGP" "integer"
 Configure AGP support. Integer argument can be one of:
0 : disable agp
1 : use NVIDIA's internal AGP support, if possible 
2 : use AGPGART, if possible 
3 : use any agp support (try AGPGART, then NVIDIA's AGP) 
Default: 1.

There are other options you can use.
see Appendix D NVGLX readme.

Oh well binary drivers sux, but better than setting aside
another partition just for running Quake3 under Window$ :)

-- 
+-R-| Netscape Communicator 4.x |-H-| Powered by Linux 2.4.x |-7-+
|/v\ Agus Budy Wuysang                   MIS Department          |
| |  Phone:  +62-21-344-1316 ext 317     GSM: +62-816-1972-051   |
+--------| http://www.rad.net.id/users/personal/s/supes |--------+

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Dual Athlon, AGP, and PCI
  2001-08-02  9:21 Paul G. Allen
@ 2001-08-02 13:15 ` Joshua M. Thompson
  2001-08-03  4:42 ` Agus Budy Wuysang
       [not found] ` <3B6939BA.30001@fugmann.dhs.org>
  2 siblings, 0 replies; 11+ messages in thread
From: Joshua M. Thompson @ 2001-08-02 13:15 UTC (permalink / raw)
  To: Paul G. Allen; +Cc: Linux kernel developer's mailing list

On Thu, 2 Aug 2001, Paul G. Allen wrote:

> I've been dealing with both 2.4.7 and 2.4.2 kernels, but I have mainly
> been using 2.4.2 because I started with that before I realized 2.4.7 was
> available. I also have the NVidia driver, version 1.0-1251.
>
> [ snip ]
>
> mtrr: type mismatch for f8000000,4000000 old: write-back new:
> write-combining

Upgrade your kernel. 2.4.2 had broken mtrr support on Athlons.

-- 
Head Developer           | "...and we have C(n) = (n (n + 1))/ 2. Easy as pie.
Big Net, Inc.            |  Actually easier, Pi = Sum 8 / ((4n + 1)(4n + 3))."
                         |                   - Donald E. KNUTH


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Dual Athlon, AGP, and PCI
@ 2001-08-02  9:21 Paul G. Allen
  2001-08-02 13:15 ` Joshua M. Thompson
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Paul G. Allen @ 2001-08-02  9:21 UTC (permalink / raw)
  To: Linux kernel developer's mailing list, kplug-list

Here's the latest on my endeavors to get everything working full speed
on my Tyan K7 Thunder system. First, a little background on the
applicable hardware and software:

Dual Athlon 1.4GHz CPUs (*NOT* MP chips)
AMD-760 MP chipset, latest revision (as per AMD Rev. documents D/L last
week)
	- AMD-762 Northbridge Rev. 11
	- AMD-766 Southbridge Rev. 01
Mainboard Adaptec 7899P Dual Channel SCSI 160
256MB ECC Reg. DDR
Asus V8200 Deluxe Geforce 3
IBM ATA100 30GB drive
IBM Ultra 160 36GB drive

I've been dealing with both 2.4.7 and 2.4.2 kernels, but I have mainly
been using 2.4.2 because I started with that before I realized 2.4.7 was
available. I also have the NVidia driver, version 1.0-1251.

I'm focusing mainly on AGP right now (I spent some good $$ on this
GeForce 3 card and I want it running full speed :) so this is where I've
made the most progress. I've modified Jeff's agpgart code to recognize
the AMD-762 chip so the module loads without having to use "insmod
agpgart agp_try_unsupported=1". By default the 762 comes up with 4x
enabled, SBA and FW off and there are no setting in the system BIOS for
AGP other than Aperture Memory size (which I set to 64MB). Re-compiling
the NVidia driver after compiling the SMP kernel enables the Asus card
to operate such:

[root@keroon /root]# cat /proc/nv/card0
----- Driver Info ----- 
NVRM Version: 1.0-1251
------ Card Info ------
Model:        NVIDIA card
IRQ:          17
------ AGP Info -------
AGP status:   Enabled
AGP Driver:   AGPGART
Bridge:       Generic AMD
SBA:          Supported [disabled]
FW:           Supported [disabled]
Rates:        4x 2x 1x  [4x]
Registers:    0x0f000217:0x00000104
[root@keroon /root]# 

So, AGP 4x is enabled and things work OK, but the system still locks
occasionally while playing Quake 3.

The NVidia driver, as advertised, will use its own AGP driver, Jeff's
agpgart driver, or fall back to PCI mode. According to NVidia, you can
enable the different modes by setting NVagp in XF86Config-4 to a number.
I set it to use agpgart. Here's the rub.

Using the same software I used to generate the Kernel source
documentation on my web server, I took a look at the NVidia driver. I
found a lot of useful DEBUG code and I found some conditional code that
allows the NVidia driver to use agpgart. Neither code section was being
compiled either by the Makefile or the RPM .spec file. So, I modified
the Makefile for NVdriver (-DDEBUG and -DAGPGART), compiled and
installed NVdriver, and restarted X. Black screen and Ctrl+Alt+Del.

Examining /var/log/messages I found the following:

1. Enabling the agpgart support code results in the following errors:

Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: AMD Irongate chipset
Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: unable to set MTRR
write-combining
Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: aperture: 64M @ 0xf4000000
Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: aperture mapped from
0xf4000000 to 0xd59d9000
Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: mode 4x
Aug  2 00:53:44 keroon kernel: NV0: ioctl(50, 0xbffffa38)
Aug  2 00:53:44 keroon kernel: NV0: ioctl(39, 0xbffff9f0)
Aug  2 00:53:44 keroon kernel: NVRM: AGPGART: allocated 16 pages
Aug  2 00:53:44 keroon kernel: NV0: mmap([0x48604000-0x48614000]
off=0x80000000
Aug  2 00:53:44 keroon kernel: NVctl: ioctl(36, 0xbffff9f8)
Aug  2 00:53:44 keroon kernel: NV0: ioctl(38, 0xbffff9ec)
Aug  2 00:53:44 keroon kernel: NV0: mmap([0x48614000-0x48624000]
off=0x800000
Aug  2 00:53:44 keroon kernel: NVctl: ioctl(43, 0xbffffa14)
Aug  2 00:53:44 keroon kernel: NVctl: ioctl(36, 0xbffffa24)
Aug  2 00:53:44 keroon kernel: NV0: could not find map for vm 0x40604000
Aug  2 00:53:44 keroon kernel: NV: vtop: 0x40604000 to p 0xf8000000
Aug  2 00:53:44 keroon kernel: NV0: ioctl(39, 0xbffffa1c)
Aug  2 00:53:44 keroon kernel: NV0: mmap([0x4002c000-0x4002d000]
off=0x40000000
Aug  2 00:53:44 keroon kernel: NVctl: ioctl(36, 0xbffffa24)
Aug  2 00:53:44 keroon kernel: NV0: could not find map for vm 0x4002c000



Note that early on in the kernel boot process, mtrr reports:

. . .
CPU1<T0:2654864,T1:884944,D:4,S:884958,C:2654875>
checking TSC synchronization across CPUs: passed.
Setting commenced=1, go go go
mtrr: your CPUs had inconsistent fixed MTRR settings
mtrr: probably your BIOS does not setup all CPUs
. . .

and later:

mtrr: type mismatch for f8000000,4000000 old: write-back new:
write-combining



2. NVidia's own AGP support code uses the kernel PCI functions. Because
the kernel PCI code does not recognize the AMD-762 or AMD-766 chip IDs,
a probe for an AGP device fails and generic support is assumed. AGP
still works because NVDriver reads the capabilities registers which
report AGP 4x is supported and enabled, but the extra features (FW and
SBA) can not be enabled.



As for IDE, I can make it work in PIO Mode 4, Ultra DMA Mode 2 (66MHz),
32-bit transfers, and enable write caching (pushing it to 25MB/sec)
using hdparm, but again the IDE (AMD-766) is not recognised and the IDE
driver defaults to generic IDE ot boot (16-bit, no DMA, no cache,
2.5MB/sec).

The SCSI controllers work like a champ as do the onboard NICs (3c980
TX).

PGA


-- 
Paul G. Allen
UNIX Admin II/Network Security
Akamai Technologies, Inc.
www.akamai.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2001-08-06  0:20 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <200108050019.f750J6t24095@antimatter.net>
2001-08-05 10:42 ` Dual Athlon, AGP, and PCI Paul G. Allen
     [not found]   ` <20010805095853.04315de4.dlooney1@home.com>
2001-08-06  0:15     ` Paul G. Allen
2001-08-05  3:52 Paul G. Allen
  -- strict thread matches above, loose matches on Subject: below --
2001-08-02  9:21 Paul G. Allen
2001-08-02 13:15 ` Joshua M. Thompson
2001-08-03  4:42 ` Agus Budy Wuysang
     [not found] ` <3B6939BA.30001@fugmann.dhs.org>
     [not found]   ` <3B693D6F.AD0DB931@randomlogic.com>
2001-08-03 11:37     ` Anders Peter Fugmann
2001-08-04  0:12       ` Paul G. Allen
2001-08-03 12:19   ` Paul G. Allen
2001-08-04 10:42     ` Vojtech Pavlik
2001-08-04 20:20       ` Paul G. Allen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).