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