qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

kvm_s390x.h (2112B)


      1 /*
      2  * QEMU KVM support -- s390x specific functions.
      3  *
      4  * Copyright (c) 2009 Ulrich Hecht
      5  *
      6  * This work is licensed under the terms of the GNU GPL, version 2 or later.
      7  * See the COPYING file in the top-level directory.
      8  */
      9 
     10 #ifndef KVM_S390X_H
     11 #define KVM_S390X_H
     12 
     13 #include "cpu-qom.h"
     14 
     15 struct kvm_s390_irq;
     16 
     17 void kvm_s390_floating_interrupt_legacy(struct kvm_s390_irq *irq);
     18 void kvm_s390_vcpu_interrupt(S390CPU *cpu, struct kvm_s390_irq *irq);
     19 void kvm_s390_access_exception(S390CPU *cpu, uint16_t code, uint64_t te_code);
     20 int kvm_s390_mem_op(S390CPU *cpu, vaddr addr, uint8_t ar, void *hostbuf,
     21                     int len, bool is_write);
     22 int kvm_s390_mem_op_pv(S390CPU *cpu, vaddr addr, void *hostbuf, int len,
     23                        bool is_write);
     24 void kvm_s390_program_interrupt(S390CPU *cpu, uint16_t code);
     25 int kvm_s390_set_cpu_state(S390CPU *cpu, uint8_t cpu_state);
     26 void kvm_s390_vcpu_interrupt_pre_save(S390CPU *cpu);
     27 int kvm_s390_vcpu_interrupt_post_load(S390CPU *cpu);
     28 int kvm_s390_get_hpage_1m(void);
     29 int kvm_s390_get_protected_dump(void);
     30 int kvm_s390_get_ri(void);
     31 int kvm_s390_get_zpci_op(void);
     32 int kvm_s390_get_clock(uint8_t *tod_high, uint64_t *tod_clock);
     33 int kvm_s390_get_clock_ext(uint8_t *tod_high, uint64_t *tod_clock);
     34 int kvm_s390_set_clock(uint8_t tod_high, uint64_t tod_clock);
     35 int kvm_s390_set_clock_ext(uint8_t tod_high, uint64_t tod_clock);
     36 void kvm_s390_enable_css_support(S390CPU *cpu);
     37 int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
     38                                     int vq, bool assign);
     39 int kvm_s390_cmma_active(void);
     40 void kvm_s390_cmma_reset(void);
     41 void kvm_s390_reset_vcpu_clear(S390CPU *cpu);
     42 void kvm_s390_reset_vcpu_normal(S390CPU *cpu);
     43 void kvm_s390_reset_vcpu_initial(S390CPU *cpu);
     44 int kvm_s390_set_mem_limit(uint64_t new_limit, uint64_t *hw_limit);
     45 void kvm_s390_set_max_pagesize(uint64_t pagesize, Error **errp);
     46 void kvm_s390_crypto_reset(void);
     47 void kvm_s390_restart_interrupt(S390CPU *cpu);
     48 void kvm_s390_stop_interrupt(S390CPU *cpu);
     49 void kvm_s390_set_diag318(CPUState *cs, uint64_t diag318_info);
     50 
     51 #endif /* KVM_S390X_H */