# SPDX-License-Identifier: GPL-2.0-only
#
# Video configuration
#

menu "Console display driver support"

config VGA_CONSOLE
	bool "VGA text console" if EXPERT || !X86
	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC &&  !SUPERH && \
		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && !S390 && !UML
	select APERTURE_HELPERS if (DRM || FB || VFIO_PCI_CORE)
	default y
	help
	  Saying Y here will allow you to use Linux in text mode through a
	  display that complies with the generic VGA standard. Virtually
	  everyone wants that.

	  The program SVGATextMode can be used to utilize SVGA video cards to
	  their full potential in text mode. Download it from
	  <ftp://ibiblio.org/pub/Linux/utils/console/>.

	  Say Y.

config MDA_CONSOLE
	depends on !M68K && !PARISC && ISA
	tristate "MDA text console (dual-headed)"
	help
	  Say Y here if you have an old MDA or monochrome Hercules graphics
	  adapter in your system acting as a second head ( = video card). You
	  will then be able to use two monitors with your Linux system. Do not
	  say Y here if your MDA card is the primary card in your system; the
	  normal VGA driver will handle it.

	  To compile this driver as a module, choose M here: the
	  module will be called mdacon.

	  If unsure, say N.

config SGI_NEWPORT_CONSOLE
	tristate "SGI Newport Console support"
	depends on SGI_IP22 && HAS_IOMEM
	select FONT_SUPPORT
	help
	  Say Y here if you want the console on the Newport aka XL graphics
	  card of your Indy.  Most people say Y here.

config DUMMY_CONSOLE
	bool
	default y

config DUMMY_CONSOLE_COLUMNS
	int "Initial number of console screen columns"
	depends on DUMMY_CONSOLE && !ARM
	default 160 if PARISC
	default 80
	help
	  On PA-RISC, the default value is 160, which should fit a 1280x1024
	  monitor.
	  Select 80 if you use a 640x480 resolution by default.

config DUMMY_CONSOLE_ROWS
	int "Initial number of console screen rows"
	depends on DUMMY_CONSOLE && !ARM
	default 64 if PARISC
	default 25
	help
	  On PA-RISC, the default value is 64, which should fit a 1280x1024
	  monitor.
	  Select 25 if you use a 640x480 resolution by default.

config FRAMEBUFFER_CONSOLE
	bool "Framebuffer Console support"
	depends on FB_CORE && !UML
	default DRM_FBDEV_EMULATION
	select VT_HW_CONSOLE_BINDING
	select CRC32
	select FONT_SUPPORT
	help
	  Low-level framebuffer-based console driver.

config FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION
	bool "Enable legacy fbcon hardware acceleration code"
	depends on FRAMEBUFFER_CONSOLE
	default y if PARISC
	default n
	help
	  This option enables the fbcon (framebuffer text-based) hardware
	  acceleration for graphics drivers which were written for the fbdev
	  graphics interface.

	  On modern machines, on mainstream machines (like x86-64) or when
	  using a modern Linux distribution those fbdev drivers usually aren't used.
	  So enabling this option wouldn't have any effect, which is why you want
	  to disable this option on such newer machines.

	  If you compile this kernel for older machines which still require the
	  fbdev drivers, you may want to say Y.

	  If unsure, select n.

config FRAMEBUFFER_CONSOLE_DETECT_PRIMARY
       bool "Map the console to the primary display device"
       depends on FRAMEBUFFER_CONSOLE
       default n
	help
	 If this option is selected, the framebuffer console will
	 automatically select the primary display device (if the architecture
	 supports this feature).  Otherwise, the framebuffer console will
	 always select the first framebuffer driver that is loaded. The latter
	 is the default behavior.

	 You can always override the automatic selection of the primary device
	 by using the fbcon=map: boot option.

	 If unsure, select n.

config FRAMEBUFFER_CONSOLE_ROTATION
       bool "Framebuffer Console Rotation"
       depends on FRAMEBUFFER_CONSOLE
       help
	 Enable display rotation for the framebuffer console.  This is done
	 in software and may be significantly slower than a normally oriented
	 display.  Note that the rotation is done at the console level only
	 such that other users of the framebuffer will remain normally
	 oriented.

config FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER
	bool "Framebuffer Console Deferred Takeover"
	depends on FB=y && FRAMEBUFFER_CONSOLE && DUMMY_CONSOLE
	help
	  If enabled this defers the framebuffer console taking over the
	  console from the dummy console until the first text is displayed on
	  the console. This is useful in combination with the "quiet" kernel
	  commandline option to keep the framebuffer contents initially put up
	  by the firmware in place, rather then replacing the contents with a
	  black screen as soon as fbcon loads.

config STI_CONSOLE
	bool "STI text console"
	depends on PARISC && HAS_IOMEM
	select FONT_SUPPORT
	select CRC32
	select STI_CORE
	default y
	help
	  The STI console is the builtin display/keyboard on HP-PARISC
	  machines.  Say Y here to build support for it into your kernel.
	  The alternative is to use your primary serial port as a console.

endmenu