1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (C) 2012 - Virtual Open Systems and Columbia University
4 * Author: Christoffer Dall <c.dall@virtualopensystems.com>
7 #ifndef __ARM64_KVM_MMIO_H__
8 #define __ARM64_KVM_MMIO_H__
10 #include <linux/kvm_host.h>
11 #include <asm/kvm_arm.h>
14 * This is annoying. The mmio code requires this, even if we don't
15 * need any decoding. To be fixed.
22 void kvm_mmio_write_buf(void *buf
, unsigned int len
, unsigned long data
);
23 unsigned long kvm_mmio_read_buf(const void *buf
, unsigned int len
);
25 int kvm_handle_mmio_return(struct kvm_vcpu
*vcpu
, struct kvm_run
*run
);
26 int io_mem_abort(struct kvm_vcpu
*vcpu
, struct kvm_run
*run
,
27 phys_addr_t fault_ipa
);
29 #endif /* __ARM64_KVM_MMIO_H__ */