Re: [Fwd: Re: [PATCH 0/5]PCI: x86 MMCONFIG]

From: Tony Camuso
Date: Thu Dec 20 2007 - 13:30:37 EST


Matthew Wilcox wrote:

Bad deduction. What's happening is that the write to the BAR is causing
it to overlap the decode for mmconfig space. So the mmconfig write to
set the BAR back never gets through.

I have a different idea to fix this problem. Instead of writing
0xffffffff, we could look for an unused bit of space in the E820 map and
write, say, 0xdfffffff to the low 32-bits of a BAR. Then it wouldn't
overlap, and we could find its size using MMCONFIG.

The BAR claims to be a 64-bit BAR.

Does anyone know how Windows handles these machines? Obviously, if it's
using MMCONFIG, it'd have the same problems. Does it just use type 1
for initial sizing? Or does it use type 1 for all accesses below 256
bytes?

As far as I know, Windows has a blacklist that limits systems with these
devices to legacy PCI config access.

--
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/