1 /* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * commpage, currently used for Virtual COP0 registers. 7 * Mapped into the guest kernel @ KVM_GUEST_COMMPAGE_ADDR. 8 * 9 * Copyright (C) 2012 MIPS Technologies, Inc. All rights reserved. 10 * Authors: Sanjay Lal <sanjayl@kymasys.com> 11 */ 12 13 #include <linux/errno.h> 14 #include <linux/err.h> 15 #include <linux/vmalloc.h> 16 #include <linux/fs.h> 17 #include <linux/memblock.h> 18 #include <asm/page.h> 19 #include <asm/cacheflush.h> 20 #include <asm/mmu_context.h> 21 22 #include <linux/kvm_host.h> 23 24 #include "commpage.h" 25 kvm_mips_commpage_init(struct kvm_vcpu * vcpu)26void kvm_mips_commpage_init(struct kvm_vcpu *vcpu) 27 { 28 struct kvm_mips_commpage *page = vcpu->arch.kseg0_commpage; 29 30 /* Specific init values for fields */ 31 vcpu->arch.cop0 = &page->cop0; 32 } 33