Re: AGP mem resource is 64 bits, so no X ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



J.A. Magallón wrote:
Hi...

I have a box with a SuperMicro P4DCE+ mobo.
After an upgrade to the latest bios (v1.3, DC6P6273.zip), the kernel
(2.6.28-rc1-mm1) does not recognize the AGP card (an nvidia GeForce 6600 GT).
The propierary 'nvidia' driver does not load beacuse it says:

It is not 64bit AGP resource problem...

agpgart: Detected an Intel i860 Chipset.
agpgart: AGP aperture is 128M @ 0xe8000000

Hardware:

00:01.0 PCI bridge: Intel Corporation 82850 850 (Tehama) Chipset AGP Bridge (rev 04) (prog-if 00 [Normal decode])
	Memory behind bridge: f0000000-f2ffffff
	Prefetchable memory behind bridge: d8000000-e7ffffff

00:02.0 PCI bridge: Intel Corporation 82860 860 (Wombat) Chipset AGP Bridge (rev 04) (prog-if 00 [Normal decode])
	Memory behind bridge: f3000000-f4ffffff
	Prefetchable memory behind bridge: 50000000-501fffff

01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600/GeForce 6600 GT] (rev a2) (prog-if 00 [VGA])
	Memory at f0000000 (32-bit, non-prefetchable) [size=16M]
	Memory at <ignored> (32-bit, prefetchable)
	Memory at f1000000 (32-bit, non-prefetchable) [size=16M]
	[virtual] Expansion ROM at d8000000 [disabled] [size=128K]

Parts of dmesg:

PCI: Cannot allocate resource region 1 of device 0000:01:00.0
PCI: Failed to allocate mem resource #1:10000000@e0000000 for 0000:01:00.0

Any idea ?
Anyone has a previous BIOS ;) to share ?

It is just fatally confused BIOS. Your NVidia needs 256MB region for its framebuffer apperture, but BIOS assigned 256MB for it at 0xE0000000, and later it revoked second half of this assignment in favor of AGP aperture. Which on electrical level means that only first 128MB of nvidia will be accessible from CPU.

While Windows will probably just complain loudly that from specified 256MB range only 128MB is routed down to the adapter, and maybe even nvidia driver will cope with it, using only 128MB of RAM, for Linux (rightly so) adapter is unusable, as it wanted 256MB allocation for BAR1, but kernel could satisfy only 128MB without redoing all PCI address space layout.

Besides going back to older BIOS I would recommend using different AGP aperture size in the BIOS - with 256MB aperture I believe that you'll not trigger this BIOS bug.

If it won't help, then you can try fiddling with pcibios_resource_survey() - if you'll disable it, all resources should be assigned from scratch by pci_assign_unassigned_resources. This way kernel should be able to find 256MB chunk for adapter. To be able to use this aproach you definitely want to disable legacy (or any...) support for USB in the BIOS, you do not want to use vesa framebuffer, and maybe some other problems as well - it can break constants encoded into ACPI tables :-(
							Petr Vandrovec

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux