I want to add a Quadro FX 1700 I picked up to my Thinkcentre A52 workstation. The OS is Windows XP Pro, and the card is detected but disabled in Windows Device Manager with an error code 12 (not enough resources).
I've tried downloading the Nvidia driver from both IBM/Lenovo and Nvidia. The Nvidia driver (v 18.104.22.1683) installed but didn't fix the problem. The IBM driver would not run, saying I did not have compatible hardware connected. When I try to run the NVIDIA config from the control panel, it says I don't have a display connected to the GPU and refuses to run. Device adapter properties show <unknown> or blank.
My display is connected with a DVI to VGA cable from the Nvidia card to the PC port on my TV, and it looks like VGASAVE is driving it. In the BIOS I have the video adapter set to PEG. (I did check for most update BIOS). I can't tell if the onboard Intel GPU is disabled or not when windows loads. There is a memory overlap between an Intel 945G device and the memory being used by VGASAVE which doesn't show up in device manager but can be seen on the advanced display settings from control panel.
This workstation MB has one PCIE 1x16, so from what I've read it SHOULD be compatible with the card, although the FX1700 is not specifically listed as compatible on the IBM/Lenovo web site. I think the motherboard is the Intel 945G. There seems to be no way I can manually change the resources allocated to the Nvidia card.
One interesting aside is that I have 3 GB of RAM installed but only 2.3 GB is available to the OS, I think because of something to do with GPU memory sharing. When I pull the Nvidia card, the OS has the full 3GB RAM available.
This is beyond my expertise. Any help is appreciated.
I'm using Win XP because that's what this machine was shipped with from the original refurbisher. It has XP for Refurbished PCs disc + key; I've had to use that once to reinstall the OS and it was unhappy about reactivating -- I finally did get it to activate -- so if possible I'd like to avoid doing it again just in case MSFT decides to ask for pound of flesh.
In the meantime, my powersupply is the original 310W IBM / OEM supply that the machine shipped with. There is nothing else in terms of expansion hardware that it is powering; my assumption was that it would be able to supply the 42W for the FX 1700 directly through the PCIE slot - I don't see anywhere on this Nvidia card where an axillary power supply would connect.
Sounds to me like there is something mixed up with the address remapping. Do you have any other unknown devices in device manager or something with an exclamation mark? Other chance is the BIOS. Are there any items not set to <auto> under PCI..whatever? And is there a parameter like "address remapping"? Background: it could be that this machine had special hardware like SCSI RAID controller before being refurbished and the BIOS was not reset. It shouldn't even hurt to simply load the BIOS defaults now. By the way: do you konow if the CMOS battery was renewed? If not, do it now. Can be part of the problem.
I was researching what you mentioned about the memory remapping and came across an explanation of the "3GB Barrier". This would explain why my usable memory is only about 2.3 GB to the OS, but I have 3 GB installed (I'll be sloppy and round down to 2.9): the difference is roughly equal to the onboard GPU memory (512 MB).... so something is getting remapped in the memory address table from system memory to GPU memory.
I'm going to try pulling out 1GB of the system RAM to see if that may be part of the problem. Seems like I should have thought about a 64 bit OS...
1) Reduced down the system memory to 2GB. No effect.
2) Went into the BIOS and reset all the device configs that could be to "auto". No effect. With Video Adapter set to PEG, it continues to register correctly as NVIDIA, but Windows still won't set it up due to insufficient resources (Error code 12).
3) Restored back my system using Windows Restore to the first "post activation" point where nothing had been done to any of the drivers except the ethernet driver. Even the Intel on board graphics driver wasn't set up correctly yet. Windows hardware wizard recognized the "new" hardware with the yellow "question mark" icon. I canceled from the windows add-hardware wizard and ran the NVIDIA ODE driver installer previously downloaded from their website. Reboot. Device manager now identifies the card as Nvidia Quadro FX 1700, but it's back to Error code 12.
Bottom line - after hours wasted I am back where I started from. I don't think there is any problem with the CMOS battery since every change I make in the BIOS is still there the next time I go in to it.
Next I will try plugging the card into another machine, but for now I am taking a day away from this annoying problem.
Is it possible I might need to go back to an older driver version for this card to match my older system / board?
Swapped the card into an HP workstation running windows 7 and it loaded up without any problems. They are using different OS and driver versions, so not a perfect comparison, but seems to confirm it is not a hardware issue with the NVIDIA card.
I'm going to try one more thing today and reinstall the drivers in safe mode and maybe I'll get lucky... I hesitate to outright uninstall the Intel 9455G drivers, since the device manager doesn't actually show them as conflicted and there is no "disable" option, only to completely "uninstall" them.
New development - when in safe mode, it at least gave me more information about the conflict. It shows a segment of memory allocated under the resources tab of my NVIDIA device with a red "slash" through it, and the description reads something like "Memory "80000000 to 9FFFFFFF" is not available". But when I change the view in device manager to view by resource, there is only the one NVIDIA entry listed for this memory segment so I can't tell what else is reserving that memory space...
Is it possible that a bad RAM module would cause this type or error 12 failure?
Oh my god I just remembered - you cannot have more than 1 GB of video RAM with 32 bit OS. How much memory does the FX 1700 have? Did the PC you tested the card in had 64 bit OS?
The FX 1700 has 512MB. But yes, the other machine was running 64bit OS.
I'm continuing to think it's a memory configuration issue regardless. Perhaps there is vRam already allocated to the onboard IGC (or some optional onboard IGC that shipped with other configurations of the A52) that might push it over the 1GB max?
When I look at the memory allocation list, the NVIDIA has several non-continuous and non-exclusive address spaces allocated to it. The Intel 945G PCIE bus driver occupies 90000000-b0ffffff, but overlapping that space the NVIDIA card is being allocated 80000000-9fffffff. The next allocated "block" from b1000000-b01fffff is allocated to the gigabit ethernet, and then there are two more blocks further on that are allocated to the NVIDIA card, as well as smaller gaps where memory seems to have not been allocated. Unfortunately nothing is being flagged in red or yellow so I can't tell if it's normal for the memory to overlap like this, or if it explains the "conflicts".
From what I can find about the 3GB barrier, it would seem that with 3GB system RAM installed, my OS should NOT need to skip any of my system RAM address space to accommodate addressing the 512MB on the PCIe GPU card as it should be able to draw on a 32bit address space that theoretically can address up to 4GB, but perhaps it doesn't work that way?? Or perhaps this IBM / Lenovo BIOS doesn't work that way...
It might be. I suppose OS upgrade is out of the question? Or even OS reinstall? If you could install retail windows instead of ones by your computer manufacturer, the problem may be fixed. I know a few occasions when custom windows didn't allow the PC owner to upgrade anything in his PC.
You could also download Ubuntu to your flash drive and boot from it - you don't have to install it - just check whether graphics card functions in there. That way you could figure whether it's a problem with your motherboard (which is possible).
Could you tell me where you check memory addresses allocation? I'll check it on my machine!