Bug 18844

Summary: XFree86 / Xconfigurator bails on nVidia GeForce2/MX; can't compile kernel for AGP support
Product: [Retired] Red Hat Linux Reporter: mr
Component: XFree86Assignee: Mike A. Harris <mharris>
Status: CLOSED DUPLICATE QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0JCC: duchida
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2001-02-08 04:57:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description mr 2000-10-10 19:07:15 UTC
Hello!  Couple things.  First, the bare-bones Redhat 7, out of the box, fresh install, misses configuring an nVidia GeForce 2/MX 
AGP video card (w/32mb).   (The motherboard is an Asus A7V/no audio.) However, it *does* correctly probe its type:

PCI probing found a:
     PCI Entry    : nVidia Corporation|NV11
     X  Server     : None
XFree4 driver    :  nv

Note the disconcerting "X Server: None".  XConfigurator can't recover.  It can't probe, and fails ("there was an error executing the 
X server in a probin mode").  Here are relevant excerpts from the postmortem left in  /var/log/XFree86.0.log:

XFree86 Version 4.0.1a / X Window System
(protocol Version 11, revision 0, vendor release 6400)
Release Date: 2 August 2000
Operating System: Linux 2.2.5-22smp i686 [ELF]
Module Loader present
(==) Log file: "/var/log/XFree86.0.log", Time: Tue Oct 10 13:09:35 2000
(==) Using config file: "/etc/X11/XF86Config-4"
...
...
(II) Module mouse: vendor="The XFree86 Project"
        compiled for 4.0.1a, module version = 1.0.0
        Module class: XFree86 XInput Driver
        ABI class: XFree86 XInput driver, version 0.1
(II) NV: driver for NVIDIA chipsets: RIVA128, RIVATNT, RIVATNT2,
        RIVATNT2 (Ultra), RIVATNT2 (Vanta), RIVATNT2 M64,
        RIVATNT2 (Integrated), GeForce 256, GeForce DDR, Quadro, GeForce 2
(II) Primary Device is: PCI 01:00:0
(EE) No devices detected.

Fatal server error:
no screens found

--

I then remembered that I could compile support for AGP into the kernel.  So these are defined in /usr/src/linux/.config:

# CONFIG_I2C is not set
CONFIG_AGP=y
CONFIG_AGP_INTEL=y
CONFIG_AGP_I810=y
CONFIG_AGP_VIA=y
CONFIG_AGP_AMD=y
CONFIG_AGP_SIS=y
CONFIG_AGP_ALI=y
# CONFIG_DRM is not set

a "make dep; make clean" is performed after the "make config."  Then a "make install" bombs on the AGP section (ar: 
agp/agpgart.o: No such file or directory):

[root@micron linux]# make install
kgcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-s
trict-aliasing -pipe -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2
-DCPU=686 -DUTS_MACHINE='"i386"' -c -o init/version.o init/version.c
make -C  kernel
make[1]: Entering directory `/usr/src/linux-2.2.16/kernel'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.16/kernel'
make[2]: Leaving directory `/usr/src/linux-2.2.16/kernel'
make[1]: Leaving directory `/usr/src/linux-2.2.16/kernel'
make -C  drivers
make[1]: Entering directory `/usr/src/linux-2.2.16/drivers'
make -C block
make[2]: Entering directory `/usr/src/linux-2.2.16/drivers/block'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.16/drivers/block'
make[3]: Leaving directory `/usr/src/linux-2.2.16/drivers/block'
make[2]: Leaving directory `/usr/src/linux-2.2.16/drivers/block'
make -C char
make[2]: Entering directory `/usr/src/linux-2.2.16/drivers/char'
make -C agp
make[3]: Entering directory `/usr/src/linux-2.2.16/drivers/char/agp'
make all_targets
make[4]: Entering directory `/usr/src/linux-2.2.16/drivers/char/agp'
make[4]: Nothing to be done for `all_targets'.
make[4]: Leaving directory `/usr/src/linux-2.2.16/drivers/char/agp'
make[3]: Leaving directory `/usr/src/linux-2.2.16/drivers/char/agp'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.16/drivers/char'
rm -f char.a
ar  rcs char.a pty.o misc.o console.o selection.o serial.o keyboard.o sysrq.o tty_io.o n_tty.o tty_i
octl.o mem.o random.o raw.o vt.o vc_screen.o consolemap.o consolemap_deftbl.o pc_keyb.o defkeymap.o
lp.o rtc.o agp/agpgart.o
ar: agp/agpgart.o: No such file or directory
make[3]: *** [char.a] Error 1
make[3]: Leaving directory `/usr/src/linux-2.2.16/drivers/char'
make[2]: *** [first_rule] Error 2
make[2]: Leaving directory `/usr/src/linux-2.2.16/drivers/char'
make[1]: *** [_subdir_char] Error 2
make[1]: Leaving directory `/usr/src/linux-2.2.16/drivers'
make: *** [_dir_drivers] Error 2

Now what?  

--Michael Regoli
mr

Comment 1 Greg Humphreys 2000-10-12 15:19:02 UTC
Our group at Stanford has done a whole lot experimenting with NVIDIA cards and 
XFree4, and it seems that the "nvidia" driver that comes with XFree 4.0 doesn't 
support/detect anything *later* than the GeForce (i.e., your card).  We have 
had good success with NVIDIA's drivers (i.e., the ones from nvidia.com), 
although they're still working on releasing RPM's for RH 7.0.

Comment 2 mr 2000-10-12 19:23:10 UTC
Thanks for the feedback!  Someone suggested that I modify 
/usr/X11R6/lib/modules/drivers/nv_drv.o at offset 0x10F1

it reads  50,01,DE,10 (PCI Vendor 0x10DE=NVidia, Device 0x0150=GeForce 2
GTS)
Modify in 10,01,DE,10 (PCI Vendor 0x10DE=NVidia, Device 0x0110=GeForce 2
MX)

And do the same at offset 0x8BAC, 0x8C34 and 0x8C38.

How do I do this?

I realize it's not a "supported" technique, but I have heard that it works.   It changes the GeForce 2 GTS ID to
the GeForce 2 MX ID, so the GTS will not work with the modified driver. 

The person suggesting it used this "trick" with XFree86 3.3.6 (RedHat 6.2) with an ASUS V7700
Deluxe (Changed Quadro ID to GeForce 2 GTS ID) for quite a while without any problems!

Thanks!

--Michael Regoli (mr)



Comment 3 John Strange 2001-02-08 04:56:53 UTC
Nvidia has released new rpm's for the GeForce 2/MX series of cards that work
fine although they seem to have some problems with Redhat 7.09 (Fisher) release.

Comment 4 John Strange 2001-02-08 04:57:37 UTC
Nvidia has released new rpm's for the GeForce 2/MX series of cards that work
fine although they seem to have some problems with Redhat 7.09 (Fisher) release.

Comment 5 Preston Brown 2001-02-26 19:00:10 UTC

*** This bug has been marked as a duplicate of 17290 ***