View Single Post
Old 08-14-03, 10:09 PM   #23
Registered User
Join Date: Aug 2002
Location: NC, US
Posts: 55

Do I just add...
alias char-major-10-175 agpgart
options agpgart agp_try_unsupported=1 the bottom of the file?
I believe that should do it. The only thing I can't verify offhand are the major and minor device numbers, but I really do think that kareemy has his ducks in a row here.

I would be willing to give it a shot if you are willing to help me out. From most of the posts it seems that I could get even better performance out of the nvidia one.
Well, here goes:

The first change needs to be made to the nv.c file. Here is a portion of the file:

static struct host_bridge_t known_hosts[]  = {
    { PCI_VENDOR_ID_AL,     0x1541,  "ALi M1541            " },
    /* Skipping lots of records here for brevity... */
    { PCI_VENDOR_ID_SI,     0x0000,  "SiS (unknown)        " },
    { PCI_VENDOR_ID_VIA,    0x0391,  "Via Apollo Pro KX133 " },
    { PCI_VENDOR_ID_VIA,    0x0305,  "Via Apollo Pro KT133 " },
    { PCI_VENDOR_ID_VIA,    0x3099,  "Via Apollo Pro KT266 " },
    { PCI_VENDOR_ID_VIA,    0x0691,  "Via Apollo Pro       " },
    { PCI_VENDOR_ID_VIA,    0x0501,  "Via MVP4             " },
    { PCI_VENDOR_ID_VIA,    0x0597,  "Via VP3              " },
    { PCI_VENDOR_ID_VIA,    0x0598,  "Via MVP3             " },
    { PCI_VENDOR_ID_VIA,    0x,0605, "Via ProSavage PM133  " },
    { PCI_VENDOR_ID_VIA,    0x0000,  "Via (unknown)        " },
    { 0x0000,               0x0000,  "Unkown Host Bridge   " },
The portion in bold is what you need to add to your file. (Please note that this little snippet, like the one form a prior post, is from the 4191 driver. Yours may differ slightly.) This change should get the nVidia driver to recognize your chipset.

Once that is done, however, I would recommend a couple of additional tweaks. Some Via chipsets--particularly int eh 133 series had a couple issues nVidia had to reduce the AGP rate for. For starters, it would be smart to do the same here. The driver might not be able to do it automatically, as it probably has no provisions to test for your individual chipset. As a result, I would recommend starting off with a maximum of AGP 2x, and then testing higher values later if that works (and you're inclined to experiment). To do this, you will need to edit the os-registry.c file.

According to the readme, there are two lines you will need to change. Here is the first one:

static int NVreg_ReqAGPRate = 7;
You will need to change the "7" to the desired value. The value should be the sum of the AGP settings you are willing to let the driver use. For example 4 + 2 + 1 = 7, so the default value indicates that the driver should be willing to use AGP 4x, 2x, or 1x. I recommend you let the driver run in 2x or 1x (but not 4x), which would require a value of 3.

With this done, you will need to change the line in bold in the following code:

nv_parm_t nv_parms[] = {
    { NULL, "__VideoMemoryTypeOverride",  &NVreg_VideoMemoryTypeOverride  },
    { NULL, "ResmanDebugLevel",           &NVreg_ResmanDebugLevel         },
    { NULL, "EnableVia4x",                &NVreg_EnableVia4x              },
    { NULL, "EnableALiAGP",               &NVreg_EnableALiAGP             },
    { NULL, "UpdateKernelAGP",            &NVreg_UpdateKernelAGP          },
    { NULL, "__ReqAGPRate",               &NVreg_ReqAGPRate               },
    { NULL, "EnableAGPSBA",               &NVreg_EnableAGPSBA             },
    { NULL, "EnableAGPFW",                &NVreg_EnableAGPFW              },
    { NULL, "SoftEDIDs",                  &NVreg_SoftEDIDs                },
    { NULL, "Mobile",                     &NVreg_Mobile                   },
    { NULL, "FlatPanelMode",              &NVreg_FlatPanelMode            },
    { NULL, NULL,                         NULL                            }
This line should be changed to

    { NULL, "ReqAGPRate",               &NVreg_ReqAGPRate               },
After that, you will need to compile the kernel module per the instructions, unload AGPGART, set nvAGP to "1", and start testing. Good luck!
etr is offline   Reply With Quote