123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600 |
- #
- # Video configuration
- #
- menu "Graphics support"
- config DM_VIDEO
- bool "Enable driver model support for LCD/video"
- depends on DM
- help
- This enables driver model for LCD and video devices. These support
- a bitmap display of various sizes and depths which can be drawn on
- to display a command-line console or splash screen. Enabling this
- option compiles in the video uclass and routes all LCD/video access
- through this.
- config VIDEO_BPP8
- bool "Support 8-bit-per-pixel displays"
- depends on DM_VIDEO
- default y if DM_VIDEO
- help
- Support drawing text and bitmaps onto a 8-bit-per-pixel display.
- Enabling this will include code to support this display. Without
- this option, such displays will not be supported and console output
- will be empty.
- config VIDEO_BPP16
- bool "Support 16-bit-per-pixel displays"
- depends on DM_VIDEO
- default y if DM_VIDEO
- help
- Support drawing text and bitmaps onto a 16-bit-per-pixel display.
- Enabling this will include code to support this display. Without
- this option, such displays will not be supported and console output
- will be empty.
- config VIDEO_BPP32
- bool "Support 32-bit-per-pixel displays"
- depends on DM_VIDEO
- default y if DM_VIDEO
- help
- Support drawing text and bitmaps onto a 32-bit-per-pixel display.
- Enabling this will include code to support this display. Without
- this option, such displays will not be supported and console output
- will be empty.
- config CONSOLE_NORMAL
- bool "Support a simple text console"
- depends on DM_VIDEO
- default y if DM_VIDEO
- help
- Support drawing text on the frame buffer console so that it can be
- used as a console. Rotation is not supported by this driver (see
- CONFIG_CONSOLE_ROTATION for that). A built-in 8x16 font is used
- for the display.
- config CONSOLE_ROTATION
- bool "Support rotated displays"
- depends on DM_VIDEO
- help
- Sometimes, for example if the display is mounted in portrait
- mode or even if it's mounted landscape but rotated by 180degree,
- we need to rotate our content of the display relative to the
- framebuffer, so that user can read the messages which are
- printed out. Enable this option to include a text driver which can
- support this. The rotation is set by the 'rot' parameter in
- struct video_priv: 0=unrotated, 1=90 degrees clockwise, 2=180
- degrees, 3=270 degrees.
- config CONSOLE_TRUETYPE
- bool "Support a console that uses TrueType fonts"
- depends on DM_VIDEO
- help
- TrueTrype fonts can provide outline-drawing capability rather than
- needing to provide a bitmap for each font and size that is needed.
- With this option you can adjust the text size and use a variety of
- fonts. Note that this is noticeably slower than with normal console.
- config CONSOLE_TRUETYPE_SIZE
- int "TrueType font size"
- depends on CONSOLE_TRUETYPE
- default 18
- help
- This sets the font size for the console. The size is measured in
- pixels and is the nominal height of a character. Note that fonts
- are commonly measured in 'points', being 1/72 inch (about 3.52mm).
- However that measurement depends on the size of your display and
- there is no standard display density. At present there is not a
- method to select the display's physical size, which would allow
- U-Boot to calculate the correct font size.
- source "drivers/video/fonts/Kconfig"
- config VIDCONSOLE_AS_LCD
- bool "Use 'vidconsole' when 'lcd' is seen in stdout"
- depends on DM_VIDEO
- help
- This is a work-around for boards which have 'lcd' in their stdout
- environment variable, but have moved to use driver model for video.
- In this case the console will no-longer work. While it is possible
- to update the environment, the breakage may be confusing for users.
- This option will be removed around the end of 2016.
- config VIDEO_COREBOOT
- bool "Enable coreboot framebuffer driver support"
- depends on X86 && SYS_COREBOOT
- help
- Turn on this option to enable a framebuffer driver when U-Boot is
- loaded by coreboot where the graphics device is configured by
- coreboot already. This can in principle be used with any platform
- that coreboot supports.
- config VIDEO_VESA
- bool "Enable VESA video driver support"
- default n
- help
- Turn on this option to enable a very simple driver which uses vesa
- to discover the video mode and then provides a frame buffer for use
- by U-Boot. This can in principle be used with any platform that
- supports PCI and video cards that support VESA BIOS Extension (VBE).
- config FRAMEBUFFER_SET_VESA_MODE
- bool "Set framebuffer graphics resolution"
- depends on VIDEO_VESA || VIDEO_BROADWELL_IGD
- help
- Set VESA/native framebuffer mode (needed for bootsplash and graphical
- framebuffer console)
- choice
- prompt "framebuffer graphics resolution"
- default FRAMEBUFFER_VESA_MODE_117
- depends on FRAMEBUFFER_SET_VESA_MODE
- help
- This option sets the resolution used for the U-Boot framebuffer (and
- bootsplash screen).
- config FRAMEBUFFER_VESA_MODE_100
- bool "640x400 256-color"
- config FRAMEBUFFER_VESA_MODE_101
- bool "640x480 256-color"
- config FRAMEBUFFER_VESA_MODE_102
- bool "800x600 16-color"
- config FRAMEBUFFER_VESA_MODE_103
- bool "800x600 256-color"
- config FRAMEBUFFER_VESA_MODE_104
- bool "1024x768 16-color"
- config FRAMEBUFFER_VESA_MODE_105
- bool "1024x768 256-color"
- config FRAMEBUFFER_VESA_MODE_106
- bool "1280x1024 16-color"
- config FRAMEBUFFER_VESA_MODE_107
- bool "1280x1024 256-color"
- config FRAMEBUFFER_VESA_MODE_108
- bool "80x60 text"
- config FRAMEBUFFER_VESA_MODE_109
- bool "132x25 text"
- config FRAMEBUFFER_VESA_MODE_10A
- bool "132x43 text"
- config FRAMEBUFFER_VESA_MODE_10B
- bool "132x50 text"
- config FRAMEBUFFER_VESA_MODE_10C
- bool "132x60 text"
- config FRAMEBUFFER_VESA_MODE_10D
- bool "320x200 32k-color (1:5:5:5)"
- config FRAMEBUFFER_VESA_MODE_10E
- bool "320x200 64k-color (5:6:5)"
- config FRAMEBUFFER_VESA_MODE_10F
- bool "320x200 16.8M-color (8:8:8)"
- config FRAMEBUFFER_VESA_MODE_110
- bool "640x480 32k-color (1:5:5:5)"
- config FRAMEBUFFER_VESA_MODE_111
- bool "640x480 64k-color (5:6:5)"
- config FRAMEBUFFER_VESA_MODE_112
- bool "640x480 16.8M-color (8:8:8)"
- config FRAMEBUFFER_VESA_MODE_113
- bool "800x600 32k-color (1:5:5:5)"
- config FRAMEBUFFER_VESA_MODE_114
- bool "800x600 64k-color (5:6:5)"
- config FRAMEBUFFER_VESA_MODE_115
- bool "800x600 16.8M-color (8:8:8)"
- config FRAMEBUFFER_VESA_MODE_116
- bool "1024x768 32k-color (1:5:5:5)"
- config FRAMEBUFFER_VESA_MODE_117
- bool "1024x768 64k-color (5:6:5)"
- config FRAMEBUFFER_VESA_MODE_118
- bool "1024x768 16.8M-color (8:8:8)"
- config FRAMEBUFFER_VESA_MODE_119
- bool "1280x1024 32k-color (1:5:5:5)"
- config FRAMEBUFFER_VESA_MODE_11A
- bool "1280x1024 64k-color (5:6:5)"
- config FRAMEBUFFER_VESA_MODE_11B
- bool "1280x1024 16.8M-color (8:8:8)"
- config FRAMEBUFFER_VESA_MODE_USER
- bool "Manually select VESA mode"
- endchoice
- # Map the config names to an integer (KB).
- config FRAMEBUFFER_VESA_MODE
- prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER
- hex
- default 0x100 if FRAMEBUFFER_VESA_MODE_100
- default 0x101 if FRAMEBUFFER_VESA_MODE_101
- default 0x102 if FRAMEBUFFER_VESA_MODE_102
- default 0x103 if FRAMEBUFFER_VESA_MODE_103
- default 0x104 if FRAMEBUFFER_VESA_MODE_104
- default 0x105 if FRAMEBUFFER_VESA_MODE_105
- default 0x106 if FRAMEBUFFER_VESA_MODE_106
- default 0x107 if FRAMEBUFFER_VESA_MODE_107
- default 0x108 if FRAMEBUFFER_VESA_MODE_108
- default 0x109 if FRAMEBUFFER_VESA_MODE_109
- default 0x10A if FRAMEBUFFER_VESA_MODE_10A
- default 0x10B if FRAMEBUFFER_VESA_MODE_10B
- default 0x10C if FRAMEBUFFER_VESA_MODE_10C
- default 0x10D if FRAMEBUFFER_VESA_MODE_10D
- default 0x10E if FRAMEBUFFER_VESA_MODE_10E
- default 0x10F if FRAMEBUFFER_VESA_MODE_10F
- default 0x110 if FRAMEBUFFER_VESA_MODE_110
- default 0x111 if FRAMEBUFFER_VESA_MODE_111
- default 0x112 if FRAMEBUFFER_VESA_MODE_112
- default 0x113 if FRAMEBUFFER_VESA_MODE_113
- default 0x114 if FRAMEBUFFER_VESA_MODE_114
- default 0x115 if FRAMEBUFFER_VESA_MODE_115
- default 0x116 if FRAMEBUFFER_VESA_MODE_116
- default 0x117 if FRAMEBUFFER_VESA_MODE_117
- default 0x118 if FRAMEBUFFER_VESA_MODE_118
- default 0x119 if FRAMEBUFFER_VESA_MODE_119
- default 0x11A if FRAMEBUFFER_VESA_MODE_11A
- default 0x11B if FRAMEBUFFER_VESA_MODE_11B
- default 0x117 if FRAMEBUFFER_VESA_MODE_USER
- config VIDEO_LCD_ANX9804
- bool "ANX9804 bridge chip"
- default n
- ---help---
- Support for the ANX9804 bridge chip, which can take pixel data coming
- from a parallel LCD interface and translate it on the fy into a DP
- interface for driving eDP TFT displays. It uses I2C for configuration.
- config VIDEO_LCD_SSD2828
- bool "SSD2828 bridge chip"
- default n
- ---help---
- Support for the SSD2828 bridge chip, which can take pixel data coming
- from a parallel LCD interface and translate it on the fly into MIPI DSI
- interface for driving a MIPI compatible LCD panel. It uses SPI for
- configuration.
- config VIDEO_LCD_SSD2828_TX_CLK
- int "SSD2828 TX_CLK frequency (in MHz)"
- depends on VIDEO_LCD_SSD2828
- default 0
- ---help---
- The frequency of the crystal, which is clocking SSD2828. It may be
- anything in the 8MHz-30MHz range and the exact value should be
- retrieved from the board schematics. Or in the case of Allwinner
- hardware, it can be usually found as 'lcd_xtal_freq' variable in
- FEX files. It can be also set to 0 for selecting PCLK from the
- parallel LCD interface instead of TX_CLK as the PLL clock source.
- config VIDEO_LCD_SSD2828_RESET
- string "RESET pin of SSD2828"
- depends on VIDEO_LCD_SSD2828
- default ""
- ---help---
- The reset pin of SSD2828 chip. This takes a string in the format
- understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
- config VIDEO_LCD_HITACHI_TX18D42VM
- bool "Hitachi tx18d42vm LVDS LCD panel support"
- depends on VIDEO
- default n
- ---help---
- Support for Hitachi tx18d42vm LVDS LCD panels, these panels have a
- lcd controller which needs to be initialized over SPI, once that is
- done they work like a regular LVDS panel.
- config VIDEO_LCD_SPI_CS
- string "SPI CS pin for LCD related config job"
- depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM
- default ""
- ---help---
- This is one of the SPI communication pins, involved in setting up a
- working LCD configuration. The exact role of SPI may differ for
- different hardware setups. The option takes a string in the format
- understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
- config VIDEO_LCD_SPI_SCLK
- string "SPI SCLK pin for LCD related config job"
- depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM
- default ""
- ---help---
- This is one of the SPI communication pins, involved in setting up a
- working LCD configuration. The exact role of SPI may differ for
- different hardware setups. The option takes a string in the format
- understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
- config VIDEO_LCD_SPI_MOSI
- string "SPI MOSI pin for LCD related config job"
- depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM
- default ""
- ---help---
- This is one of the SPI communication pins, involved in setting up a
- working LCD configuration. The exact role of SPI may differ for
- different hardware setups. The option takes a string in the format
- understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
- config VIDEO_LCD_SPI_MISO
- string "SPI MISO pin for LCD related config job (optional)"
- depends on VIDEO_LCD_SSD2828
- default ""
- ---help---
- This is one of the SPI communication pins, involved in setting up a
- working LCD configuration. The exact role of SPI may differ for
- different hardware setups. If wired up, this pin may provide additional
- useful functionality. Such as bi-directional communication with the
- hardware and LCD panel id retrieval (if the panel can report it). The
- option takes a string in the format understood by 'name_to_gpio'
- function, e.g. PH1 for pin 1 of port H.
- config VIDEO_MVEBU
- bool "Armada XP LCD controller"
- default n
- ---help---
- Support for the LCD controller integrated in the Marvell
- Armada XP SoC.
- config I2C_EDID
- bool "Enable EDID library"
- depends on DM_I2C
- default n
- help
- This enables library for accessing EDID data from an LCD panel.
- config DISPLAY
- bool "Enable Display support"
- depends on DM
- default n
- select I2C_EDID
- help
- This supports drivers that provide a display, such as eDP (Embedded
- DisplayPort) and HDMI (High Definition Multimedia Interface).
- The devices provide a simple interface to start up the display,
- read display information and enable it.
- config VIDEO_BROADWELL_IGD
- bool "Enable Intel Broadwell integrated graphics device"
- depends on X86
- help
- This enables support for integrated graphics on Intel broadwell
- devices. Initialisation is mostly performed by a VGA boot ROM, with
- some setup handled by U-Boot itself. The graphics adaptor works as
- a VESA device and supports LCD panels, eDP and LVDS outputs.
- Configuration of most aspects of device operation is performed using
- a special tool which configures the VGA ROM, but the graphics
- resolution can be selected in U-Boot.
- config VIDEO_IVYBRIDGE_IGD
- bool "Enable Intel Ivybridge integration graphics support"
- depends on X86
- help
- This enables support for integrated graphics on Intel ivybridge
- devices. Initialisation is mostly performed by a VGA boot ROM, with
- some setup handled by U-Boot itself. The graphics adaptor works as
- a VESA device and supports LCD panels, eDP and LVDS outputs.
- Configuration of most aspects of device operation is performed using
- a special tool which configures the VGA ROM, but the graphics
- resolution can be selected in U-Boot.
- config VIDEO_ROCKCHIP
- bool "Enable Rockchip video support"
- depends on DM_VIDEO
- help
- Rockchip SoCs provide video output capabilities for High-Definition
- Multimedia Interface (HDMI), Low-voltage Differential Signalling
- (LVDS), embedded DisplayPort (eDP) and Display Serial Interface
- (DSI). This driver supports the on-chip video output device, and
- targets the Rockchip RK3288.
- config VIDEO_SANDBOX_SDL
- bool "Enable sandbox video console using SDL"
- depends on SANDBOX
- help
- When using sandbox you can enable an emulated LCD display which
- appears as an SDL (Simple DirectMedia Layer) window. This is a
- console device and can display stdout output. Within U-Boot is is
- a normal bitmap display and can display images as well as text.
- config VIDEO_TEGRA20
- bool "Enable LCD support on Tegra20"
- depends on OF_CONTROL
- help
- Tegra20 supports video output to an attached LCD panel as well as
- other options such as HDMI. Only the LCD is supported in U-Boot.
- This option enables this support which can be used on devices which
- have an LCD display connected.
- config VIDEO_TEGRA124
- bool "Enable video support on Tegra124"
- depends on DM_VIDEO
- help
- Tegra124 supports many video output options including eDP and
- HDMI. At present only eDP is supported by U-Boot. This option
- enables this support which can be used on devices which
- have an eDP display connected.
- source "drivers/video/bridge/Kconfig"
- config VIDEO
- bool "Enable legacy video support"
- depends on !DM_VIDEO
- help
- Define this for video support, without using driver model. Some
- drivers use this because they are not yet converted to driver
- model. Video drivers typically provide a colour text console and
- cursor.
- config VIDEO_IPUV3
- bool "i.MX IPUv3 Core video support"
- depends on VIDEO && MX6
- help
- This enables framebuffer driver for i.MX processors working
- on the IPUv3(Image Processing Unit) internal graphic processor.
- config CFB_CONSOLE
- bool "Enable colour frame buffer console"
- depends on VIDEO
- default y if VIDEO
- help
- Enables the colour frame buffer driver. This supports colour
- output on a bitmap display from an in-memory frame buffer.
- Several colour devices are supported along with various options to
- adjust the supported features. The driver is implemented in
- cfb_console.c
- The following defines are needed (cf. smiLynxEM, i8042)
- VIDEO_FB_LITTLE_ENDIAN graphic memory organisation
- (default big endian)
- VIDEO_HW_RECTFILL graphic chip supports
- rectangle fill (cf. smiLynxEM)
- VIDEO_HW_BITBLT graphic chip supports
- bit-blit (cf. smiLynxEM)
- VIDEO_VISIBLE_COLS visible pixel columns (cols=pitch)
- VIDEO_VISIBLE_ROWS visible pixel rows
- VIDEO_PIXEL_SIZE bytes per pixel
- VIDEO_DATA_FORMAT graphic data format
- (0-5, cf. cfb_console.c)
- VIDEO_FB_ADRS framebuffer address
- VIDEO_KBD_INIT_FCT keyboard int fct (i.e. rx51_kp_init())
- VIDEO_TSTC_FCT test char fct (i.e. rx51_kp_tstc)
- VIDEO_GETC_FCT get char fct (i.e. rx51_kp_getc)
- CONFIG_VIDEO_LOGO display Linux logo in upper left corner
- CONFIG_VIDEO_BMP_LOGO use bmp_logo.h instead of linux_logo.h
- for logo. Requires CONFIG_VIDEO_LOGO
- CONFIG_CONSOLE_EXTRA_INFO
- additional board info beside
- the logo
- CONFIG_HIDE_LOGO_VERSION
- do not display bootloader
- version string
- When CONFIG_CFB_CONSOLE is defined, the video console is the
- default console. The serial console can be forced by setting the
- environment 'console=serial'.
- config CFB_CONSOLE_ANSI
- bool "Support ANSI escape sequences"
- depends on CFB_CONSOLE
- help
- This allows the colour buffer frame buffer driver to support
- a limited number of ANSI escape sequences (cursor control,
- erase functions and limited graphics rendition control). Normal
- output from U-Boot will pass through this filter.
- config VGA_AS_SINGLE_DEVICE
- bool "Set the video as an output-only device"
- depends on CFB_CONSOLE
- default y
- help
- If enable the framebuffer device will be initialized as an
- output-only device. The Keyboard driver will not be set up. This
- may be used if you have no keyboard device, or more than one
- (USB Keyboard, AT Keyboard).
- config VIDEO_SW_CURSOR
- bool "Enable a software cursor"
- depends on CFB_CONSOLE
- default y if CFB_CONSOLE
- help
- This draws a cursor after the last character. No blinking is
- provided. This makes it possible to see the current cursor
- position when entering text on the console. It is recommended to
- enable this.
- config CONSOLE_EXTRA_INFO
- bool "Display additional board information"
- depends on CFB_CONSOLE
- help
- Display additional board information strings that normally go to
- the serial port. When this option is enabled, a board-specific
- function video_get_info_str() is called to get the string for
- each line of the display. The function should return the string,
- which can be empty if there is nothing to display for that line.
- config CONSOLE_SCROLL_LINES
- int "Number of lines to scroll the console by"
- depends on CFB_CONSOLE || DM_VIDEO || LCD
- default 1
- help
- When the console need to be scrolled, this is the number of
- lines to scroll by. It defaults to 1. Increasing this makes the
- console jump but can help speed up operation when scrolling
- is slow.
- config VIDEO_CT69000
- bool "Enable Chips & Technologies 69000 video driver"
- depends on VIDEO
- help
- This enables a frame buffer driver for the Chips & Technologies
- ct69000, a fairly old graphics device (circa 2000) which is used
- on some hardware. It operates over the ISA bus, and supports
- some acceleration features.
- For the CT69000 and SMI_LYNXEM drivers, videomode is
- selected via environment 'videomode'. Two different ways
- are possible:
- - "videomode=num" 'num' is a standard LiLo mode numbers.
- Following standard modes are supported (* is default):
- Colors 640x480 800x600 1024x768 1152x864 1280x1024
- -------------+---------------------------------------------
- 8 bits | 0x301* 0x303 0x305 0x161 0x307
- 15 bits | 0x310 0x313 0x316 0x162 0x319
- 16 bits | 0x311 0x314 0x317 0x163 0x31A
- 24 bits | 0x312 0x315 0x318 ? 0x31B
- -------------+---------------------------------------------
- (i.e. setenv videomode 317; saveenv; reset;)
- - "videomode=bootargs" all the video parameters are parsed
- from the bootargs. (See drivers/video/videomodes.c)
- config SYS_CONSOLE_BG_COL
- hex "Background colour"
- depends on CFB_CONSOLE || VIDEO_CT69000
- default 0x00
- help
- Defines the background colour for the console. The value is from
- 0x00 to 0xff and the meaning depends on the graphics card.
- Typically, 0x00 means black and 0xff means white. Do not set
- the background and foreground to the same colour or you will see
- nothing.
- config SYS_CONSOLE_FG_COL
- hex "Foreground colour"
- depends on CFB_CONSOLE || VIDEO_CT69000
- default 0xa0
- help
- Defines the foreground colour for the console. The value is from
- 0x00 to 0xff and the meaning depends on the graphics card.
- Typically, 0x00 means black and 0xff means white. Do not set
- the background and foreground to the same colour or you will see
- nothing.
- config LCD
- bool "Enable legacy LCD support"
- help
- Define this to enable LCD support (for output to LCD display).
- You will also need to select an LCD driver using an additional
- CONFIG option. See the README for details. Drives which have been
- converted to driver model will instead used CONFIG_DM_VIDEO.
- endmenu
|