diff options
author | Sanjay Lal <sanjayl@kymasys.com> | 2012-11-21 21:34:06 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2013-05-07 21:55:35 -0400 |
commit | 03a0331c8c715c73d877aba8c542a60b13f70ed0 (patch) | |
tree | 4f37e78eefce1f0aaee96314e49856478cb2c923 /arch/mips/kvm | |
parent | 858dd5d4573353e2593f7ec6080bf09feeabcfc8 (diff) |
KVM/MIPS32: Release notes and KVM module Makefile
Signed-off-by: Sanjay Lal <sanjayl@kymasys.com>
Cc: kvm@vger.kernel.org
Cc: linux-mips@linux-mips.org
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kvm')
-rw-r--r-- | arch/mips/kvm/00README.txt | 31 | ||||
-rw-r--r-- | arch/mips/kvm/Makefile | 13 |
2 files changed, 44 insertions, 0 deletions
diff --git a/arch/mips/kvm/00README.txt b/arch/mips/kvm/00README.txt new file mode 100644 index 000000000000..51617e481aa3 --- /dev/null +++ b/arch/mips/kvm/00README.txt | |||
@@ -0,0 +1,31 @@ | |||
1 | KVM/MIPS Trap & Emulate Release Notes | ||
2 | ===================================== | ||
3 | |||
4 | (1) KVM/MIPS should support MIPS32R2 and beyond. It has been tested on the following platforms: | ||
5 | Malta Board with FPGA based 34K | ||
6 | Sigma Designs TangoX board with a 24K based 8654 SoC. | ||
7 | Malta Board with 74K @ 1GHz | ||
8 | |||
9 | (2) Both Guest kernel and Guest Userspace execute in UM. | ||
10 | Guest User address space: 0x00000000 -> 0x40000000 | ||
11 | Guest Kernel Unmapped: 0x40000000 -> 0x60000000 | ||
12 | Guest Kernel Mapped: 0x60000000 -> 0x80000000 | ||
13 | |||
14 | Guest Usermode virtual memory is limited to 1GB. | ||
15 | |||
16 | (2) 16K Page Sizes: Both Host Kernel and Guest Kernel should have the same page size, currently at least 16K. | ||
17 | Note that due to cache aliasing issues, 4K page sizes are NOT supported. | ||
18 | |||
19 | (3) No HugeTLB Support | ||
20 | Both the host kernel and Guest kernel should have the page size set to 16K. | ||
21 | This will be implemented in a future release. | ||
22 | |||
23 | (4) KVM/MIPS does not have support for SMP Guests | ||
24 | Linux-3.7-rc2 based SMP guest hangs due to the following code sequence in the generated TLB handlers: | ||
25 | LL/TLBP/SC. Since the TLBP instruction causes a trap the reservation gets cleared | ||
26 | when we ERET back to the guest. This causes the guest to hang in an infinite loop. | ||
27 | This will be fixed in a future release. | ||
28 | |||
29 | (5) Use Host FPU | ||
30 | Currently KVM/MIPS emulates a 24K CPU without a FPU. | ||
31 | This will be fixed in a future release | ||
diff --git a/arch/mips/kvm/Makefile b/arch/mips/kvm/Makefile new file mode 100644 index 000000000000..78d87bbc99db --- /dev/null +++ b/arch/mips/kvm/Makefile | |||
@@ -0,0 +1,13 @@ | |||
1 | # Makefile for KVM support for MIPS | ||
2 | # | ||
3 | |||
4 | common-objs = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o) | ||
5 | |||
6 | EXTRA_CFLAGS += -Ivirt/kvm -Iarch/mips/kvm | ||
7 | |||
8 | kvm-objs := $(common-objs) kvm_mips.o kvm_mips_emul.o kvm_locore.o \ | ||
9 | kvm_mips_int.o kvm_mips_stats.o kvm_mips_commpage.o \ | ||
10 | kvm_mips_dyntrans.o kvm_trap_emul.o | ||
11 | |||
12 | obj-$(CONFIG_KVM) += kvm.o | ||
13 | obj-y += kvm_cb.o kvm_tlb.o | ||