/* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, as * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * Copyright SUSE Linux Products GmbH 2009 * * Authors: Alexander Graf */ #ifndef __ASM_KVM_BOOK3S_ASM_H__ #define __ASM_KVM_BOOK3S_ASM_H__ #ifdef CONFIG_KVM_BOOK3S_64_HANDLER #include .macro DO_KVM intno .if (\intno == BOOK3S_INTERRUPT_SYSTEM_RESET) || \ (\intno == BOOK3S_INTERRUPT_MACHINE_CHECK) || \ (\intno == BOOK3S_INTERRUPT_DATA_STORAGE) || \ (\intno == BOOK3S_INTERRUPT_INST_STORAGE) || \ (\intno == BOOK3S_INTERRUPT_DATA_SEGMENT) || \ (\intno == BOOK3S_INTERRUPT_INST_SEGMENT) || \ (\intno == BOOK3S_INTERRUPT_EXTERNAL) || \ (\intno == BOOK3S_INTERRUPT_ALIGNMENT) || \ (\intno == BOOK3S_INTERRUPT_PROGRAM) || \ (\intno == BOOK3S_INTERRUPT_FP_UNAVAIL) || \ (\intno == BOOK3S_INTERRUPT_DECREMENTER) || \ (\intno == BOOK3S_INTERRUPT_SYSCALL) || \ (\intno == BOOK3S_INTERRUPT_TRACE) || \ (\intno == BOOK3S_INTERRUPT_PERFMON) || \ (\intno == BOOK3S_INTERRUPT_ALTIVEC) || \ (\intno == BOOK3S_INTERRUPT_VSX) b kvmppc_trampoline_\intno kvmppc_resume_\intno: .endif .endm #else .macro DO_KVM intno .endm #endif /* CONFIG_KVM_BOOK3S_64_HANDLER */ #endif /* __ASM_KVM_BOOK3S_ASM_H__ */