WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] [patch 05/12] ia64: Add identity mapping of EFI memory

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [patch 05/12] ia64: Add identity mapping of EFI memory to dtlb_miss
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: Tue, 27 Nov 2007 18:19:18 +0900
Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, Aron Griffis <aron@xxxxxx>, Alex Williamson <alex.williamson@xxxxxx>
Delivery-date: Tue, 27 Nov 2007 01:37:00 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20071127091913.832166139@xxxxxxxxxxxx>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: quilt/0.46-1
Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Cc: Tristan Gingold <tgingold@xxxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

Index: 20071119-ia64/xen/arch/ia64/xen/ivt.S
===================================================================
--- 20071119-ia64.orig/xen/arch/ia64/xen/ivt.S  2007-11-25 21:37:45.000000000 
-0700
+++ 20071119-ia64/xen/arch/ia64/xen/ivt.S       2007-11-25 21:44:37.000000000 
-0700
@@ -138,6 +138,28 @@
        /* If address belongs to VMM, go to alt tlb handler */
        cmp.eq p6,p0=0x1e,r17
 (p6)   br.cond.spnt    late_alt_dtlb_miss
+
+       // If it is an EFI address then must have XEN_EFI_RID set
+       // And if that is true, go to alt tlb handler
+       // (r17 == 0x18 && rr[6] == XEN_EFI_RID) ||
+       // (r17 == 0x1c && rr[7] == XEN_EFI_RID)
+       mov r23=6
+       mov r24=7
+       ;;
+       mov r23=rr[r23]
+       mov r24=rr[r24]
+       ;;
+       mov r25=XEN_EFI_RID
+       cmp.eq p8,p0=0x18,r17           // 0xc...
+       cmp.eq p9,p0=0x1c,r17           // 0xe...
+       ;;
+       cmp.eq.and p8,p0=r25,r23        // rr[6] == XEN_EFI_RID
+       cmp.eq.and p9,p0=r25,r24        // rr[7] == XEN_EFI_RID
+       ;;
+(p8)   br.cond.spnt late_alt_dtlb_miss
+(p9)   br.cond.spnt late_alt_dtlb_miss
+       ;;
+
        br.cond.sptk fast_tlb_miss_reflect
        ;;
 END(dtlb_miss)

-- 

-- 
Horms


_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel