xref: /kvmtool/riscv/kvm.c (revision 2e99678314c2de76d54cdf4ff7ff318ac350cb21)
1*2e996783SAnup Patel #include "kvm/kvm.h"
2*2e996783SAnup Patel #include "kvm/util.h"
3*2e996783SAnup Patel #include "kvm/fdt.h"
4*2e996783SAnup Patel 
5*2e996783SAnup Patel #include <linux/kernel.h>
6*2e996783SAnup Patel #include <linux/kvm.h>
7*2e996783SAnup Patel #include <linux/sizes.h>
8*2e996783SAnup Patel 
9*2e996783SAnup Patel struct kvm_ext kvm_req_ext[] = {
10*2e996783SAnup Patel 	{ DEFINE_KVM_EXT(KVM_CAP_ONE_REG) },
11*2e996783SAnup Patel 	{ 0, 0 },
12*2e996783SAnup Patel };
13*2e996783SAnup Patel 
14*2e996783SAnup Patel bool kvm__arch_cpu_supports_vm(void)
15*2e996783SAnup Patel {
16*2e996783SAnup Patel 	/* The KVM capability check is enough. */
17*2e996783SAnup Patel 	return true;
18*2e996783SAnup Patel }
19*2e996783SAnup Patel 
20*2e996783SAnup Patel void kvm__init_ram(struct kvm *kvm)
21*2e996783SAnup Patel {
22*2e996783SAnup Patel 	/* TODO: */
23*2e996783SAnup Patel }
24*2e996783SAnup Patel 
25*2e996783SAnup Patel void kvm__arch_delete_ram(struct kvm *kvm)
26*2e996783SAnup Patel {
27*2e996783SAnup Patel 	/* TODO: */
28*2e996783SAnup Patel }
29*2e996783SAnup Patel 
30*2e996783SAnup Patel void kvm__arch_read_term(struct kvm *kvm)
31*2e996783SAnup Patel {
32*2e996783SAnup Patel 	/* TODO: */
33*2e996783SAnup Patel }
34*2e996783SAnup Patel 
35*2e996783SAnup Patel void kvm__arch_set_cmdline(char *cmdline, bool video)
36*2e996783SAnup Patel {
37*2e996783SAnup Patel 	/* TODO: */
38*2e996783SAnup Patel }
39*2e996783SAnup Patel 
40*2e996783SAnup Patel void kvm__arch_init(struct kvm *kvm, const char *hugetlbfs_path, u64 ram_size)
41*2e996783SAnup Patel {
42*2e996783SAnup Patel 	/* TODO: */
43*2e996783SAnup Patel }
44*2e996783SAnup Patel 
45*2e996783SAnup Patel bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd,
46*2e996783SAnup Patel 				 const char *kernel_cmdline)
47*2e996783SAnup Patel {
48*2e996783SAnup Patel 	/* TODO: */
49*2e996783SAnup Patel 	return true;
50*2e996783SAnup Patel }
51*2e996783SAnup Patel 
52*2e996783SAnup Patel bool kvm__load_firmware(struct kvm *kvm, const char *firmware_filename)
53*2e996783SAnup Patel {
54*2e996783SAnup Patel 	/* TODO: Firmware loading to be supported later. */
55*2e996783SAnup Patel 	return false;
56*2e996783SAnup Patel }
57*2e996783SAnup Patel 
58*2e996783SAnup Patel int kvm__arch_setup_firmware(struct kvm *kvm)
59*2e996783SAnup Patel {
60*2e996783SAnup Patel 	return 0;
61*2e996783SAnup Patel }
62