1
2
3
4
5
6
7
8
9
10#ifndef KVM_S390X_H
11#define KVM_S390X_H
12
13#include "cpu-qom.h"
14
15struct kvm_s390_irq;
16
17void kvm_s390_floating_interrupt_legacy(struct kvm_s390_irq *irq);
18void kvm_s390_vcpu_interrupt(S390CPU *cpu, struct kvm_s390_irq *irq);
19void kvm_s390_access_exception(S390CPU *cpu, uint16_t code, uint64_t te_code);
20int kvm_s390_mem_op(S390CPU *cpu, vaddr addr, uint8_t ar, void *hostbuf,
21 int len, bool is_write);
22void kvm_s390_program_interrupt(S390CPU *cpu, uint16_t code);
23int kvm_s390_set_cpu_state(S390CPU *cpu, uint8_t cpu_state);
24void kvm_s390_vcpu_interrupt_pre_save(S390CPU *cpu);
25int kvm_s390_vcpu_interrupt_post_load(S390CPU *cpu);
26int kvm_s390_get_ri(void);
27int kvm_s390_get_gs(void);
28int kvm_s390_get_clock(uint8_t *tod_high, uint64_t *tod_clock);
29int kvm_s390_get_clock_ext(uint8_t *tod_high, uint64_t *tod_clock);
30int kvm_s390_set_clock(uint8_t tod_high, uint64_t tod_clock);
31int kvm_s390_set_clock_ext(uint8_t tod_high, uint64_t tod_clock);
32void kvm_s390_enable_css_support(S390CPU *cpu);
33int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
34 int vq, bool assign);
35int kvm_s390_cmma_active(void);
36void kvm_s390_cmma_reset(void);
37void kvm_s390_reset_vcpu(S390CPU *cpu);
38int kvm_s390_set_mem_limit(uint64_t new_limit, uint64_t *hw_limit);
39void kvm_s390_set_max_pagesize(uint64_t pagesize, Error **errp);
40void kvm_s390_crypto_reset(void);
41void kvm_s390_restart_interrupt(S390CPU *cpu);
42void kvm_s390_stop_interrupt(S390CPU *cpu);
43
44#endif
45