qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [ARM] mmu table base address 0 not necessarily 16k-aligned


From: Junjie Cai
Subject: [Qemu-devel] [ARM] mmu table base address 0 not necessarily 16k-aligned
Date: Sat, 17 May 2008 18:53:23 +0900

Dear List,

I found that in target-arm/helper.c
get_phys_addr_v6() always align the
mmu table base address to 16K.
But it is not true if c2_mask is set.
I tried to make a patch below, please consider.

Index: qemu-0.9.1/target-arm/helper.c
===================================================================
--- qemu-0.9.1.orig/target-arm/helper.c 2008-05-17 18:24:38.000000000
+0900
+++ qemu-0.9.1/target-arm/helper.c      2008-05-17 18:45:12.000000000 +0900
@@ -912,7 +912,7 @@
         table = env->cp15.c2_base1;
     else
         table = env->cp15.c2_base0;
-    table = (table & 0xffffc000) | ((address >> 18) & 0x3ffc);
+    table = (table & 0xffffffe0) | ((address >> 18) & 0x3ffc);
     desc = ldl_phys(table);
     type = (desc & 3);
     if (type == 0) {


Thanks.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]