liquidzoo Posted September 6, 2004 Report Share Posted September 6, 2004 Ok, I upgraded to kernel-2.6.8.1-8mdk recently. This is the kernel that comes with 10.1 RC1 for those that don't know. Now I have a problem....The nvidia drivers won't install. Not only that, but when I boot into my older kernel (source is still installed) the drivers won't install there either (and they seem to have been uninstalled) due to a supposedly missing kernel.h file. Ok, on to the nitty-gritty, so to speak. Here's the last few lines from my /var/log/nvidia-installer.log: /root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c: In func tion `nv_acpi_event': /root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c:3697: er ror: `PM_SAVE_STATE' undeclared (first use in this function) /root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c:3697: er ror: (Each undeclared identifier is reported only once /root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c:3697: er ror: for each function it appears in.) make[4]: *** [/root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv /nv.o] Error 1 make[3]: *** [_module_/root/tmp/selfgz7502/NVIDIA-Linux-x86-1.0-6111-pkg1/us r/src/nv] Error 2 make[2]: *** [modules] Error 2 NVIDIA: left KBUILD. nvidia.ko failed to build! make[1]: *** [module] Error 1 make: *** [module] Error 2 -> Error. Can anyone help? These are the 6111 drivers, but it's the same message with the 6106 drivers. [moved from Software by spinynorman] Quote Link to comment Share on other sites More sharing options...
devries Posted September 6, 2004 Report Share Posted September 6, 2004 I don't think it is possible for a driver to spontanously uninstall :D. Do you still have the nvidia-installer command? If yes the driver should still be installed. Try nvidia-installer -K. That way the driver isn't build -K, --kernel-module-only Install a kernel module only, and don't uninstall the existing driver. This is intended to be used to install kernel modules for additional kernels (in cases where you might boot between several different kernels). To use this option, you must already have a driver installed, and the version of the installed driver must match the version of this kernel module. Good luck Quote Link to comment Share on other sites More sharing options...
thinkliberty Posted September 6, 2004 Report Share Posted September 6, 2004 (edited) 1Try passing 'pci=routeirq' to the kernel at boot time. (by typing it in at the boot prompt without the quote marks) 2 Try installing the nvida driver from run level 1 (type: init 1 <as root>) Make sure it is not already loaded using lsmod to check 3 If that does not work there is a patch that nvidia posted to the lkml by Terence Ripperda on Mon, 23 Aug 2004... nv_enable_pci.patch --- nv/nv.c 2004-08-23 13:58:15.000000000 -0500 +++ nv.new/nv.c 2004-08-23 13:58:35.000000000 -0500 @@ -1225,6 +1225,7 @@ { nv_state_t *nv = NV_STATE_PTR(&nv_linux_devices[i]); release_mem_region(nv->bar.regs.address, nv->bar.regs.size); + pci_disable_device(nv_linux_devices[i].dev); } } @@ -3516,6 +3517,28 @@ return -1; } + // enable io, mem, and bus-mastering in pci config space + if (pci_enable_device(dev) != 0) + { + nv_printf(NV_DBG_ERRORS, + "NVRM: pci_enable_device failed, aborting\n"); + return -1; + } + + // request ownership of our bars + // keeps other drivers from banging our registers. + // only do this for registers, as vesafb requests our framebuffer and will + // keep us from working properly + if (!request_mem_region(dev->resource[0].start, + dev->resource[0].end - dev->resource[0].start + 1, + "nvidia")) + { + nv_printf(NV_DBG_ERRORS, + "NVRM: pci_request_regions failed, aborting\n"); + goto err_disable_dev; + } + pci_set_master(dev); + /* initialize bus-dependent config state */ nvl = &nv_linux_devices[num_nv_devices]; nv = NV_STATE_PTR(nvl); @@ -3545,7 +3568,7 @@ nv_printf(NV_DBG_ERRORS, "NVRM: Please check your BIOS settings. \n"); nv_printf(NV_DBG_ERRORS, "NVRM: [Plug & Play OS ] should be set to NO \n"); nv_printf(NV_DBG_ERRORS, "NVRM: [Assign IRQ to VGA] should be set to YES \n"); - return -1; + goto err_zero_dev; } /* sanity check the IO apertures */ @@ -3569,39 +3592,9 @@ nv->bar.fb.address, nv->bar.fb.size); } - /* Clear out the data */ - os_mem_set(nvl, 0, sizeof(nv_linux_state_t)); - - return -1; - } - - // request ownership of our bars - // keeps other drivers from banging our registers. - // only do this for registers, as vesafb requests our framebuffer and will - // keep us from working properly - if (!request_mem_region(nv->bar.regs.address, nv->bar.regs.size, "nvidia")) - { - nv_printf(NV_DBG_ERRORS, - "NVRM: pci_request_regions failed, aborting\n"); - - /* Clear out the data */ - os_mem_set(nvl, 0, sizeof(nv_linux_state_t)); - - return -1; + goto err_zero_dev; } - // enable io, mem, and bus-mastering in pci config space - if (pci_enable_device(dev) != 0) - { - nv_printf(NV_DBG_ERRORS, - "NVRM: pci_enable_device failed, aborting\n"); - - pci_release_regions(dev); - os_mem_set(nvl, 0, sizeof(nv_linux_state_t)); - - return -1; - } - pci_set_master(nvl->dev); #if defined(NV_BUILD_NV_PAT_SUPPORT) if (nvos_find_pci_express_capability(nvl->dev)) @@ -3618,13 +3611,7 @@ if (nv->bar.regs.map == NULL) { nv_printf(NV_DBG_ERRORS, "NVRM: failed to map registers!!\n"); - - pci_release_regions(dev); - - /* Clear out the data */ - os_mem_set(nvl, 0, sizeof(nv_linux_state_t)); - - return -1; + goto err_zero_dev; } nv->flags |= NV_FLAG_MAP_REGS_EARLY; #endif @@ -3641,6 +3628,15 @@ num_nv_devices++; return 0; + +err_zero_dev: + os_mem_set(nvl, 0, sizeof(nv_linux_state_t)); + release_mem_region(dev->resource[0].start, + dev->resource[0].end - dev->resource[0].start + 1); + +err_disable_dev: + pci_disable_device(dev); + return -1; } int NV_API_CALL nv_no_incoherent_mappings Edited September 6, 2004 by thinkliberty Quote Link to comment Share on other sites More sharing options...
liquidzoo Posted September 6, 2004 Author Report Share Posted September 6, 2004 devries - tried that, still nothing thinkliberty - it's an AGP card, why would a pci patch make a difference? Quote Link to comment Share on other sites More sharing options...
liquidzoo Posted September 6, 2004 Author Report Share Posted September 6, 2004 Ok, I found that for some reason I had the kernel source from 2.6.8.1.2mdk downloaded. I'm not sure why, but I installed it (rpm -ivh), booted back into that kernel and everything's fine now... But this brings me to an interesting point and I'll make a post in Everything Linux about it. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.