Masahiro Yamada | cc85b7b | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 1 | # |
| 2 | # Video configuration |
| 3 | # |
| 4 | |
| 5 | menu "Graphics support" |
| 6 | |
Simon Glass | 52cb504 | 2022-10-18 07:46:31 -0600 | [diff] [blame] | 7 | config VIDEO |
Simon Glass | 623d28f | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 8 | bool "Enable driver model support for LCD/video" |
| 9 | depends on DM |
| 10 | help |
| 11 | This enables driver model for LCD and video devices. These support |
| 12 | a bitmap display of various sizes and depths which can be drawn on |
| 13 | to display a command-line console or splash screen. Enabling this |
| 14 | option compiles in the video uclass and routes all LCD/video access |
| 15 | through this. |
| 16 | |
Simon Glass | 52cb504 | 2022-10-18 07:46:31 -0600 | [diff] [blame] | 17 | if VIDEO |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 18 | |
Dzmitry Sankouski | 7fa964a | 2023-03-07 13:21:14 +0300 | [diff] [blame] | 19 | config VIDEO_FONT_4X6 |
| 20 | bool "4 x 6 font size" |
| 21 | help |
| 22 | Font for video console driver, 4 x 6 pixels. |
| 23 | Provides character bitmap data in header file. |
| 24 | When selecting multiple fonts, you may want to enable CMD_SELECT_FONT too. |
| 25 | |
| 26 | config VIDEO_FONT_8X16 |
| 27 | bool "8 x 16 font size" |
| 28 | default y |
| 29 | help |
| 30 | Font for video console driver, 8 x 16 pixels |
| 31 | Provides character bitmap data in header file. |
| 32 | When selecting multiple fonts, you may want to enable CMD_SELECT_FONT too. |
| 33 | |
Dzmitry Sankouski | 7932a99 | 2023-02-27 20:37:07 +0300 | [diff] [blame] | 34 | config VIDEO_FONT_SUN12X22 |
| 35 | bool "12 x 22 font size" |
| 36 | help |
| 37 | Font for video console driver, 12 x 22 pixels |
| 38 | Provides character bitmap data in header file. |
| 39 | When selecting multiple fonts, you may want to enable CMD_SELECT_FONT too. |
| 40 | |
Dzmitry Sankouski | efadfde | 2023-02-27 20:37:08 +0300 | [diff] [blame] | 41 | config VIDEO_FONT_16X32 |
| 42 | bool "16 x 32 font size" |
| 43 | help |
| 44 | Font for video console driver, 16 x 32 pixels |
| 45 | Provides character bitmap data in header file. |
| 46 | When selecting multiple fonts, you may want to enable CMD_SELECT_FONT too. |
| 47 | |
Simon Glass | 8e5a8b6 | 2021-11-19 13:24:01 -0700 | [diff] [blame] | 48 | config VIDEO_LOGO |
| 49 | bool "Show the U-Boot logo on the display" |
Simon Glass | 7a652859 | 2021-11-19 13:24:04 -0700 | [diff] [blame] | 50 | default y if !SPLASH_SCREEN |
Simon Glass | 87a3cd7 | 2021-11-19 13:24:03 -0700 | [diff] [blame] | 51 | select VIDEO_BMP_RLE8 |
Simon Glass | 8e5a8b6 | 2021-11-19 13:24:01 -0700 | [diff] [blame] | 52 | help |
| 53 | This enables showing the U-Boot logo on the display when a video |
| 54 | device is probed. It appears at the top right. The logo itself is at |
| 55 | tools/logos/u-boot_logo.bmp and looks best when the display has a |
| 56 | black background. |
| 57 | |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 58 | config BACKLIGHT |
| 59 | bool "Enable panel backlight uclass support" |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 60 | default y |
| 61 | help |
| 62 | This provides backlight uclass driver that enables basic panel |
| 63 | backlight support. |
| 64 | |
Simon Glass | c3d2f35 | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 65 | config VIDEO_PCI_DEFAULT_FB_SIZE |
| 66 | hex "Default framebuffer size to use if no drivers request it" |
Bin Meng | 88fdb44 | 2023-07-23 12:40:30 +0800 | [diff] [blame] | 67 | default 0x1000000 if X86 |
Bin Meng | 7c509a0 | 2023-07-23 12:40:31 +0800 | [diff] [blame] | 68 | default 0x800000 if !X86 && VIDEO_BOCHS |
Tom Rini | f18679c | 2023-08-02 11:09:43 -0400 | [diff] [blame] | 69 | default 0x0 if !X86 && !VIDEO_BOCHS |
Simon Glass | c3d2f35 | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 70 | help |
| 71 | Generally, video drivers request the amount of memory they need for |
| 72 | the frame buffer when they are bound, by setting the size field in |
Dario Binacchi | 2ec8577 | 2021-01-23 19:43:52 +0100 | [diff] [blame] | 73 | struct video_uc_plat. That memory is then reserved for use after |
Simon Glass | c3d2f35 | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 74 | relocation. But PCI drivers cannot be bound before relocation unless |
| 75 | they are mentioned in the devicetree. |
| 76 | |
| 77 | With this value set appropriately, it is possible for PCI video |
| 78 | devices to have a framebuffer allocated by U-Boot. |
| 79 | |
| 80 | Note: the framebuffer needs to be large enough to store all pixels at |
Bin Meng | 0524170 | 2023-07-23 12:40:29 +0800 | [diff] [blame] | 81 | maximum resolution. For example, at 2560 x 1600 with 32 bits per |
Simon Glass | c3d2f35 | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 82 | pixel, 2560 * 1600 * 32 / 8 = 0xfa0000 bytes are needed. |
| 83 | |
Simon Glass | 73c9c37 | 2020-07-02 21:12:20 -0600 | [diff] [blame] | 84 | config VIDEO_COPY |
| 85 | bool "Enable copying the frame buffer to a hardware copy" |
Simon Glass | 73c9c37 | 2020-07-02 21:12:20 -0600 | [diff] [blame] | 86 | help |
| 87 | On some machines (e.g. x86), reading from the frame buffer is very |
| 88 | slow because it is uncached. To improve performance, this feature |
| 89 | allows the frame buffer to be kept in cached memory (allocated by |
| 90 | U-Boot) and then copied to the hardware frame-buffer as needed. |
| 91 | |
| 92 | To use this, your video driver must set @copy_base in |
Dario Binacchi | 2ec8577 | 2021-01-23 19:43:52 +0100 | [diff] [blame] | 93 | struct video_uc_plat. |
Simon Glass | 73c9c37 | 2020-07-02 21:12:20 -0600 | [diff] [blame] | 94 | |
Patrick Delaunay | 4300f07 | 2017-08-03 12:36:06 +0200 | [diff] [blame] | 95 | config BACKLIGHT_PWM |
| 96 | bool "Generic PWM based Backlight Driver" |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 97 | depends on BACKLIGHT && DM_PWM |
Patrick Delaunay | 4300f07 | 2017-08-03 12:36:06 +0200 | [diff] [blame] | 98 | default y |
| 99 | help |
| 100 | If you have a LCD backlight adjustable by PWM, say Y to enable |
| 101 | this driver. |
| 102 | This driver can be use with "simple-panel" and |
| 103 | it understands the standard device tree |
| 104 | (leds/backlight/pwm-backlight.txt) |
| 105 | |
Patrick Delaunay | a3c046f | 2017-08-03 12:36:07 +0200 | [diff] [blame] | 106 | config BACKLIGHT_GPIO |
| 107 | bool "Generic GPIO based Backlight Driver" |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 108 | depends on BACKLIGHT |
Patrick Delaunay | a3c046f | 2017-08-03 12:36:07 +0200 | [diff] [blame] | 109 | help |
| 110 | If you have a LCD backlight adjustable by GPIO, say Y to enable |
| 111 | this driver. |
| 112 | This driver can be used with "simple-panel" and |
| 113 | it understands the standard device tree |
| 114 | (leds/backlight/gpio-backlight.txt) |
| 115 | |
Simon Glass | 623d28f | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 116 | config VIDEO_BPP8 |
| 117 | bool "Support 8-bit-per-pixel displays" |
Anatolij Gustschin | dba3670 | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 118 | default y |
Simon Glass | 623d28f | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 119 | help |
| 120 | Support drawing text and bitmaps onto a 8-bit-per-pixel display. |
| 121 | Enabling this will include code to support this display. Without |
| 122 | this option, such displays will not be supported and console output |
| 123 | will be empty. |
| 124 | |
| 125 | config VIDEO_BPP16 |
| 126 | bool "Support 16-bit-per-pixel displays" |
Anatolij Gustschin | dba3670 | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 127 | default y |
Simon Glass | 623d28f | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 128 | help |
| 129 | Support drawing text and bitmaps onto a 16-bit-per-pixel display. |
| 130 | Enabling this will include code to support this display. Without |
| 131 | this option, such displays will not be supported and console output |
| 132 | will be empty. |
| 133 | |
| 134 | config VIDEO_BPP32 |
| 135 | bool "Support 32-bit-per-pixel displays" |
Anatolij Gustschin | dba3670 | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 136 | default y |
Simon Glass | 623d28f | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 137 | help |
| 138 | Support drawing text and bitmaps onto a 32-bit-per-pixel display. |
| 139 | Enabling this will include code to support this display. Without |
| 140 | this option, such displays will not be supported and console output |
| 141 | will be empty. |
| 142 | |
Rob Clark | 06e7a0d | 2017-09-13 18:12:21 -0400 | [diff] [blame] | 143 | config VIDEO_ANSI |
| 144 | bool "Support ANSI escape sequences in video console" |
Simon Glass | 80a8e80 | 2023-01-06 08:52:29 -0600 | [diff] [blame] | 145 | default y if EFI_LOADER |
Rob Clark | 06e7a0d | 2017-09-13 18:12:21 -0400 | [diff] [blame] | 146 | help |
| 147 | Enable ANSI escape sequence decoding for a more fully functional |
Simon Glass | 80a8e80 | 2023-01-06 08:52:29 -0600 | [diff] [blame] | 148 | console. Functionality includes changing the text colour and moving |
| 149 | the cursor. These date from the 1970s and are still widely used today |
| 150 | to control a text terminal. U-Boot implements these by decoding the |
| 151 | sequences and performing the appropriate operation. |
Rob Clark | 06e7a0d | 2017-09-13 18:12:21 -0400 | [diff] [blame] | 152 | |
Yannick Fertré | d08fb32 | 2019-10-07 15:29:04 +0200 | [diff] [blame] | 153 | config VIDEO_MIPI_DSI |
| 154 | bool "Support MIPI DSI interface" |
Yannick Fertré | d08fb32 | 2019-10-07 15:29:04 +0200 | [diff] [blame] | 155 | help |
| 156 | Support MIPI DSI interface for driving a MIPI compatible device. |
| 157 | The MIPI Display Serial Interface (MIPI DSI) defines a high-speed |
| 158 | serial interface between a host processor and a display module. |
| 159 | |
Simon Glass | 6e0721d | 2016-01-22 21:53:37 +0100 | [diff] [blame] | 160 | config CONSOLE_NORMAL |
| 161 | bool "Support a simple text console" |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 162 | default y |
Simon Glass | 6e0721d | 2016-01-22 21:53:37 +0100 | [diff] [blame] | 163 | help |
| 164 | Support drawing text on the frame buffer console so that it can be |
| 165 | used as a console. Rotation is not supported by this driver (see |
| 166 | CONFIG_CONSOLE_ROTATION for that). A built-in 8x16 font is used |
| 167 | for the display. |
| 168 | |
| 169 | config CONSOLE_ROTATION |
Simon Glass | 87aae88 | 2016-01-18 19:52:19 -0700 | [diff] [blame] | 170 | bool "Support rotated displays" |
Simon Glass | 87aae88 | 2016-01-18 19:52:19 -0700 | [diff] [blame] | 171 | help |
| 172 | Sometimes, for example if the display is mounted in portrait |
| 173 | mode or even if it's mounted landscape but rotated by 180degree, |
| 174 | we need to rotate our content of the display relative to the |
| 175 | framebuffer, so that user can read the messages which are |
| 176 | printed out. Enable this option to include a text driver which can |
| 177 | support this. The rotation is set by the 'rot' parameter in |
| 178 | struct video_priv: 0=unrotated, 1=90 degrees clockwise, 2=180 |
| 179 | degrees, 3=270 degrees. |
| 180 | |
Simon Glass | 2ef353e | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 181 | config CONSOLE_TRUETYPE |
| 182 | bool "Support a console that uses TrueType fonts" |
Simon Glass | 0b22604 | 2024-01-04 08:10:39 -0700 | [diff] [blame] | 183 | select X86_HARDFP if X86 |
Simon Glass | 2ef353e | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 184 | help |
| 185 | TrueTrype fonts can provide outline-drawing capability rather than |
| 186 | needing to provide a bitmap for each font and size that is needed. |
| 187 | With this option you can adjust the text size and use a variety of |
| 188 | fonts. Note that this is noticeably slower than with normal console. |
| 189 | |
| 190 | config CONSOLE_TRUETYPE_SIZE |
| 191 | int "TrueType font size" |
| 192 | depends on CONSOLE_TRUETYPE |
| 193 | default 18 |
| 194 | help |
| 195 | This sets the font size for the console. The size is measured in |
| 196 | pixels and is the nominal height of a character. Note that fonts |
| 197 | are commonly measured in 'points', being 1/72 inch (about 3.52mm). |
| 198 | However that measurement depends on the size of your display and |
| 199 | there is no standard display density. At present there is not a |
| 200 | method to select the display's physical size, which would allow |
| 201 | U-Boot to calculate the correct font size. |
| 202 | |
Simon Glass | 7959776 | 2022-10-06 08:36:11 -0600 | [diff] [blame] | 203 | config CONSOLE_TRUETYPE_MAX_METRICS |
| 204 | int "TrueType maximum number of font / size combinations" |
| 205 | depends on CONSOLE_TRUETYPE |
| 206 | default 10 if EXPO |
| 207 | default 1 |
| 208 | help |
| 209 | This sets the number of font / size combinations which can be used by |
| 210 | the console. For simple console use a single font is enough. When |
| 211 | boot menus are in use, this may need to be increased. |
| 212 | |
| 213 | Note that a separate entry is needed for each font size, even if the |
| 214 | font itself is the same. This is because the entry caches various |
| 215 | font metrics which are expensive to regenerate each time the font |
| 216 | size changes. |
| 217 | |
Simon Glass | d65a142 | 2017-04-26 22:27:57 -0600 | [diff] [blame] | 218 | config SYS_WHITE_ON_BLACK |
| 219 | bool "Display console as white on a black background" |
Trevor Woerner | 513f640 | 2020-05-06 08:02:41 -0400 | [diff] [blame] | 220 | default y if ARCH_AT91 || ARCH_EXYNOS || ARCH_ROCKCHIP || ARCH_TEGRA || X86 || ARCH_SUNXI |
Simon Glass | d65a142 | 2017-04-26 22:27:57 -0600 | [diff] [blame] | 221 | help |
| 222 | Normally the display is black on a white background, Enable this |
| 223 | option to invert this, i.e. white on a black background. This can be |
| 224 | better in low-light situations or to reduce eye strain in some |
| 225 | cases. |
| 226 | |
Rob Clark | f141188 | 2017-08-03 12:47:01 -0400 | [diff] [blame] | 227 | config NO_FB_CLEAR |
| 228 | bool "Skip framebuffer clear" |
| 229 | help |
| 230 | If firmware (whatever loads u-boot) has already put a splash image |
| 231 | on screen, you might want to preserve it until whatever u-boot |
| 232 | loads takes over the screen. This, for example, can be used to |
| 233 | keep splash image on screen until grub graphical boot menu starts. |
| 234 | |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 235 | config PANEL |
| 236 | bool "Enable panel uclass support" |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 237 | default y |
| 238 | help |
| 239 | This provides panel uclass driver that enables basic panel support. |
| 240 | |
| 241 | config SIMPLE_PANEL |
| 242 | bool "Enable simple panel support" |
Asherah Connor | 81b0f61 | 2021-03-03 14:46:47 +1100 | [diff] [blame] | 243 | depends on PANEL && BACKLIGHT && DM_GPIO |
Anatolij Gustschin | 0dcb3fd | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 244 | default y |
| 245 | help |
| 246 | This turns on a simple panel driver that enables a compatible |
| 247 | video panel. |
| 248 | |
Simon Glass | f8360fe | 2022-10-06 08:36:07 -0600 | [diff] [blame] | 249 | config PANEL_HX8238D |
| 250 | bool "Enable Himax HX-8238D LCD driver" |
| 251 | depends on PANEL |
| 252 | help |
| 253 | Support for HX-8238D LCD Panel |
| 254 | The HX8238-D is a single chip controller and driver LSI that |
| 255 | integrates the power circuit. |
| 256 | It can drive a maximum 960x240 dot graphics on a-TFT panel |
| 257 | displays in 16M colors with dithering. |
| 258 | |
Simon Glass | 2ef353e | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 259 | source "drivers/video/fonts/Kconfig" |
| 260 | |
Simon Glass | 86f0746 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 261 | config VIDCONSOLE_AS_LCD |
Patrick Delaunay | 60b9224 | 2020-07-01 14:56:10 +0200 | [diff] [blame] | 262 | bool "Use 'vidconsole' when CONFIG_VIDCONSOLE_AS_NAME string is seen in stdout" |
Patrick Delaunay | 60b9224 | 2020-07-01 14:56:10 +0200 | [diff] [blame] | 263 | help |
| 264 | This is a work-around for boards which have 'lcd' or 'vga' in their |
| 265 | stdout environment variable, but have moved to use driver model for |
| 266 | video. In this case the console will no-longer work. While it is |
| 267 | possible to update the environment, the breakage may be confusing for |
| 268 | users. This option will be removed around the end of 2020. |
| 269 | |
| 270 | config VIDCONSOLE_AS_NAME |
| 271 | string "Use 'vidconsole' when string defined here is seen in stdout" |
| 272 | depends on VIDCONSOLE_AS_LCD |
Anatolij Gustschin | 4702064 | 2020-05-23 17:11:20 +0200 | [diff] [blame] | 273 | default "lcd" if LCD || TEGRA_COMMON |
| 274 | default "vga" if !LCD |
Simon Glass | 86f0746 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 275 | help |
Anatolij Gustschin | 4702064 | 2020-05-23 17:11:20 +0200 | [diff] [blame] | 276 | This is a work-around for boards which have 'lcd' or 'vga' in their |
| 277 | stdout environment variable, but have moved to use driver model for |
| 278 | video. In this case the console will no-longer work. While it is |
| 279 | possible to update the environment, the breakage may be confusing for |
| 280 | users. This option will be removed around the end of 2020. |
Simon Glass | 86f0746 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 281 | |
Simon Glass | 90ca96a | 2023-07-15 21:39:18 -0600 | [diff] [blame] | 282 | config VIDEO_BOCHS |
| 283 | bool "Enable Bochs video emulation for QEMU" |
Simon Glass | 90ca96a | 2023-07-15 21:39:18 -0600 | [diff] [blame] | 284 | help |
| 285 | Enable this to use the Bochs video support provided in the QEMU |
| 286 | emulator. This appears as a PCI device which U-Boot can set up to |
| 287 | provide a frame buffer. |
| 288 | |
| 289 | if VIDEO_BOCHS |
| 290 | |
| 291 | config VIDEO_BOCHS_SIZE_X |
| 292 | int "Width of display (X resolution)" |
| 293 | default 1280 |
| 294 | help |
| 295 | Sets the width of the display. |
| 296 | |
| 297 | These two options control the size of the display set up by QEMU. |
| 298 | Typical sizes are 1024 x 768 or 1280 x 1024. |
| 299 | |
| 300 | config VIDEO_BOCHS_SIZE_Y |
| 301 | int "High of display (Y resolution)" |
| 302 | default 1024 |
| 303 | help |
| 304 | Sets the height of the display. |
| 305 | |
| 306 | These two options control the size of the display set up by QEMU. |
| 307 | Typical sizes are 1024 x 768 or 1280 x 1024. |
| 308 | |
| 309 | endif |
| 310 | |
Bin Meng | a0676be | 2016-10-09 04:14:16 -0700 | [diff] [blame] | 311 | config VIDEO_COREBOOT |
| 312 | bool "Enable coreboot framebuffer driver support" |
Simon Glass | d2398ab | 2021-03-15 18:00:27 +1300 | [diff] [blame] | 313 | depends on X86 |
Bin Meng | a0676be | 2016-10-09 04:14:16 -0700 | [diff] [blame] | 314 | help |
| 315 | Turn on this option to enable a framebuffer driver when U-Boot is |
| 316 | loaded by coreboot where the graphics device is configured by |
| 317 | coreboot already. This can in principle be used with any platform |
| 318 | that coreboot supports. |
| 319 | |
Bin Meng | 0f862b9 | 2018-06-12 08:36:22 -0700 | [diff] [blame] | 320 | config VIDEO_EFI |
| 321 | bool "Enable EFI framebuffer driver support" |
Simon Glass | 04c26ff | 2021-11-03 21:09:10 -0600 | [diff] [blame] | 322 | depends on EFI_STUB || EFI_APP |
Bin Meng | 0f862b9 | 2018-06-12 08:36:22 -0700 | [diff] [blame] | 323 | help |
| 324 | Turn on this option to enable a framebuffeer driver when U-Boot is |
| 325 | loaded as a payload (see README.u-boot_on_efi) by an EFI BIOS where |
| 326 | the graphics device is configured by the EFI BIOS already. This can |
| 327 | in principle be used with any platform that has an EFI BIOS. |
| 328 | |
Simon Glass | 42bf3ee | 2014-12-29 19:32:28 -0700 | [diff] [blame] | 329 | config VIDEO_VESA |
| 330 | bool "Enable VESA video driver support" |
Simon Glass | 42bf3ee | 2014-12-29 19:32:28 -0700 | [diff] [blame] | 331 | help |
| 332 | Turn on this option to enable a very simple driver which uses vesa |
| 333 | to discover the video mode and then provides a frame buffer for use |
| 334 | by U-Boot. This can in principle be used with any platform that |
| 335 | supports PCI and video cards that support VESA BIOS Extension (VBE). |
| 336 | |
Bin Meng | 072b79d | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 337 | config FRAMEBUFFER_SET_VESA_MODE |
| 338 | bool "Set framebuffer graphics resolution" |
Simon Glass | dec49b7 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 339 | depends on VIDEO_VESA || VIDEO_BROADWELL_IGD |
Bin Meng | 072b79d | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 340 | help |
| 341 | Set VESA/native framebuffer mode (needed for bootsplash and graphical |
| 342 | framebuffer console) |
| 343 | |
| 344 | choice |
| 345 | prompt "framebuffer graphics resolution" |
Bin Meng | 4da8a3f | 2018-04-11 22:02:16 -0700 | [diff] [blame] | 346 | default FRAMEBUFFER_VESA_MODE_118 |
Bin Meng | 072b79d | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 347 | depends on FRAMEBUFFER_SET_VESA_MODE |
| 348 | help |
| 349 | This option sets the resolution used for the U-Boot framebuffer (and |
| 350 | bootsplash screen). |
| 351 | |
| 352 | config FRAMEBUFFER_VESA_MODE_100 |
| 353 | bool "640x400 256-color" |
| 354 | |
| 355 | config FRAMEBUFFER_VESA_MODE_101 |
| 356 | bool "640x480 256-color" |
| 357 | |
| 358 | config FRAMEBUFFER_VESA_MODE_102 |
| 359 | bool "800x600 16-color" |
| 360 | |
| 361 | config FRAMEBUFFER_VESA_MODE_103 |
| 362 | bool "800x600 256-color" |
| 363 | |
| 364 | config FRAMEBUFFER_VESA_MODE_104 |
| 365 | bool "1024x768 16-color" |
| 366 | |
| 367 | config FRAMEBUFFER_VESA_MODE_105 |
Bin Meng | 932adc6 | 2015-08-09 23:26:59 -0700 | [diff] [blame] | 368 | bool "1024x768 256-color" |
Bin Meng | 072b79d | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 369 | |
| 370 | config FRAMEBUFFER_VESA_MODE_106 |
| 371 | bool "1280x1024 16-color" |
| 372 | |
| 373 | config FRAMEBUFFER_VESA_MODE_107 |
| 374 | bool "1280x1024 256-color" |
| 375 | |
| 376 | config FRAMEBUFFER_VESA_MODE_108 |
| 377 | bool "80x60 text" |
| 378 | |
| 379 | config FRAMEBUFFER_VESA_MODE_109 |
| 380 | bool "132x25 text" |
| 381 | |
| 382 | config FRAMEBUFFER_VESA_MODE_10A |
| 383 | bool "132x43 text" |
| 384 | |
| 385 | config FRAMEBUFFER_VESA_MODE_10B |
| 386 | bool "132x50 text" |
| 387 | |
| 388 | config FRAMEBUFFER_VESA_MODE_10C |
| 389 | bool "132x60 text" |
| 390 | |
| 391 | config FRAMEBUFFER_VESA_MODE_10D |
| 392 | bool "320x200 32k-color (1:5:5:5)" |
| 393 | |
| 394 | config FRAMEBUFFER_VESA_MODE_10E |
| 395 | bool "320x200 64k-color (5:6:5)" |
| 396 | |
| 397 | config FRAMEBUFFER_VESA_MODE_10F |
| 398 | bool "320x200 16.8M-color (8:8:8)" |
| 399 | |
| 400 | config FRAMEBUFFER_VESA_MODE_110 |
| 401 | bool "640x480 32k-color (1:5:5:5)" |
| 402 | |
| 403 | config FRAMEBUFFER_VESA_MODE_111 |
| 404 | bool "640x480 64k-color (5:6:5)" |
| 405 | |
| 406 | config FRAMEBUFFER_VESA_MODE_112 |
| 407 | bool "640x480 16.8M-color (8:8:8)" |
| 408 | |
| 409 | config FRAMEBUFFER_VESA_MODE_113 |
| 410 | bool "800x600 32k-color (1:5:5:5)" |
| 411 | |
| 412 | config FRAMEBUFFER_VESA_MODE_114 |
| 413 | bool "800x600 64k-color (5:6:5)" |
| 414 | |
| 415 | config FRAMEBUFFER_VESA_MODE_115 |
| 416 | bool "800x600 16.8M-color (8:8:8)" |
| 417 | |
| 418 | config FRAMEBUFFER_VESA_MODE_116 |
| 419 | bool "1024x768 32k-color (1:5:5:5)" |
| 420 | |
| 421 | config FRAMEBUFFER_VESA_MODE_117 |
| 422 | bool "1024x768 64k-color (5:6:5)" |
| 423 | |
| 424 | config FRAMEBUFFER_VESA_MODE_118 |
| 425 | bool "1024x768 16.8M-color (8:8:8)" |
| 426 | |
| 427 | config FRAMEBUFFER_VESA_MODE_119 |
| 428 | bool "1280x1024 32k-color (1:5:5:5)" |
| 429 | |
| 430 | config FRAMEBUFFER_VESA_MODE_11A |
| 431 | bool "1280x1024 64k-color (5:6:5)" |
| 432 | |
| 433 | config FRAMEBUFFER_VESA_MODE_11B |
| 434 | bool "1280x1024 16.8M-color (8:8:8)" |
| 435 | |
| 436 | config FRAMEBUFFER_VESA_MODE_USER |
| 437 | bool "Manually select VESA mode" |
| 438 | |
| 439 | endchoice |
| 440 | |
| 441 | # Map the config names to an integer (KB). |
| 442 | config FRAMEBUFFER_VESA_MODE |
| 443 | prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER |
| 444 | hex |
| 445 | default 0x100 if FRAMEBUFFER_VESA_MODE_100 |
| 446 | default 0x101 if FRAMEBUFFER_VESA_MODE_101 |
| 447 | default 0x102 if FRAMEBUFFER_VESA_MODE_102 |
| 448 | default 0x103 if FRAMEBUFFER_VESA_MODE_103 |
| 449 | default 0x104 if FRAMEBUFFER_VESA_MODE_104 |
| 450 | default 0x105 if FRAMEBUFFER_VESA_MODE_105 |
| 451 | default 0x106 if FRAMEBUFFER_VESA_MODE_106 |
| 452 | default 0x107 if FRAMEBUFFER_VESA_MODE_107 |
| 453 | default 0x108 if FRAMEBUFFER_VESA_MODE_108 |
| 454 | default 0x109 if FRAMEBUFFER_VESA_MODE_109 |
| 455 | default 0x10A if FRAMEBUFFER_VESA_MODE_10A |
| 456 | default 0x10B if FRAMEBUFFER_VESA_MODE_10B |
| 457 | default 0x10C if FRAMEBUFFER_VESA_MODE_10C |
| 458 | default 0x10D if FRAMEBUFFER_VESA_MODE_10D |
| 459 | default 0x10E if FRAMEBUFFER_VESA_MODE_10E |
| 460 | default 0x10F if FRAMEBUFFER_VESA_MODE_10F |
| 461 | default 0x110 if FRAMEBUFFER_VESA_MODE_110 |
| 462 | default 0x111 if FRAMEBUFFER_VESA_MODE_111 |
| 463 | default 0x112 if FRAMEBUFFER_VESA_MODE_112 |
| 464 | default 0x113 if FRAMEBUFFER_VESA_MODE_113 |
| 465 | default 0x114 if FRAMEBUFFER_VESA_MODE_114 |
| 466 | default 0x115 if FRAMEBUFFER_VESA_MODE_115 |
| 467 | default 0x116 if FRAMEBUFFER_VESA_MODE_116 |
| 468 | default 0x117 if FRAMEBUFFER_VESA_MODE_117 |
| 469 | default 0x118 if FRAMEBUFFER_VESA_MODE_118 |
| 470 | default 0x119 if FRAMEBUFFER_VESA_MODE_119 |
| 471 | default 0x11A if FRAMEBUFFER_VESA_MODE_11A |
| 472 | default 0x11B if FRAMEBUFFER_VESA_MODE_11B |
| 473 | default 0x117 if FRAMEBUFFER_VESA_MODE_USER |
| 474 | |
Hans de Goede | dfc1efe | 2015-08-08 16:03:29 +0200 | [diff] [blame] | 475 | config VIDEO_LCD_ANX9804 |
| 476 | bool "ANX9804 bridge chip" |
Hans de Goede | dfc1efe | 2015-08-08 16:03:29 +0200 | [diff] [blame] | 477 | ---help--- |
| 478 | Support for the ANX9804 bridge chip, which can take pixel data coming |
| 479 | from a parallel LCD interface and translate it on the fy into a DP |
| 480 | interface for driving eDP TFT displays. It uses I2C for configuration. |
| 481 | |
Tom Rini | 4c04742 | 2022-03-18 08:38:28 -0400 | [diff] [blame] | 482 | config ATMEL_LCD |
| 483 | bool "Atmel LCD panel support" |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 484 | depends on ARCH_AT91 |
Tom Rini | 4c04742 | 2022-03-18 08:38:28 -0400 | [diff] [blame] | 485 | |
| 486 | config ATMEL_LCD_BGR555 |
| 487 | bool "Display in BGR555 mode" |
| 488 | help |
| 489 | Use the BGR555 output mode. Otherwise RGB565 is used. |
| 490 | |
Simon Glass | 7b3fabb | 2022-01-23 07:04:14 -0700 | [diff] [blame] | 491 | config VIDEO_BCM2835 |
| 492 | bool "Display support for BCM2835" |
| 493 | help |
| 494 | The graphics processor already sets up the display so this driver |
| 495 | simply checks the resolution and then sets up the frame buffer with |
| 496 | that same resolution (or as near as possible) and 32bpp depth, so |
| 497 | that U-Boot can access it with full colour depth. |
| 498 | |
Svyatoslav Ryhel | bd932b7 | 2023-04-25 10:51:47 +0300 | [diff] [blame] | 499 | config VIDEO_LCD_ENDEAVORU |
| 500 | tristate "Endeavoru 720x1280 DSI video mode panel" |
| 501 | depends on PANEL && BACKLIGHT |
| 502 | select VIDEO_MIPI_DSI |
| 503 | help |
| 504 | Say Y here if you want to enable support for the IPS-LCD panel |
| 505 | module for HTC One X. Driver supports a family of panels, |
| 506 | made at least by 3 vendors (Sharp, Sony and AUO), but set up |
| 507 | using the same DSI command sequence. The panel has a 720x1280 |
| 508 | resolution and uses 24 bit RGB per pixel. |
| 509 | |
Ondrej Jirman | 55453d4 | 2023-05-25 14:34:35 +0200 | [diff] [blame] | 510 | config VIDEO_LCD_HIMAX_HX8394 |
| 511 | bool "Himax HX8394 DSI LCD panel support" |
| 512 | depends on PANEL && BACKLIGHT |
| 513 | select VIDEO_MIPI_DSI |
| 514 | help |
| 515 | Say Y here if you want to enable support for Himax HX8394 |
| 516 | dsi 4dl panel. |
| 517 | |
Yannick Fertré | 5b855d4 | 2019-10-07 15:29:08 +0200 | [diff] [blame] | 518 | config VIDEO_LCD_ORISETECH_OTM8009A |
| 519 | bool "OTM8009A DSI LCD panel support" |
Yannick Fertré | 5b855d4 | 2019-10-07 15:29:08 +0200 | [diff] [blame] | 520 | select VIDEO_MIPI_DSI |
Yannick Fertré | 5b855d4 | 2019-10-07 15:29:08 +0200 | [diff] [blame] | 521 | help |
| 522 | Say Y here if you want to enable support for Orise Technology |
| 523 | otm8009a 480x800 dsi 2dl panel. |
| 524 | |
Svyatoslav Ryhel | 9497e75 | 2024-01-31 08:57:15 +0200 | [diff] [blame] | 525 | config VIDEO_LCD_LG_LD070WX3 |
| 526 | bool "LD070WX3 DSI LCD panel support" |
| 527 | depends on PANEL && BACKLIGHT |
| 528 | select VIDEO_MIPI_DSI |
| 529 | help |
| 530 | Say Y here if you want to enable support for LG LD070WX3 |
| 531 | 800x1280 DSI video mode panel. |
| 532 | |
Yannick Fertré | b038fed | 2019-10-07 15:29:09 +0200 | [diff] [blame] | 533 | config VIDEO_LCD_RAYDIUM_RM68200 |
| 534 | bool "RM68200 DSI LCD panel support" |
Yannick Fertré | b038fed | 2019-10-07 15:29:09 +0200 | [diff] [blame] | 535 | select VIDEO_MIPI_DSI |
Yannick Fertré | b038fed | 2019-10-07 15:29:09 +0200 | [diff] [blame] | 536 | help |
| 537 | Say Y here if you want to enable support for Raydium RM68200 |
| 538 | 720x1280 DSI video mode panel. |
| 539 | |
Svyatoslav Ryhel | b905498 | 2023-04-25 10:51:44 +0300 | [diff] [blame] | 540 | config VIDEO_LCD_RENESAS_R61307 |
| 541 | tristate "Renesas R61307 DSI video mode panel" |
| 542 | depends on PANEL && BACKLIGHT |
| 543 | select VIDEO_MIPI_DSI |
| 544 | help |
| 545 | Say Y here if you want to enable support for KOE tx13d100vm0eaa |
| 546 | IPS-LCD module with Renesas R69328 IC. The panel has a 1024x768 |
| 547 | resolution and uses 24 bit RGB per pixel. |
| 548 | |
Svyatoslav Ryhel | fcbbd56 | 2023-04-25 10:51:45 +0300 | [diff] [blame] | 549 | config VIDEO_LCD_RENESAS_R69328 |
| 550 | tristate "Renesas R69328 720x1280 DSI video mode panel" |
| 551 | depends on PANEL && BACKLIGHT |
| 552 | select VIDEO_MIPI_DSI |
| 553 | help |
| 554 | Say Y here if you want to enable support for JDI dx12d100vm0eaa |
| 555 | IPS-LCD module with Renesas R69328 IC. The panel has a 720x1280 |
| 556 | resolution and uses 24 bit RGB per pixel. |
| 557 | |
Anton Bambura | 7c84e5d | 2024-01-31 08:57:16 +0200 | [diff] [blame] | 558 | config VIDEO_LCD_SAMSUNG_LTL106HL02 |
| 559 | tristate "Samsung LTL106HL02 1920x1080 DSI video mode panel" |
| 560 | depends on PANEL && BACKLIGHT |
| 561 | select VIDEO_MIPI_DSI |
| 562 | help |
| 563 | Say Y here if you want to enable support for Samsung LTL106HL02 |
| 564 | LCD module found in Microsoft Surface 2. The panel has a FullHD |
| 565 | resolution (1920x1080). |
| 566 | |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 567 | config VIDEO_LCD_SSD2828 |
| 568 | bool "SSD2828 bridge chip" |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 569 | ---help--- |
| 570 | Support for the SSD2828 bridge chip, which can take pixel data coming |
| 571 | from a parallel LCD interface and translate it on the fly into MIPI DSI |
| 572 | interface for driving a MIPI compatible LCD panel. It uses SPI for |
| 573 | configuration. |
| 574 | |
| 575 | config VIDEO_LCD_SSD2828_TX_CLK |
| 576 | int "SSD2828 TX_CLK frequency (in MHz)" |
| 577 | depends on VIDEO_LCD_SSD2828 |
Siarhei Siamashka | 61fb91f | 2015-01-19 05:23:35 +0200 | [diff] [blame] | 578 | default 0 |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 579 | ---help--- |
| 580 | The frequency of the crystal, which is clocking SSD2828. It may be |
| 581 | anything in the 8MHz-30MHz range and the exact value should be |
| 582 | retrieved from the board schematics. Or in the case of Allwinner |
| 583 | hardware, it can be usually found as 'lcd_xtal_freq' variable in |
Siarhei Siamashka | 61fb91f | 2015-01-19 05:23:35 +0200 | [diff] [blame] | 584 | FEX files. It can be also set to 0 for selecting PCLK from the |
| 585 | parallel LCD interface instead of TX_CLK as the PLL clock source. |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 586 | |
| 587 | config VIDEO_LCD_SSD2828_RESET |
| 588 | string "RESET pin of SSD2828" |
| 589 | depends on VIDEO_LCD_SSD2828 |
| 590 | default "" |
| 591 | ---help--- |
| 592 | The reset pin of SSD2828 chip. This takes a string in the format |
Samuel Holland | c7ab95d | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 593 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 594 | |
Neil Armstrong | 4a4057a | 2020-09-29 11:53:53 +0200 | [diff] [blame] | 595 | config VIDEO_LCD_TDO_TL070WSH30 |
| 596 | bool "TDO TL070WSH30 DSI LCD panel support" |
Neil Armstrong | 4a4057a | 2020-09-29 11:53:53 +0200 | [diff] [blame] | 597 | select VIDEO_MIPI_DSI |
Neil Armstrong | 4a4057a | 2020-09-29 11:53:53 +0200 | [diff] [blame] | 598 | help |
| 599 | Say Y here if you want to enable support for TDO TL070WSH30 |
| 600 | 1024x600 DSI video mode panel. |
| 601 | |
Hans de Goede | c048203 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 602 | config VIDEO_LCD_HITACHI_TX18D42VM |
| 603 | bool "Hitachi tx18d42vm LVDS LCD panel support" |
Hans de Goede | c048203 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 604 | ---help--- |
| 605 | Support for Hitachi tx18d42vm LVDS LCD panels, these panels have a |
| 606 | lcd controller which needs to be initialized over SPI, once that is |
| 607 | done they work like a regular LVDS panel. |
| 608 | |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 609 | config VIDEO_LCD_SPI_CS |
| 610 | string "SPI CS pin for LCD related config job" |
Hans de Goede | c048203 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 611 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 612 | default "" |
| 613 | ---help--- |
| 614 | This is one of the SPI communication pins, involved in setting up a |
| 615 | working LCD configuration. The exact role of SPI may differ for |
| 616 | different hardware setups. The option takes a string in the format |
Samuel Holland | c7ab95d | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 617 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 618 | |
| 619 | config VIDEO_LCD_SPI_SCLK |
| 620 | string "SPI SCLK pin for LCD related config job" |
Hans de Goede | c048203 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 621 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 622 | default "" |
| 623 | ---help--- |
| 624 | This is one of the SPI communication pins, involved in setting up a |
| 625 | working LCD configuration. The exact role of SPI may differ for |
| 626 | different hardware setups. The option takes a string in the format |
Samuel Holland | c7ab95d | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 627 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 628 | |
| 629 | config VIDEO_LCD_SPI_MOSI |
| 630 | string "SPI MOSI pin for LCD related config job" |
Hans de Goede | c048203 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 631 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 632 | default "" |
| 633 | ---help--- |
| 634 | This is one of the SPI communication pins, involved in setting up a |
| 635 | working LCD configuration. The exact role of SPI may differ for |
| 636 | different hardware setups. The option takes a string in the format |
Samuel Holland | c7ab95d | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 637 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 638 | |
| 639 | config VIDEO_LCD_SPI_MISO |
| 640 | string "SPI MISO pin for LCD related config job (optional)" |
| 641 | depends on VIDEO_LCD_SSD2828 |
| 642 | default "" |
| 643 | ---help--- |
| 644 | This is one of the SPI communication pins, involved in setting up a |
| 645 | working LCD configuration. The exact role of SPI may differ for |
| 646 | different hardware setups. If wired up, this pin may provide additional |
| 647 | useful functionality. Such as bi-directional communication with the |
| 648 | hardware and LCD panel id retrieval (if the panel can report it). The |
Samuel Holland | c7ab95d | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 649 | option takes a string in the format understood by 'sunxi_name_to_gpio' |
Siarhei Siamashka | 4c19cf2 | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 650 | function, e.g. PH1 for pin 1 of port H. |
Simon Glass | 06679ad | 2015-04-14 21:03:38 -0600 | [diff] [blame] | 651 | |
Neil Armstrong | add986c | 2018-07-24 17:45:28 +0200 | [diff] [blame] | 652 | source "drivers/video/meson/Kconfig" |
| 653 | |
Stefan Roese | ab91fd5 | 2016-01-20 08:13:28 +0100 | [diff] [blame] | 654 | config VIDEO_MVEBU |
| 655 | bool "Armada XP LCD controller" |
Stefan Roese | ab91fd5 | 2016-01-20 08:13:28 +0100 | [diff] [blame] | 656 | ---help--- |
| 657 | Support for the LCD controller integrated in the Marvell |
| 658 | Armada XP SoC. |
| 659 | |
Adam Ford | 60a59d4 | 2018-08-02 08:50:20 -0500 | [diff] [blame] | 660 | config VIDEO_OMAP3 |
| 661 | bool "Enable OMAP3+ DSS Support" |
| 662 | depends on ARCH_OMAP2PLUS |
| 663 | help |
| 664 | This enables the Display subsystem (DSS) on OMAP3+ boards. |
| 665 | |
Anatolij Gustschin | 4601eb4 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 666 | config I2C_EDID |
| 667 | bool "Enable EDID library" |
Anatolij Gustschin | 4601eb4 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 668 | help |
| 669 | This enables library for accessing EDID data from an LCD panel. |
| 670 | |
Simon Glass | 7d3d776 | 2016-01-21 19:45:00 -0700 | [diff] [blame] | 671 | config DISPLAY |
| 672 | bool "Enable Display support" |
| 673 | depends on DM |
Anatolij Gustschin | 4601eb4 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 674 | select I2C_EDID |
Simon Glass | 06679ad | 2015-04-14 21:03:38 -0600 | [diff] [blame] | 675 | help |
Simon Glass | 7d3d776 | 2016-01-21 19:45:00 -0700 | [diff] [blame] | 676 | This supports drivers that provide a display, such as eDP (Embedded |
| 677 | DisplayPort) and HDMI (High Definition Multimedia Interface). |
| 678 | The devices provide a simple interface to start up the display, |
| 679 | read display information and enable it. |
Simon Glass | 3ef2a72 | 2015-04-14 21:03:42 -0600 | [diff] [blame] | 680 | |
Liviu Dudau | 3396710 | 2018-09-28 13:49:31 +0100 | [diff] [blame] | 681 | config NXP_TDA19988 |
| 682 | bool "Enable NXP TDA19988 support" |
| 683 | depends on DISPLAY |
Liviu Dudau | 3396710 | 2018-09-28 13:49:31 +0100 | [diff] [blame] | 684 | help |
| 685 | This enables support for the NXP TDA19988 HDMI encoder. This encoder |
| 686 | will convert RGB data streams into HDMI-encoded signals. |
| 687 | |
Songjun Wu | 72ac56a | 2017-04-11 16:33:30 +0800 | [diff] [blame] | 688 | config ATMEL_HLCD |
| 689 | bool "Enable ATMEL video support using HLCDC" |
Songjun Wu | 72ac56a | 2017-04-11 16:33:30 +0800 | [diff] [blame] | 690 | help |
| 691 | HLCDC supports video output to an attached LCD panel. |
| 692 | |
Svyatoslav Ryhel | 3e9488a | 2023-04-25 10:51:42 +0300 | [diff] [blame] | 693 | config BACKLIGHT_LM3533 |
| 694 | bool "Backlight Driver for LM3533" |
| 695 | depends on BACKLIGHT |
| 696 | select DM_I2C |
| 697 | help |
| 698 | Say Y to enable the backlight driver for National Semiconductor / TI |
| 699 | LM3533 Lighting Power chip. Only Bank A is supported as for now. |
| 700 | Supported backlight level range is from 2 to 255 with step of 1. |
| 701 | |
Dario Binacchi | 260bdb3 | 2023-01-28 16:55:31 +0100 | [diff] [blame] | 702 | source "drivers/video/ti/Kconfig" |
| 703 | |
Tom Rini | 3eeabf5 | 2022-06-10 22:59:34 -0400 | [diff] [blame] | 704 | source "drivers/video/exynos/Kconfig" |
| 705 | |
Mario Six | c13ee19 | 2018-08-09 14:51:23 +0200 | [diff] [blame] | 706 | config LOGICORE_DP_TX |
| 707 | bool "Enable Logicore DP TX driver" |
| 708 | depends on DISPLAY |
| 709 | help |
| 710 | Enable the driver for the transmitter part of the Xilinx LogiCORE |
| 711 | DisplayPort, a IP core for Xilinx FPGAs that implements a DisplayPort |
| 712 | video interface as defined by VESA DisplayPort v1.2. |
| 713 | |
| 714 | Note that this is a pure transmitter device, and has no display |
| 715 | capabilities by itself. |
| 716 | |
Simon Glass | dec49b7 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 717 | config VIDEO_BROADWELL_IGD |
| 718 | bool "Enable Intel Broadwell integrated graphics device" |
| 719 | depends on X86 |
| 720 | help |
Simon Glass | a3fdd00 | 2016-10-05 20:42:14 -0600 | [diff] [blame] | 721 | This enables support for integrated graphics on Intel broadwell |
Simon Glass | dec49b7 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 722 | devices. Initialisation is mostly performed by a VGA boot ROM, with |
| 723 | some setup handled by U-Boot itself. The graphics adaptor works as |
| 724 | a VESA device and supports LCD panels, eDP and LVDS outputs. |
| 725 | Configuration of most aspects of device operation is performed using |
| 726 | a special tool which configures the VGA ROM, but the graphics |
| 727 | resolution can be selected in U-Boot. |
| 728 | |
Simon Glass | 03f2a51 | 2016-10-05 20:42:15 -0600 | [diff] [blame] | 729 | config VIDEO_IVYBRIDGE_IGD |
| 730 | bool "Enable Intel Ivybridge integration graphics support" |
| 731 | depends on X86 |
| 732 | help |
| 733 | This enables support for integrated graphics on Intel ivybridge |
| 734 | devices. Initialisation is mostly performed by a VGA boot ROM, with |
| 735 | some setup handled by U-Boot itself. The graphics adaptor works as |
| 736 | a VESA device and supports LCD panels, eDP and LVDS outputs. |
| 737 | Configuration of most aspects of device operation is performed using |
| 738 | a special tool which configures the VGA ROM, but the graphics |
| 739 | resolution can be selected in U-Boot. |
| 740 | |
eric.gao@rock-chips.com | 735ddea | 2017-04-17 22:24:23 +0800 | [diff] [blame] | 741 | source "drivers/video/rockchip/Kconfig" |
Simon Glass | 0139ae6 | 2016-01-21 19:45:03 -0700 | [diff] [blame] | 742 | |
Liviu Dudau | 8373ed3 | 2018-09-28 13:50:53 +0100 | [diff] [blame] | 743 | config VIDEO_ARM_MALIDP |
| 744 | bool "Enable Arm Mali Display Processor support" |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 745 | depends on OF_CONTROL |
Liviu Dudau | 8373ed3 | 2018-09-28 13:50:53 +0100 | [diff] [blame] | 746 | select VEXPRESS_CLK |
| 747 | help |
| 748 | This enables support for Arm Ltd Mali Display Processors from |
| 749 | the DP500, DP550 and DP650 family. |
| 750 | |
Simon Glass | 161eea7 | 2016-01-18 19:52:24 -0700 | [diff] [blame] | 751 | config VIDEO_SANDBOX_SDL |
| 752 | bool "Enable sandbox video console using SDL" |
Tom Rini | ea79bb7 | 2022-11-19 18:45:43 -0500 | [diff] [blame] | 753 | depends on SANDBOX_SDL |
Simon Glass | 161eea7 | 2016-01-18 19:52:24 -0700 | [diff] [blame] | 754 | help |
| 755 | When using sandbox you can enable an emulated LCD display which |
| 756 | appears as an SDL (Simple DirectMedia Layer) window. This is a |
| 757 | console device and can display stdout output. Within U-Boot is is |
| 758 | a normal bitmap display and can display images as well as text. |
| 759 | |
Philippe CORNU | dcbad9a | 2017-08-03 12:36:08 +0200 | [diff] [blame] | 760 | source "drivers/video/stm32/Kconfig" |
| 761 | |
Nikhil M Jain | 9427274 | 2023-01-31 15:35:17 +0530 | [diff] [blame] | 762 | source "drivers/video/tidss/Kconfig" |
| 763 | |
Simon Glass | 3ef2a72 | 2015-04-14 21:03:42 -0600 | [diff] [blame] | 764 | config VIDEO_TEGRA124 |
| 765 | bool "Enable video support on Tegra124" |
| 766 | help |
| 767 | Tegra124 supports many video output options including eDP and |
| 768 | HDMI. At present only eDP is supported by U-Boot. This option |
| 769 | enables this support which can be used on devices which |
| 770 | have an eDP display connected. |
Simon Glass | 7cf1757 | 2015-07-02 18:16:08 -0600 | [diff] [blame] | 771 | |
| 772 | source "drivers/video/bridge/Kconfig" |
Masahiro Yamada | cc85b7b | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 773 | |
Svyatoslav Ryhel | d15683f | 2023-03-27 11:11:41 +0300 | [diff] [blame] | 774 | source "drivers/video/tegra20/Kconfig" |
| 775 | |
Anatolij Gustschin | 411e73d | 2019-03-18 23:29:32 +0100 | [diff] [blame] | 776 | source "drivers/video/imx/Kconfig" |
Anatolij Gustschin | 983e2f2a | 2019-03-18 23:29:31 +0100 | [diff] [blame] | 777 | |
Anatolij Gustschin | e22e08e | 2021-10-04 17:33:12 +0200 | [diff] [blame] | 778 | config VIDEO_MXS |
| 779 | bool "Enable video support on i.MX28/i.MX6UL/i.MX7 SoCs" |
Anatolij Gustschin | e22e08e | 2021-10-04 17:33:12 +0200 | [diff] [blame] | 780 | help |
| 781 | Enable framebuffer driver for i.MX28/i.MX6UL/i.MX7 processors |
| 782 | |
Stefan Bosch | 5ed5ad4 | 2020-07-10 19:07:36 +0200 | [diff] [blame] | 783 | config VIDEO_NX |
| 784 | bool "Enable video support on Nexell SoC" |
| 785 | depends on ARCH_S5P6818 || ARCH_S5P4418 |
| 786 | help |
| 787 | Nexell SoC supports many video output options including eDP and |
| 788 | HDMI. This option enables this support which can be used on devices |
| 789 | which have an eDP display connected. |
| 790 | |
Michal Simek | 32058b8 | 2020-12-03 09:31:35 +0100 | [diff] [blame] | 791 | config VIDEO_SEPS525 |
| 792 | bool "Enable video support for Seps525" |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 793 | depends on DM_GPIO |
Michal Simek | 32058b8 | 2020-12-03 09:31:35 +0100 | [diff] [blame] | 794 | help |
| 795 | Enable support for the Syncoam PM-OLED display driver (RGB 160x128). |
| 796 | Currently driver is supporting only SPI interface. |
| 797 | |
Venkatesh Yadav Abbarapu | e367980 | 2023-05-17 10:42:09 +0200 | [diff] [blame] | 798 | source "drivers/video/zynqmp/Kconfig" |
Stefan Bosch | 5ed5ad4 | 2020-07-10 19:07:36 +0200 | [diff] [blame] | 799 | source "drivers/video/nexell/Kconfig" |
| 800 | |
Simon Glass | d76f29a | 2016-10-17 20:12:57 -0600 | [diff] [blame] | 801 | config CONSOLE_SCROLL_LINES |
| 802 | int "Number of lines to scroll the console by" |
Simon Glass | d76f29a | 2016-10-17 20:12:57 -0600 | [diff] [blame] | 803 | default 1 |
| 804 | help |
| 805 | When the console need to be scrolled, this is the number of |
| 806 | lines to scroll by. It defaults to 1. Increasing this makes the |
| 807 | console jump but can help speed up operation when scrolling |
| 808 | is slow. |
| 809 | |
Philipp Tomsich | 3a53b3e | 2017-05-05 21:48:26 +0200 | [diff] [blame] | 810 | config VIDEO_DW_HDMI |
| 811 | bool |
| 812 | help |
| 813 | Enables the common driver code for the Designware HDMI TX |
| 814 | block found in SoCs from various vendors. |
| 815 | As this does not provide any functionality by itself (but |
| 816 | rather requires a SoC-specific glue driver to call it), it |
| 817 | can not be enabled from the configuration menu. |
| 818 | |
Yannick Fertré | 9712c82 | 2019-10-07 15:29:05 +0200 | [diff] [blame] | 819 | config VIDEO_DSI_HOST_SANDBOX |
| 820 | bool "Enable sandbox for dsi host" |
| 821 | depends on SANDBOX |
| 822 | select VIDEO_MIPI_DSI |
| 823 | help |
| 824 | Enable support for sandbox dsi host device used for testing |
| 825 | purposes. |
| 826 | Display Serial Interface (DSI) defines a serial bus and |
| 827 | a communication protocol between the host and the device |
| 828 | (panel, bridge). |
| 829 | |
Yannick Fertré | 764af46 | 2019-10-07 15:29:06 +0200 | [diff] [blame] | 830 | config VIDEO_DW_MIPI_DSI |
| 831 | bool |
| 832 | select VIDEO_MIPI_DSI |
| 833 | help |
| 834 | Enables the common driver code for the Synopsis Designware |
| 835 | MIPI DSI block found in SoCs from various vendors. |
| 836 | As this does not provide any functionality by itself (but |
| 837 | rather requires a SoC-specific glue driver to call it), it |
| 838 | can not be enabled from the configuration menu. |
| 839 | |
Rob Clark | cf7ab0c | 2017-08-03 12:47:00 -0400 | [diff] [blame] | 840 | config VIDEO_SIMPLE |
| 841 | bool "Simple display driver for preconfigured display" |
| 842 | help |
| 843 | Enables a simple generic display driver which utilizes the |
| 844 | simple-framebuffer devicetree bindings. |
| 845 | |
| 846 | This driver assumes that the display hardware has been initialized |
| 847 | before u-boot starts, and u-boot will simply render to the pre- |
| 848 | allocated frame buffer surface. |
| 849 | |
Icenowy Zheng | 60e4b8f | 2017-10-26 11:14:46 +0800 | [diff] [blame] | 850 | config VIDEO_DT_SIMPLEFB |
| 851 | bool "Enable SimpleFB support for passing framebuffer to OS" |
| 852 | help |
| 853 | Enables the code to pass the framebuffer to the kernel as a |
| 854 | simple framebuffer in the device tree. |
| 855 | The video output is initialized by U-Boot, and kept by the |
| 856 | kernel. |
| 857 | |
Stephan Gerhold | 36f654a | 2021-07-02 19:21:56 +0200 | [diff] [blame] | 858 | config VIDEO_MCDE_SIMPLE |
| 859 | bool "Simple driver for ST-Ericsson MCDE with preconfigured display" |
Stephan Gerhold | 36f654a | 2021-07-02 19:21:56 +0200 | [diff] [blame] | 860 | help |
| 861 | Enables a simple display driver for ST-Ericsson MCDE |
| 862 | (Multichannel Display Engine), which reads the configuration from |
| 863 | the MCDE registers. |
| 864 | |
| 865 | This driver assumes that the display hardware has been initialized |
| 866 | before u-boot starts, and u-boot will simply render to the pre- |
| 867 | allocated frame buffer surface. |
| 868 | |
Mario Six | 1b77320 | 2018-09-27 09:19:29 +0200 | [diff] [blame] | 869 | config OSD |
| 870 | bool "Enable OSD support" |
| 871 | depends on DM |
Mario Six | 1b77320 | 2018-09-27 09:19:29 +0200 | [diff] [blame] | 872 | help |
| 873 | This supports drivers that provide a OSD (on-screen display), which |
| 874 | is a (usually text-oriented) graphics buffer to show information on |
| 875 | a display. |
Mario Six | 8ea19da | 2018-09-27 09:19:30 +0200 | [diff] [blame] | 876 | |
Mario Six | 02ad6fb | 2018-09-27 09:19:31 +0200 | [diff] [blame] | 877 | config SANDBOX_OSD |
| 878 | bool "Enable sandbox OSD" |
| 879 | depends on OSD |
| 880 | help |
| 881 | Enable support for sandbox OSD device used for testing purposes. |
| 882 | |
Mario Six | 8ea19da | 2018-09-27 09:19:30 +0200 | [diff] [blame] | 883 | config IHS_VIDEO_OUT |
| 884 | bool "Enable IHS video out driver" |
| 885 | depends on OSD |
| 886 | help |
| 887 | Enable support for the gdsys Integrated Hardware Systems (IHS) video |
| 888 | out On-screen Display (OSD) used on gdsys FPGAs to control dynamic |
| 889 | textual overlays of the display outputs. |
| 890 | |
Nikhil M Jain | 085f1dd | 2023-07-18 14:27:32 +0530 | [diff] [blame] | 891 | config VIDEO_REMOVE |
| 892 | bool "Remove video driver" |
| 893 | help |
| 894 | Use this option to specify if user wants to call remove method of |
| 895 | video driver in u-boot proper stage. |
| 896 | |
Simon Glass | 2d7a794 | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 897 | config SPLASH_SCREEN |
| 898 | bool "Show a splash-screen image" |
| 899 | help |
| 900 | If this option is set, the environment is checked for a variable |
| 901 | "splashimage". If found, the usual display of logo, copyright and |
| 902 | system information on the LCD is suppressed and the BMP image at the |
| 903 | address specified in "splashimage" is loaded instead. The console is |
| 904 | redirected to the "nulldev", too. This allows for a "silent" boot |
| 905 | where a splash screen is loaded very quickly after power-on. |
| 906 | |
| 907 | The splash_screen_prepare() function is a weak function defined in |
| 908 | common/splash.c. It is called as part of the splash screen display |
| 909 | sequence. It gives the board an opportunity to prepare the splash |
| 910 | image data before it is processed and sent to the frame buffer by |
| 911 | U-Boot. Define your own version to use this feature. |
| 912 | |
Simon Glass | 8b883a3 | 2022-10-18 06:24:16 -0600 | [diff] [blame] | 913 | if SPLASH_SCREEN |
| 914 | |
Simon Glass | 2d7a794 | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 915 | config SPLASH_SCREEN_ALIGN |
| 916 | bool "Allow positioning the splash image anywhere on the display" |
Simon Glass | 2d7a794 | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 917 | help |
| 918 | If this option is set the splash image can be freely positioned |
| 919 | on the screen. Environment variable "splashpos" specifies the |
| 920 | position as "x,y". If a positive number is given it is used as |
| 921 | number of pixel from left/top. If a negative number is given it |
| 922 | is used as number of pixel from right/bottom. You can also |
| 923 | specify 'm' for centering the image. |
| 924 | |
| 925 | Example: |
| 926 | setenv splashpos m,m |
| 927 | => image at center of screen |
| 928 | |
| 929 | setenv splashpos 30,20 |
| 930 | => image at x = 30 and y = 20 |
| 931 | |
| 932 | setenv splashpos -10,m |
| 933 | => vertically centered image |
| 934 | at x = dspWidth - bmpWidth - 9 |
| 935 | |
Simon Glass | 45c0a7e | 2022-10-18 06:30:56 -0600 | [diff] [blame] | 936 | config HIDE_LOGO_VERSION |
| 937 | bool "Hide the version information on the splash screen" |
| 938 | help |
| 939 | Normally the U-Boot version string is shown on the display when the |
| 940 | splash screen is enabled. This information is not otherwise visible |
| 941 | since video starts up after U-Boot has displayed the initial banner. |
| 942 | |
| 943 | Enable this option to hide this information. |
| 944 | |
Simon Glass | 2d7a794 | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 945 | config SPLASH_SOURCE |
| 946 | bool "Control the source of the splash image" |
Simon Glass | 2d7a794 | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 947 | help |
| 948 | Use the splash_source.c library. This library provides facilities to |
| 949 | declare board specific splash image locations, routines for loading |
| 950 | splash image from supported locations, and a way of controlling the |
| 951 | selected splash location using the "splashsource" environment |
| 952 | variable. |
| 953 | |
| 954 | This CONFIG works as follows: |
| 955 | |
| 956 | - If splashsource is set to a supported location name as defined by |
| 957 | board code, use that splash location. |
| 958 | - If splashsource is undefined, use the first splash location as |
| 959 | default. |
| 960 | - If splashsource is set to an unsupported value, do not load a splash |
| 961 | screen. |
| 962 | |
| 963 | A splash source location can describe either storage with raw data, a |
| 964 | storage formatted with a file system or a FIT image. In case of a |
| 965 | filesystem, the splash screen data is loaded as a file. The name of |
| 966 | the splash screen file can be controlled with the environment variable |
| 967 | "splashfile". |
| 968 | |
| 969 | To enable loading the splash image from a FIT image, CONFIG_FIT must |
| 970 | be enabled. The FIT image has to start at the 'offset' field address |
| 971 | in the selected splash location. The name of splash image within the |
| 972 | FIT shall be specified by the environment variable "splashfile". |
| 973 | |
| 974 | In case the environment variable "splashfile" is not defined the |
| 975 | default name 'splash.bmp' will be used. |
| 976 | |
Simon Glass | 8b883a3 | 2022-10-18 06:24:16 -0600 | [diff] [blame] | 977 | endif # SPLASH_SCREEN |
| 978 | |
Simon Glass | e0e27fe | 2023-09-14 10:55:42 -0600 | [diff] [blame] | 979 | config BMP |
| 980 | bool "Enable bmp image display" |
| 981 | help |
| 982 | Enable bmp functions to display bmp image and get bmp info. |
| 983 | |
| 984 | BMP is a simple graphics-image file format designed to store bitmap |
| 985 | images. It is primarily used on Windows devices. |
| 986 | |
Patrick Delaunay | 5d0e2ab | 2020-09-28 11:30:14 +0200 | [diff] [blame] | 987 | config VIDEO_BMP_GZIP |
| 988 | bool "Gzip compressed BMP image support" |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 989 | depends on BMP || SPLASH_SCREEN |
Patrick Delaunay | 5d0e2ab | 2020-09-28 11:30:14 +0200 | [diff] [blame] | 990 | help |
| 991 | If this option is set, additionally to standard BMP |
| 992 | images, gzipped BMP images can be displayed via the |
| 993 | splashscreen support or the bmp command. |
| 994 | |
Simon Glass | 858198c | 2022-10-18 06:46:08 -0600 | [diff] [blame] | 995 | config VIDEO_LOGO_MAX_SIZE |
Simon Glass | cda7d0c | 2022-10-18 06:49:18 -0600 | [diff] [blame] | 996 | hex "Maximum size of the bitmap logo in bytes" |
| 997 | default 0x100000 |
| 998 | help |
| 999 | Sets the maximum uncompressed size of the logo. This is needed when |
| 1000 | decompressing a BMP file using the gzip algorithm, since it cannot |
| 1001 | read the size from the bitmap header. |
Simon Glass | 858198c | 2022-10-18 06:46:08 -0600 | [diff] [blame] | 1002 | |
Patrick Delaunay | c47fe77 | 2020-09-28 11:30:15 +0200 | [diff] [blame] | 1003 | config VIDEO_BMP_RLE8 |
| 1004 | bool "Run length encoded BMP image (RLE8) support" |
Patrick Delaunay | c47fe77 | 2020-09-28 11:30:15 +0200 | [diff] [blame] | 1005 | help |
| 1006 | If this option is set, the 8-bit RLE compressed BMP images |
| 1007 | is supported. |
| 1008 | |
Patrick Delaunay | b1f1763 | 2020-09-28 11:30:16 +0200 | [diff] [blame] | 1009 | config BMP_16BPP |
| 1010 | bool "16-bit-per-pixel BMP image support" |
Patrick Delaunay | b1f1763 | 2020-09-28 11:30:16 +0200 | [diff] [blame] | 1011 | help |
| 1012 | Support display of bitmaps file with 16-bit-per-pixel |
| 1013 | |
| 1014 | config BMP_24BPP |
| 1015 | bool "24-bit-per-pixel BMP image support" |
Patrick Delaunay | b1f1763 | 2020-09-28 11:30:16 +0200 | [diff] [blame] | 1016 | help |
| 1017 | Support display of bitmaps file with 24-bit-per-pixel. |
| 1018 | |
| 1019 | config BMP_32BPP |
| 1020 | bool "32-bit-per-pixel BMP image support" |
Patrick Delaunay | b1f1763 | 2020-09-28 11:30:16 +0200 | [diff] [blame] | 1021 | help |
| 1022 | Support display of bitmaps file with 32-bit-per-pixel. |
| 1023 | |
Simon Glass | 52cb504 | 2022-10-18 07:46:31 -0600 | [diff] [blame] | 1024 | endif # VIDEO |
Simon Glass | 557786c | 2022-10-18 07:35:17 -0600 | [diff] [blame] | 1025 | |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1026 | config SPL_VIDEO |
John Keeping | 0a2daf3 | 2023-05-09 12:02:50 +0100 | [diff] [blame] | 1027 | bool "Enable driver model support for LCD/video in SPL" |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1028 | depends on SPL_DM |
| 1029 | help |
| 1030 | The video subsystem adds a small amount of overhead to the image. |
| 1031 | If this is acceptable and you have a need to use video drivers in |
| 1032 | SPL, enable this option. It might provide a cleaner interface to |
| 1033 | setting up video within SPL, and allows the same drivers to be |
| 1034 | used as U-Boot proper. |
| 1035 | |
| 1036 | if SPL_VIDEO |
| 1037 | source "drivers/video/tidss/Kconfig" |
| 1038 | |
Simon Glass | 896409c | 2023-07-30 11:16:05 -0600 | [diff] [blame] | 1039 | config SPL_VIDEO_HANDOFF |
| 1040 | bool "Pass the video frame-buffer through to U-Boot proper" |
| 1041 | depends on SPL_BLOBLIST |
| 1042 | default y if !X86 |
| 1043 | help |
| 1044 | Enable this to set up video-handoff information in SPL which can be |
| 1045 | picked up in U-Boot proper. This includes the frame buffer and |
| 1046 | various other pieces of information. With this enabled, SPL can set |
| 1047 | up video and avoid re-initing it later. |
| 1048 | |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1049 | config SPL_VIDEO_LOGO |
| 1050 | bool "Show the U-Boot logo on the display at SPL" |
| 1051 | default y if !SPL_SPLASH_SCREEN |
| 1052 | select SPL_VIDEO_BMP_RLE8 |
| 1053 | help |
| 1054 | This enables showing the U-Boot logo on the display when a video |
| 1055 | device is probed. It appears at the top right. The logo itself is at |
| 1056 | tools/logos/u-boot_logo.bmp and looks best when the display has a |
| 1057 | black background. |
| 1058 | |
| 1059 | config SPL_SPLASH_SCREEN |
| 1060 | bool "Show a splash-screen image at SPL" |
| 1061 | help |
| 1062 | If this option is set, the environment is checked for a variable |
| 1063 | "splashimage" at spl stage. |
| 1064 | |
| 1065 | config SPL_SYS_WHITE_ON_BLACK |
| 1066 | bool "Display console as white on a black background at SPL" |
| 1067 | help |
| 1068 | Normally the display is black on a white background, Enable this |
| 1069 | option to invert this, i.e. white on a black background at spl stage. |
| 1070 | This can be better in low-light situations or to reduce eye strain in |
| 1071 | some cases. |
| 1072 | |
| 1073 | config SPL_VIDEO_PCI_DEFAULT_FB_SIZE |
| 1074 | hex "Default framebuffer size to use if no drivers request it at SPL" |
Bin Meng | 88fdb44 | 2023-07-23 12:40:30 +0800 | [diff] [blame] | 1075 | default 0x1000000 if X86 |
Bin Meng | 7c509a0 | 2023-07-23 12:40:31 +0800 | [diff] [blame] | 1076 | default 0x800000 if !X86 && VIDEO_BOCHS |
Tom Rini | f18679c | 2023-08-02 11:09:43 -0400 | [diff] [blame] | 1077 | default 0x0 if !X86 && !VIDEO_BOCHS |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1078 | help |
| 1079 | Generally, video drivers request the amount of memory they need for |
| 1080 | the frame buffer when they are bound, by setting the size field in |
| 1081 | struct video_uc_plat. That memory is then reserved for use after |
| 1082 | relocation. But PCI drivers cannot be bound before relocation unless |
| 1083 | they are mentioned in the devicetree. |
| 1084 | |
| 1085 | With this value set appropriately, it is possible for PCI video |
| 1086 | devices to have a framebuffer allocated by U-Boot. |
| 1087 | |
| 1088 | Note: the framebuffer needs to be large enough to store all pixels at |
Bin Meng | 0524170 | 2023-07-23 12:40:29 +0800 | [diff] [blame] | 1089 | maximum resolution. For example, at 2560 x 1600 with 32 bits per |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1090 | pixel, 2560 * 1600 * 32 / 8 = 0xfa0000 bytes are needed. |
| 1091 | |
| 1092 | config SPL_CONSOLE_SCROLL_LINES |
| 1093 | int "Number of lines to scroll the console by at SPL" |
| 1094 | default 1 |
| 1095 | help |
| 1096 | When the console need to be scrolled, this is the number of |
| 1097 | lines to scroll by. It defaults to 1. Increasing this makes the |
| 1098 | console jump but can help speed up operation when scrolling |
| 1099 | is slow. |
| 1100 | |
| 1101 | config SPL_CONSOLE_NORMAL |
| 1102 | bool "Support a simple text console at SPL" |
| 1103 | default y |
| 1104 | help |
| 1105 | Support drawing text on the frame buffer console so that it can be |
| 1106 | used as a console. Rotation is not supported by this driver (see |
| 1107 | CONFIG_CONSOLE_ROTATION for that). A built-in 8x16 font is used |
| 1108 | for the display. |
| 1109 | |
| 1110 | config SPL_BACKLIGHT |
| 1111 | bool "Enable panel backlight uclass support at SPL" |
| 1112 | default y |
| 1113 | help |
| 1114 | This provides backlight uclass driver that enables basic panel |
| 1115 | backlight support. |
| 1116 | |
| 1117 | config SPL_PANEL |
| 1118 | bool "Enable panel uclass support at SPL" |
| 1119 | default y |
| 1120 | help |
| 1121 | This provides panel uclass driver that enables basic panel support. |
| 1122 | |
| 1123 | config SPL_SIMPLE_PANEL |
| 1124 | bool "Enable simple panel support at SPL" |
| 1125 | depends on SPL_PANEL && SPL_BACKLIGHT && SPL_DM_GPIO |
| 1126 | default y |
| 1127 | help |
| 1128 | This turns on a simple panel driver that enables a compatible |
| 1129 | video panel. |
| 1130 | |
| 1131 | config SPL_SYS_WHITE_ON_BLACK |
| 1132 | bool "Display console as white on a black background at SPL" |
| 1133 | help |
| 1134 | Normally the display is black on a white background, Enable this |
| 1135 | option to invert this, i.e. white on a black background at spl stage. |
| 1136 | This can be better in low-light situations or to reduce eye strain in |
| 1137 | some cases. |
| 1138 | |
Nikhil M Jain | 085f1dd | 2023-07-18 14:27:32 +0530 | [diff] [blame] | 1139 | config SPL_VIDEO_REMOVE |
| 1140 | bool "Remove video driver after SPL stage" |
| 1141 | help |
| 1142 | if this option is enabled video driver will be removed at the end of |
Bin Meng | a036d63 | 2023-08-03 18:40:08 +0800 | [diff] [blame] | 1143 | SPL stage, before loading the next stage. |
Nikhil M Jain | 085f1dd | 2023-07-18 14:27:32 +0530 | [diff] [blame] | 1144 | |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1145 | if SPL_SPLASH_SCREEN |
| 1146 | |
| 1147 | config SPL_SPLASH_SCREEN_ALIGN |
| 1148 | bool "Allow positioning the splash image anywhere on the display at SPL" |
| 1149 | help |
| 1150 | If this option is set the splash image can be freely positioned |
| 1151 | on the screen only at SPL. Environment variable "splashpos" specifies |
| 1152 | the position as "x,y". If a positive number is given it is used as |
| 1153 | number of pixel from left/top. If a negative number is given it |
| 1154 | is used as number of pixel from right/bottom. |
| 1155 | |
| 1156 | config SPL_SPLASH_SOURCE |
| 1157 | bool "Control the source of the splash image at SPL" |
| 1158 | help |
| 1159 | Use the splash_source.c library. This library provides facilities to |
| 1160 | declare board specific splash image locations, routines for loading |
| 1161 | splash image from supported locations, and a way of controlling the |
| 1162 | selected splash location using the "splashsource" environment |
| 1163 | variable. |
| 1164 | |
| 1165 | This CONFIG works as follows: |
| 1166 | |
| 1167 | - If splashsource is set to a supported location name as defined by |
| 1168 | board code, use that splash location. |
| 1169 | - If splashsource is undefined, use the first splash location as |
| 1170 | default. |
| 1171 | - If splashsource is set to an unsupported value, do not load a splash |
| 1172 | screen. |
| 1173 | |
| 1174 | A splash source location can describe either storage with raw data, a |
| 1175 | storage formatted with a file system or a FIT image. In case of a |
| 1176 | filesystem, the splash screen data is loaded as a file. The name of |
| 1177 | the splash screen file can be controlled with the environment variable |
| 1178 | "splashfile". |
| 1179 | |
| 1180 | To enable loading the splash image from a FIT image, CONFIG_FIT must |
| 1181 | be enabled. The FIT image has to start at the 'offset' field address |
| 1182 | in the selected splash location. The name of splash image within the |
| 1183 | FIT shall be specified by the environment variable "splashfile". |
| 1184 | |
| 1185 | In case the environment variable "splashfile" is not defined the |
| 1186 | default name 'splash.bmp' will be used. |
| 1187 | |
| 1188 | endif # SPL_SPLASH_SCREEN |
| 1189 | |
Simon Glass | e0e27fe | 2023-09-14 10:55:42 -0600 | [diff] [blame] | 1190 | config SPL_BMP |
| 1191 | bool "Enable bmp image display at SPL" |
| 1192 | help |
| 1193 | Enable bmp functions to display bmp image and get bmp info in SPL. |
| 1194 | |
| 1195 | BMP is a simple graphics-image file format designed to store bitmap |
| 1196 | images. It is primarily used on Windows devices. |
| 1197 | |
Nikhil M Jain | 9fa24c1 | 2023-04-20 17:40:59 +0530 | [diff] [blame] | 1198 | config SPL_VIDEO_BMP_GZIP |
| 1199 | bool "Gzip compressed BMP image support at SPL" |
| 1200 | depends on SPL_SPLASH_SCREEN || SPL_BMP |
| 1201 | help |
| 1202 | If this option is set, additionally to standard BMP |
| 1203 | images, gzipped BMP images can be displayed via the |
| 1204 | splashscreen supportat SPL stage. |
| 1205 | |
| 1206 | config SPL_VIDEO_LOGO_MAX_SIZE |
| 1207 | hex "Maximum size of the bitmap logo in bytes at SPL" |
| 1208 | default 0x100000 |
| 1209 | help |
| 1210 | Sets the maximum uncompressed size of the logo. This is needed when |
| 1211 | decompressing a BMP file using the gzip algorithm, since it cannot |
| 1212 | read the size from the bitmap header. |
| 1213 | |
| 1214 | config SPL_VIDEO_BMP_RLE8 |
| 1215 | bool "Run length encoded BMP image (RLE8) support at SPL" |
| 1216 | help |
| 1217 | If this option is set, the 8-bit RLE compressed BMP images |
| 1218 | is supported. |
| 1219 | |
| 1220 | config SPL_BMP_16BPP |
| 1221 | bool "16-bit-per-pixel BMP image support at SPL" |
| 1222 | help |
| 1223 | Support display of bitmaps file with 16-bit-per-pixel |
| 1224 | |
| 1225 | config SPL_BMP_24BPP |
| 1226 | bool "24-bit-per-pixel BMP image support at SPL" |
| 1227 | help |
| 1228 | Support display of bitmaps file with 24-bit-per-pixel. |
| 1229 | |
| 1230 | config SPL_BMP_32BPP |
| 1231 | bool "32-bit-per-pixel BMP image support at SPL" |
| 1232 | help |
| 1233 | Support display of bitmaps file with 32-bit-per-pixel. |
| 1234 | |
| 1235 | config SPL_VIDEO_BPP8 |
| 1236 | bool "Support 8-bit-per-pixel displays at SPL" |
| 1237 | default y |
| 1238 | help |
| 1239 | Support drawing text and bitmaps onto a 8-bit-per-pixel display. |
| 1240 | Enabling this will include code to support this display. Without |
| 1241 | this option, such displays will not be supported and console output |
| 1242 | will be empty. |
| 1243 | |
| 1244 | config SPL_VIDEO_BPP16 |
| 1245 | bool "Support 16-bit-per-pixel displays at SPL" |
| 1246 | default y |
| 1247 | help |
| 1248 | Support drawing text and bitmaps onto a 16-bit-per-pixel display. |
| 1249 | Enabling this will include code to support this display. Without |
| 1250 | this option, such displays will not be supported and console output |
| 1251 | will be empty. |
| 1252 | |
| 1253 | config SPL_VIDEO_BPP32 |
| 1254 | bool "Support 32-bit-per-pixel displays at SPL" |
| 1255 | default y |
| 1256 | help |
| 1257 | Support drawing text and bitmaps onto a 32-bit-per-pixel display. |
| 1258 | Enabling this will include code to support this display. Without |
| 1259 | this option, such displays will not be supported and console output |
| 1260 | will be empty. |
| 1261 | |
| 1262 | config SPL_HIDE_LOGO_VERSION |
| 1263 | bool "Hide the version information on the splash screen at SPL" |
| 1264 | help |
| 1265 | Normally the U-Boot version string is shown on the display when the |
| 1266 | splash screen is enabled. This information is not otherwise visible |
| 1267 | since video starts up after U-Boot has displayed the initial banner. |
| 1268 | |
| 1269 | Enable this option to hide this information. |
| 1270 | endif |
| 1271 | |
Masahiro Yamada | cc85b7b | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 1272 | endmenu |