1*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_ARCH_SUPPORTS 2*4882a593Smuzhiyun bool 3*4882a593Smuzhiyun default y if BR2_arm 4*4882a593Smuzhiyun default y if BR2_armeb 5*4882a593Smuzhiyun default y if BR2_aarch64 6*4882a593Smuzhiyun default y if BR2_i386 7*4882a593Smuzhiyun default y if BR2_m68k 8*4882a593Smuzhiyun default y if BR2_microblazeel 9*4882a593Smuzhiyun default y if BR2_microblazebe 10*4882a593Smuzhiyun default y if BR2_mips 11*4882a593Smuzhiyun default y if BR2_mipsel 12*4882a593Smuzhiyun default y if BR2_nios2 13*4882a593Smuzhiyun default y if BR2_or1k 14*4882a593Smuzhiyun default y if BR2_powerpc 15*4882a593Smuzhiyun default y if BR2_powerpc64 16*4882a593Smuzhiyun default y if BR2_powerpc64le 17*4882a593Smuzhiyun default y if BR2_riscv 18*4882a593Smuzhiyun default y if BR2_s390x 19*4882a593Smuzhiyun default y if BR2_sh 20*4882a593Smuzhiyun default y if BR2_sparc 21*4882a593Smuzhiyun default y if BR2_sparc64 22*4882a593Smuzhiyun default y if BR2_xtensa 23*4882a593Smuzhiyun default y if BR2_x86_64 24*4882a593Smuzhiyun depends on !BR2_x86_steamroller && !BR2_x86_core_avx2 25*4882a593Smuzhiyun depends on !BR2_powerpc_620 && !BR2_powerpc_630 && !BR2_powerpc_970 26*4882a593Smuzhiyun 27*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_SYSTEM_ARCH_SUPPORTS 28*4882a593Smuzhiyun bool 29*4882a593Smuzhiyun default y if BR2_PACKAGE_HOST_QEMU_ARCH_SUPPORTS 30*4882a593Smuzhiyun default y if BR2_mips64 31*4882a593Smuzhiyun default y if BR2_mips64el 32*4882a593Smuzhiyun 33*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS 34*4882a593Smuzhiyun bool 35*4882a593Smuzhiyun default y if BR2_PACKAGE_HOST_QEMU_ARCH_SUPPORTS 36*4882a593Smuzhiyun 37*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU 38*4882a593Smuzhiyun bool "host qemu" 39*4882a593Smuzhiyun depends on BR2_PACKAGE_HOST_QEMU_SYSTEM_ARCH_SUPPORTS || BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS 40*4882a593Smuzhiyun depends on BR2_HOST_GCC_AT_LEAST_8 41*4882a593Smuzhiyun select BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE \ 42*4882a593Smuzhiyun if !BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE && BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS 43*4882a593Smuzhiyun select BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE \ 44*4882a593Smuzhiyun if !BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS 45*4882a593Smuzhiyun help 46*4882a593Smuzhiyun QEMU is a generic and open source machine emulator and 47*4882a593Smuzhiyun virtualizer. 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun This option builds an emulator for your selected architecture. 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun http://www.qemu.org 52*4882a593Smuzhiyun 53*4882a593Smuzhiyuncomment "host-qemu needs a host gcc >= 8" 54*4882a593Smuzhiyun depends on BR2_PACKAGE_HOST_QEMU_SYSTEM_ARCH_SUPPORTS || \ 55*4882a593Smuzhiyun BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORT 56*4882a593Smuzhiyun depends on !BR2_HOST_GCC_AT_LEAST_8 57*4882a593Smuzhiyun 58*4882a593Smuzhiyunif BR2_PACKAGE_HOST_QEMU 59*4882a593Smuzhiyun 60*4882a593Smuzhiyuncomment "Emulators selection" 61*4882a593Smuzhiyun 62*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE 63*4882a593Smuzhiyun bool "Enable system emulation" 64*4882a593Smuzhiyun depends on BR2_PACKAGE_HOST_QEMU_SYSTEM_ARCH_SUPPORTS 65*4882a593Smuzhiyun help 66*4882a593Smuzhiyun Enables the build of the system emulator, which allows to 67*4882a593Smuzhiyun boot an entire system in Qemu. 68*4882a593Smuzhiyun 69*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE 70*4882a593Smuzhiyun bool "Enable Linux user-land emulation" 71*4882a593Smuzhiyun depends on BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS 72*4882a593Smuzhiyun help 73*4882a593Smuzhiyun Enables the build of the user-land emulator, which allows to 74*4882a593Smuzhiyun run user-space applications. 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun Note that system calls made by the emulated user-land are 77*4882a593Smuzhiyun serviced by the running host kernel. Therefore, if the 78*4882a593Smuzhiyun kernel headers used by your target are more recent than 79*4882a593Smuzhiyun the running host kernel, you may run into invalid system 80*4882a593Smuzhiyun calls, which may yield surprising effects. 81*4882a593Smuzhiyun 82*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_USER_MODE_ARGS 83*4882a593Smuzhiyun string 84*4882a593Smuzhiyun default "-cpu Nehalem,check=false" if BR2_x86_corei7 85*4882a593Smuzhiyun 86*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_VDE2 87*4882a593Smuzhiyun bool "VDE2 support" 88*4882a593Smuzhiyun help 89*4882a593Smuzhiyun Enables VDE2 support. VDE2 stands for Virtual Distributed 90*4882a593Smuzhiyun Ethernet and can be used to create virtual switches to 91*4882a593Smuzhiyun "plug" both physical and virtual machines in them. 92*4882a593Smuzhiyun 93*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_VIRTFS 94*4882a593Smuzhiyun bool "Virtual filesystem support" 95*4882a593Smuzhiyun depends on BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE 96*4882a593Smuzhiyun help 97*4882a593Smuzhiyun Enables support for virtual filesystem in Qemu allowing 98*4882a593Smuzhiyun shared filesystem between Qemu and its emulated target. 99*4882a593Smuzhiyun 100*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_QEMU_USB 101*4882a593Smuzhiyun bool "USB passthrough support" 102*4882a593Smuzhiyun help 103*4882a593Smuzhiyun Enables USB passthrough support from guest to host. 104*4882a593Smuzhiyun 105*4882a593Smuzhiyunendif 106