Re: [patch] PCI Express Enhanced Config Patch - 2.6.0-test11

From: Matthew Wilcox
Date: Sun Feb 01 2004 - 00:12:03 EST


On Sat, Jan 31, 2004 at 02:57:29PM -0700, Eric W. Biederman wrote:
> Is it really safe to treat the base address as a u32? I know
> if I was doing the BIOS and that address was tied to a 32bit BAR I
> would be extremely tempted to put those 256M of address space above
> 4G. Putting something like that below 4G leads to 1/2 Gig of memory
> missing.

This is actually a Linux limitation -- we're pretty bad at dealing with
64-bit BARs on 32-bit architectures. There's two interfaces to get
at it -- ioremap() and set_fixmap(). Both of these interfaces take an
unsigned long to describe a physical address.

> Point being I don't think it is safe to assume the BIOS always puts
> the extended PCI configuration space below 4G.

MCFG isn't described in any released version of the ACPI spec, so I
don't know whether it's even possible for it to be a 64-bit address.
There's a reserved field that might be used for the upper 32 bits.

--
"Next the statesmen will invent cheap lies, putting the blame upon
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince
himself that the war is just, and will thank God for the better sleep
he enjoys after this process of grotesque self-deception." -- Mark Twain
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/