1 /* 2 * This program is free software; you can redistribute it and/or modify 3 * it under the terms of the GNU General Public License, version 2, as 4 * published by the Free Software Foundation. 5 * 6 * This program is distributed in the hope that it will be useful, 7 * but WITHOUT ANY WARRANTY; without even the implied warranty of 8 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 9 * GNU General Public License for more details. 10 * 11 * You should have received a copy of the GNU General Public License 12 * along with this program; if not, write to the Free Software 13 * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 14 * 15 * Copyright SUSE Linux Products GmbH 2010 16 * 17 * Authors: Alexander Graf <agraf@suse.de> 18 */ 19 20 #ifndef __ASM_KVM_BOOK3S_32_H__ 21 #define __ASM_KVM_BOOK3S_32_H__ 22 23 static inline struct kvmppc_book3s_shadow_vcpu *svcpu_get(struct kvm_vcpu *vcpu) 24 { 25 return vcpu->arch.shadow_vcpu; 26 } 27 28 static inline void svcpu_put(struct kvmppc_book3s_shadow_vcpu *svcpu) 29 { 30 } 31 32 #define PTE_SIZE 12 33 #define VSID_ALL 0 34 #define SR_INVALID 0x00000001 /* VSID 1 should always be unused */ 35 #define SR_KP 0x20000000 36 #define PTE_V 0x80000000 37 #define PTE_SEC 0x00000040 38 #define PTE_M 0x00000010 39 #define PTE_R 0x00000100 40 #define PTE_C 0x00000080 41 42 #define SID_SHIFT 28 43 #define ESID_MASK 0xf0000000 44 #define VSID_MASK 0x00fffffff0000000ULL 45 #define VPN_SHIFT 12 46 47 #endif /* __ASM_KVM_BOOK3S_32_H__ */ 48