[IA64] Kexec: Set page size identity mapping of EFI in alt_itlb_miss

Set page size identity mapping of EFI in alt_itlb_miss
This will also set the page size for identity mapped EFI memory
handled by itlb_miss, as it branches to alt_itlb_miss.

Without this HP rx3600 machines will hang after freeing
init memory.

It is also possible to implement this change in itlb_miss,
but the more comprehensive approach seems beeter to me.

Cc: Isaku Yamahata <yamahata@valinux.co.jp>
Cc: Tristan Gingold <tgingold@free.fr>
Signed-off-by: Simon Horman <horms@verge.net.au>

Index: xen-unstable.hg/xen/arch/ia64/xen/ivt.S
===================================================================
--- xen-unstable.hg.orig/xen/arch/ia64/xen/ivt.S	2008-02-05 16:18:56.000000000 +0900
+++ xen-unstable.hg/xen/arch/ia64/xen/ivt.S	2008-02-05 16:18:57.000000000 +0900
@@ -194,14 +194,16 @@ late_alt_itlb_miss:
 (p7)	movl r17=(__DIRTY_BITS | _PAGE_AR_RWX)
 	movl r19=(((1 << IA64_MAX_PHYS_BITS) - 1) & ~0xfff)
 	;;
-	mov r20=cr.itir
+	movl r20=(PAGE_SHIFT << 2)
 	extr.u r23=r21,IA64_PSR_CPL0_BIT,2	// extract psr.cpl
 	and r19=r19,r16		// clear ed, reserved bits, and PTE ctrl bits
 	extr.u r18=r16,XEN_VIRT_UC_BIT,1	// extract UC bit
 	;;
 	cmp.ne p8,p0=r0,r23	// psr.cpl != 0?
 	or r19=r17,r19		// insert PTE control bits into r19
-	dep r20=0,r20,IA64_ITIR_KEY,IA64_ITIR_KEY_LEN	// clear the key 
+	;;
+(p6)	movl r20=(IA64_GRANULE_SHIFT << 2)
+(p7)	movl r20=(IA64_GRANULE_SHIFT << 2)
 	;;
 	dep r19=r18,r19,4,1	// set bit 4 (uncached) if access to UC area.
 	mov cr.itir=r20		// set itir with cleared key
