alpha: use single HAE window on T2 core logic (gamma, sable)
authorIvan Kokshaysky <ink@jurassic.park.msu.ru>
Tue, 26 Oct 2010 21:22:17 +0000 (14:22 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 26 Oct 2010 23:52:12 +0000 (16:52 -0700)
commit98c532ecbe582586e204688c6cde7e27580cc43f
tree6659f979076730695af09d9e3653074a6d9643c3
parent947272dd3e959c69ff0fc54e62e44163b729b796
alpha: use single HAE window on T2 core logic (gamma, sable)

T2 are the only alpha SMP systems that do HAE switching at runtime, which
is fundamentally racy on SMP.  This patch limits MMIO space on T2 to HAE0
only, like we did on MCPCIA (rawhide) long ago.  This leaves us with only
112 Mb of PCI MMIO (128 Mb HAE aperture minus 16 Mb reserved for EISA),
but since linux PCI allocations are reasonably tight, it should be enough
for sane hardware configurations.

Also, fix a typo in MCPCIA_FROB_MMIO macro which shouldn't call set_hae()
if MCPCIA_ONE_HAE_WINDOW is defined.  It's more for correctness, as
set_hae() is a no-op anyway in that case.

Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/alpha/include/asm/core_mcpcia.h
arch/alpha/include/asm/core_t2.h
arch/alpha/kernel/core_t2.c
arch/alpha/kernel/machvec_impl.h