xref: /kvmtool/include/kvm/kvm-config.h (revision b54cb31c777ebb272ad2ed5d01a58add8b25de53)
1*b54cb31cSSasha Levin #ifndef KVM_CONFIG_H_
2*b54cb31cSSasha Levin #define KVM_CONFIG_H_
3*b54cb31cSSasha Levin 
4*b54cb31cSSasha Levin #include "kvm/disk-image.h"
5*b54cb31cSSasha Levin 
6*b54cb31cSSasha Levin #define DEFAULT_KVM_DEV		"/dev/kvm"
7*b54cb31cSSasha Levin #define DEFAULT_CONSOLE		"serial"
8*b54cb31cSSasha Levin #define DEFAULT_NETWORK		"user"
9*b54cb31cSSasha Levin #define DEFAULT_HOST_ADDR	"192.168.33.1"
10*b54cb31cSSasha Levin #define DEFAULT_GUEST_ADDR	"192.168.33.15"
11*b54cb31cSSasha Levin #define DEFAULT_GUEST_MAC	"02:15:15:15:15:15"
12*b54cb31cSSasha Levin #define DEFAULT_HOST_MAC	"02:01:01:01:01:01"
13*b54cb31cSSasha Levin #define DEFAULT_SCRIPT		"none"
14*b54cb31cSSasha Levin #define DEFAULT_SANDBOX_FILENAME "guest/sandbox.sh"
15*b54cb31cSSasha Levin 
16*b54cb31cSSasha Levin #define MIN_RAM_SIZE_MB		(64ULL)
17*b54cb31cSSasha Levin #define MIN_RAM_SIZE_BYTE	(MIN_RAM_SIZE_MB << MB_SHIFT)
18*b54cb31cSSasha Levin 
19*b54cb31cSSasha Levin struct kvm_config {
20*b54cb31cSSasha Levin 	struct disk_image_params disk_image[MAX_DISK_IMAGES];
21*b54cb31cSSasha Levin 	u64 ram_size;
22*b54cb31cSSasha Levin 	u8  image_count;
23*b54cb31cSSasha Levin 	u8 num_net_devices;
24*b54cb31cSSasha Levin 	bool virtio_rng;
25*b54cb31cSSasha Levin 	const char *kernel_cmdline;
26*b54cb31cSSasha Levin 	const char *kernel_filename;
27*b54cb31cSSasha Levin 	const char *vmlinux_filename;
28*b54cb31cSSasha Levin 	const char *initrd_filename;
29*b54cb31cSSasha Levin 	const char *firmware_filename;
30*b54cb31cSSasha Levin 	const char *console;
31*b54cb31cSSasha Levin 	const char *dev;
32*b54cb31cSSasha Levin 	const char *network;
33*b54cb31cSSasha Levin 	const char *host_ip;
34*b54cb31cSSasha Levin 	const char *guest_ip;
35*b54cb31cSSasha Levin 	const char *guest_mac;
36*b54cb31cSSasha Levin 	const char *host_mac;
37*b54cb31cSSasha Levin 	const char *script;
38*b54cb31cSSasha Levin 	const char *guest_name;
39*b54cb31cSSasha Levin 	const char *sandbox;
40*b54cb31cSSasha Levin 	const char *hugetlbfs_path;
41*b54cb31cSSasha Levin 	const char *custom_rootfs_name;
42*b54cb31cSSasha Levin 	struct virtio_net_params *net_params;
43*b54cb31cSSasha Levin 	bool single_step;
44*b54cb31cSSasha Levin 	bool vnc;
45*b54cb31cSSasha Levin 	bool sdl;
46*b54cb31cSSasha Levin 	bool balloon;
47*b54cb31cSSasha Levin 	bool using_rootfs;
48*b54cb31cSSasha Levin 	bool custom_rootfs;
49*b54cb31cSSasha Levin 	bool no_net;
50*b54cb31cSSasha Levin 	bool no_dhcp;
51*b54cb31cSSasha Levin };
52*b54cb31cSSasha Levin 
53*b54cb31cSSasha Levin #endif
54