15c3d55faSPekka Enberg #ifndef KVM__KVM_CPU_H 25c3d55faSPekka Enberg #define KVM__KVM_CPU_H 35c3d55faSPekka Enberg 4af7b0868SMatt Evans #include "kvm/kvm-cpu-arch.h" 5341ee0d4SMatt Evans #include <stdbool.h> 65c3d55faSPekka Enberg 7df4239fbSSasha Levin int kvm_cpu__init(struct kvm *kvm); 8df4239fbSSasha Levin int kvm_cpu__exit(struct kvm *kvm); 9df4239fbSSasha Levin struct kvm_cpu *kvm_cpu__arch_init(struct kvm *kvm, unsigned long cpu_id); 1043835ac9SSasha Levin void kvm_cpu__delete(struct kvm_cpu *vcpu); 1143835ac9SSasha Levin void kvm_cpu__reset_vcpu(struct kvm_cpu *vcpu); 1243835ac9SSasha Levin void kvm_cpu__setup_cpuid(struct kvm_cpu *vcpu); 1343835ac9SSasha Levin void kvm_cpu__enable_singlestep(struct kvm_cpu *vcpu); 1443835ac9SSasha Levin void kvm_cpu__run(struct kvm_cpu *vcpu); 15df4239fbSSasha Levin void kvm_cpu__reboot(struct kvm *kvm); 1665bab644SPekka Enberg int kvm_cpu__start(struct kvm_cpu *cpu); 17341ee0d4SMatt Evans bool kvm_cpu__handle_exit(struct kvm_cpu *vcpu); 18*19d98215SMarc Zyngier int kvm_cpu__get_endianness(struct kvm_cpu *vcpu); 195c3d55faSPekka Enberg 20b7d2f013SSasha Levin int kvm_cpu__get_debug_fd(void); 21b7d2f013SSasha Levin void kvm_cpu__set_debug_fd(int fd); 2243835ac9SSasha Levin void kvm_cpu__show_code(struct kvm_cpu *vcpu); 2343835ac9SSasha Levin void kvm_cpu__show_registers(struct kvm_cpu *vcpu); 2443835ac9SSasha Levin void kvm_cpu__show_page_tables(struct kvm_cpu *vcpu); 254b1c6f6eSSasha Levin void kvm_cpu__arch_nmi(struct kvm_cpu *cpu); 265c3d55faSPekka Enberg 275c3d55faSPekka Enberg #endif /* KVM__KVM_CPU_H */ 28