19bea1801SChristoph Hellwig# SPDX-License-Identifier: GPL-2.0 29bea1801SChristoph Hellwig 39bea1801SChristoph Hellwigmenu "UML Character Devices" 49bea1801SChristoph Hellwig 59bea1801SChristoph Hellwigconfig STDERR_CONSOLE 69bea1801SChristoph Hellwig bool "stderr console" 79bea1801SChristoph Hellwig default y 89bea1801SChristoph Hellwig help 99bea1801SChristoph Hellwig console driver which dumps all printk messages to stderr. 109bea1801SChristoph Hellwig 119bea1801SChristoph Hellwigconfig SSL 129bea1801SChristoph Hellwig bool "Virtual serial line" 139bea1801SChristoph Hellwig help 149bea1801SChristoph Hellwig The User-Mode Linux environment allows you to create virtual serial 159bea1801SChristoph Hellwig lines on the UML that are usually made to show up on the host as 169bea1801SChristoph Hellwig ttys or ptys. 179bea1801SChristoph Hellwig 189bea1801SChristoph Hellwig See <http://user-mode-linux.sourceforge.net/old/input.html> for more 199bea1801SChristoph Hellwig information and command line examples of how to use this facility. 209bea1801SChristoph Hellwig 219bea1801SChristoph Hellwig Unless you have a specific reason for disabling this, say Y. 229bea1801SChristoph Hellwig 239bea1801SChristoph Hellwigconfig NULL_CHAN 249bea1801SChristoph Hellwig bool "null channel support" 259bea1801SChristoph Hellwig help 269bea1801SChristoph Hellwig This option enables support for attaching UML consoles and serial 279bea1801SChristoph Hellwig lines to a device similar to /dev/null. Data written to it disappears 289bea1801SChristoph Hellwig and there is never any data to be read. 299bea1801SChristoph Hellwig 309bea1801SChristoph Hellwigconfig PORT_CHAN 319bea1801SChristoph Hellwig bool "port channel support" 329bea1801SChristoph Hellwig help 339bea1801SChristoph Hellwig This option enables support for attaching UML consoles and serial 349bea1801SChristoph Hellwig lines to host portals. They may be accessed with 'telnet <host> 359bea1801SChristoph Hellwig <port number>'. Any number of consoles and serial lines may be 369bea1801SChristoph Hellwig attached to a single portal, although what UML device you get when 379bea1801SChristoph Hellwig you telnet to that portal will be unpredictable. 389bea1801SChristoph Hellwig It is safe to say 'Y' here. 399bea1801SChristoph Hellwig 409bea1801SChristoph Hellwigconfig PTY_CHAN 419bea1801SChristoph Hellwig bool "pty channel support" 429bea1801SChristoph Hellwig help 439bea1801SChristoph Hellwig This option enables support for attaching UML consoles and serial 449bea1801SChristoph Hellwig lines to host pseudo-terminals. Access to both traditional 459bea1801SChristoph Hellwig pseudo-terminals (/dev/pty*) and pts pseudo-terminals are controlled 469bea1801SChristoph Hellwig with this option. The assignment of UML devices to host devices 479bea1801SChristoph Hellwig will be announced in the kernel message log. 489bea1801SChristoph Hellwig It is safe to say 'Y' here. 499bea1801SChristoph Hellwig 509bea1801SChristoph Hellwigconfig TTY_CHAN 519bea1801SChristoph Hellwig bool "tty channel support" 529bea1801SChristoph Hellwig help 539bea1801SChristoph Hellwig This option enables support for attaching UML consoles and serial 549bea1801SChristoph Hellwig lines to host terminals. Access to both virtual consoles 559bea1801SChristoph Hellwig (/dev/tty*) and the slave side of pseudo-terminals (/dev/ttyp* and 569bea1801SChristoph Hellwig /dev/pts/*) are controlled by this option. 579bea1801SChristoph Hellwig It is safe to say 'Y' here. 589bea1801SChristoph Hellwig 599bea1801SChristoph Hellwigconfig XTERM_CHAN 609bea1801SChristoph Hellwig bool "xterm channel support" 619bea1801SChristoph Hellwig help 629bea1801SChristoph Hellwig This option enables support for attaching UML consoles and serial 639bea1801SChristoph Hellwig lines to xterms. Each UML device so assigned will be brought up in 649bea1801SChristoph Hellwig its own xterm. 659bea1801SChristoph Hellwig It is safe to say 'Y' here. 669bea1801SChristoph Hellwig 6716aa835aSJohannes Bergconfig XTERM_CHAN_DEFAULT_EMULATOR 6816aa835aSJohannes Berg string "xterm channel default terminal emulator" 6916aa835aSJohannes Berg depends on XTERM_CHAN 7016aa835aSJohannes Berg default "xterm" 7116aa835aSJohannes Berg help 7216aa835aSJohannes Berg This option allows changing the default terminal emulator. 7316aa835aSJohannes Berg 749bea1801SChristoph Hellwigconfig NOCONFIG_CHAN 759bea1801SChristoph Hellwig bool 769bea1801SChristoph Hellwig default !(XTERM_CHAN && TTY_CHAN && PTY_CHAN && PORT_CHAN && NULL_CHAN) 779bea1801SChristoph Hellwig 789bea1801SChristoph Hellwigconfig CON_ZERO_CHAN 799bea1801SChristoph Hellwig string "Default main console channel initialization" 809bea1801SChristoph Hellwig default "fd:0,fd:1" 819bea1801SChristoph Hellwig help 829bea1801SChristoph Hellwig This is the string describing the channel to which the main console 839bea1801SChristoph Hellwig will be attached by default. This value can be overridden from the 849bea1801SChristoph Hellwig command line. The default value is "fd:0,fd:1", which attaches the 859bea1801SChristoph Hellwig main console to stdin and stdout. 869bea1801SChristoph Hellwig It is safe to leave this unchanged. 879bea1801SChristoph Hellwig 889bea1801SChristoph Hellwigconfig CON_CHAN 899bea1801SChristoph Hellwig string "Default console channel initialization" 909bea1801SChristoph Hellwig default "xterm" 919bea1801SChristoph Hellwig help 929bea1801SChristoph Hellwig This is the string describing the channel to which all consoles 939bea1801SChristoph Hellwig except the main console will be attached by default. This value can 949bea1801SChristoph Hellwig be overridden from the command line. The default value is "xterm", 959bea1801SChristoph Hellwig which brings them up in xterms. 969bea1801SChristoph Hellwig It is safe to leave this unchanged, although you may wish to change 979bea1801SChristoph Hellwig this if you expect the UML that you build to be run in environments 989bea1801SChristoph Hellwig which don't have X or xterm available. 999bea1801SChristoph Hellwig 1009bea1801SChristoph Hellwigconfig SSL_CHAN 1019bea1801SChristoph Hellwig string "Default serial line channel initialization" 1029bea1801SChristoph Hellwig default "pty" 1039bea1801SChristoph Hellwig help 1049bea1801SChristoph Hellwig This is the string describing the channel to which the serial lines 1059bea1801SChristoph Hellwig will be attached by default. This value can be overridden from the 1069bea1801SChristoph Hellwig command line. The default value is "pty", which attaches them to 1079bea1801SChristoph Hellwig traditional pseudo-terminals. 1089bea1801SChristoph Hellwig It is safe to leave this unchanged, although you may wish to change 1099bea1801SChristoph Hellwig this if you expect the UML that you build to be run in environments 1109bea1801SChristoph Hellwig which don't have a set of /dev/pty* devices. 1119bea1801SChristoph Hellwig 1129bea1801SChristoph Hellwigconfig UML_SOUND 1139bea1801SChristoph Hellwig tristate "Sound support" 114db4bfcbaSRandy Dunlap depends on SOUND 115db4bfcbaSRandy Dunlap select SOUND_OSS_CORE 1169bea1801SChristoph Hellwig help 1179bea1801SChristoph Hellwig This option enables UML sound support. If enabled, it will pull in 118db4bfcbaSRandy Dunlap the UML hostaudio relay, which acts as a intermediary 1199bea1801SChristoph Hellwig between the host's dsp and mixer devices and the UML sound system. 1209bea1801SChristoph Hellwig It is safe to say 'Y' here. 1219bea1801SChristoph Hellwig 1229bea1801SChristoph Hellwigendmenu 1239bea1801SChristoph Hellwig 1249bea1801SChristoph Hellwigmenu "UML Network Devices" 1259bea1801SChristoph Hellwig depends on NET 1269bea1801SChristoph Hellwig 1279bea1801SChristoph Hellwigconfig UML_NET_VECTOR 1289bea1801SChristoph Hellwig bool "Vector I/O high performance network devices" 129730586ffSIgnat Korchagin select MAY_HAVE_RUNTIME_DEPS 1309bea1801SChristoph Hellwig help 1319bea1801SChristoph Hellwig This User-Mode Linux network driver uses multi-message send 1329bea1801SChristoph Hellwig and receive functions. The host running the UML guest must have 1339bea1801SChristoph Hellwig a linux kernel version above 3.0 and a libc version > 2.13. 134e619e18eSTiwei Bie This driver provides tap, raw, gre and l2tpv3 network transports. 135e619e18eSTiwei Bie 136e619e18eSTiwei Bie For more information, including explanations of the networking 137e619e18eSTiwei Bie and sample configurations, see 138e619e18eSTiwei Bie <file:Documentation/virt/uml/user_mode_linux_howto_v2.rst>. 1399bea1801SChristoph Hellwig 1409bea1801SChristoph Hellwigendmenu 1415d38f324SErel Geron 1425d38f324SErel Geronconfig VIRTIO_UML 143bf9f80cfSJohannes Berg bool "UML driver for virtio devices" 1445d38f324SErel Geron select VIRTIO 1455d38f324SErel Geron help 1465d38f324SErel Geron This driver provides support for virtio based paravirtual device 1475d38f324SErel Geron drivers over vhost-user sockets. 148dde8b58dSJohannes Berg 149dde8b58dSJohannes Bergconfig UML_RTC 150dde8b58dSJohannes Berg bool "UML RTC driver" 151dde8b58dSJohannes Berg depends on RTC_CLASS 152dde8b58dSJohannes Berg # there's no use in this if PM_SLEEP isn't enabled ... 153dde8b58dSJohannes Berg depends on PM_SLEEP 154dde8b58dSJohannes Berg help 155dde8b58dSJohannes Berg When PM_SLEEP is configured, it may be desirable to wake up using 156dde8b58dSJohannes Berg rtcwake, especially in time-travel mode. This driver enables that 157dde8b58dSJohannes Berg by providing a fake RTC clock that causes a wakeup at the right 158dde8b58dSJohannes Berg time. 15968f5d3f3SJohannes Berg 16024ffa71bSTiwei Bieconfig UML_PCI 16124ffa71bSTiwei Bie bool 16268f5d3f3SJohannes Berg select FORCE_PCI 163*c36e5eb9SNam Cao select IRQ_MSI_LIB 16468f5d3f3SJohannes Berg select UML_IOMEM_EMULATION 16568f5d3f3SJohannes Berg select UML_DMA_EMULATION 16668f5d3f3SJohannes Berg select PCI_MSI 16768f5d3f3SJohannes Berg select PCI_LOCKLESS_CONFIG 16868f5d3f3SJohannes Berg 16924ffa71bSTiwei Bieconfig UML_PCI_OVER_VIRTIO 17024ffa71bSTiwei Bie bool "Enable PCI over VIRTIO device simulation" 17124ffa71bSTiwei Bie # in theory, just VIRTIO is enough, but that causes recursion 17224ffa71bSTiwei Bie depends on VIRTIO_UML 17324ffa71bSTiwei Bie select UML_PCI 17424ffa71bSTiwei Bie 17568f5d3f3SJohannes Bergconfig UML_PCI_OVER_VIRTIO_DEVICE_ID 17668f5d3f3SJohannes Berg int "set the virtio device ID for PCI emulation" 17768f5d3f3SJohannes Berg default -1 17868f5d3f3SJohannes Berg depends on UML_PCI_OVER_VIRTIO 17968f5d3f3SJohannes Berg help 18068f5d3f3SJohannes Berg There's no official device ID assigned (yet), set the one you 18168f5d3f3SJohannes Berg wish to use for experimentation here. The default of -1 is 18268f5d3f3SJohannes Berg not valid and will cause the driver to fail at probe. 183a0e2cb6aSTiwei Bie 184a0e2cb6aSTiwei Bieconfig UML_PCI_OVER_VFIO 185a0e2cb6aSTiwei Bie bool "Enable VFIO-based PCI passthrough" 186a0e2cb6aSTiwei Bie select UML_PCI 187a0e2cb6aSTiwei Bie help 188a0e2cb6aSTiwei Bie This driver provides support for VFIO-based PCI passthrough. 189a0e2cb6aSTiwei Bie Currently, only MSI-X capable devices are supported, and it 190a0e2cb6aSTiwei Bie is assumed that drivers will use MSI-X. 191