Masahiro Yamada | 0b11dbf | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 1 | # |
| 2 | # Video configuration |
| 3 | # |
| 4 | |
| 5 | menu "Graphics support" |
| 6 | |
Simon Glass | 1acafc7 | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 7 | config DM_VIDEO |
| 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 | 64cfeda | 2021-11-19 13:24:01 -0700 | [diff] [blame] | 17 | config VIDEO_LOGO |
| 18 | bool "Show the U-Boot logo on the display" |
| 19 | depends on DM_VIDEO |
Simon Glass | 84e63ab | 2021-11-19 13:24:03 -0700 | [diff] [blame^] | 20 | select VIDEO_BMP_RLE8 |
Simon Glass | 64cfeda | 2021-11-19 13:24:01 -0700 | [diff] [blame] | 21 | help |
| 22 | This enables showing the U-Boot logo on the display when a video |
| 23 | device is probed. It appears at the top right. The logo itself is at |
| 24 | tools/logos/u-boot_logo.bmp and looks best when the display has a |
| 25 | black background. |
| 26 | |
Anatolij Gustschin | e26e520 | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 27 | config BACKLIGHT |
| 28 | bool "Enable panel backlight uclass support" |
| 29 | depends on DM_VIDEO |
| 30 | default y |
| 31 | help |
| 32 | This provides backlight uclass driver that enables basic panel |
| 33 | backlight support. |
| 34 | |
Simon Glass | 551ca0e | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 35 | config VIDEO_PCI_DEFAULT_FB_SIZE |
| 36 | hex "Default framebuffer size to use if no drivers request it" |
| 37 | depends on DM_VIDEO |
| 38 | default 0x1000000 if X86 && PCI |
| 39 | default 0 if !(X86 && PCI) |
| 40 | help |
| 41 | Generally, video drivers request the amount of memory they need for |
| 42 | the frame buffer when they are bound, by setting the size field in |
Dario Binacchi | 196947b | 2021-01-23 19:43:52 +0100 | [diff] [blame] | 43 | struct video_uc_plat. That memory is then reserved for use after |
Simon Glass | 551ca0e | 2020-07-02 21:12:33 -0600 | [diff] [blame] | 44 | relocation. But PCI drivers cannot be bound before relocation unless |
| 45 | they are mentioned in the devicetree. |
| 46 | |
| 47 | With this value set appropriately, it is possible for PCI video |
| 48 | devices to have a framebuffer allocated by U-Boot. |
| 49 | |
| 50 | Note: the framebuffer needs to be large enough to store all pixels at |
| 51 | maximum resolution. For example, at 1920 x 1200 with 32 bits per |
| 52 | pixel, 2560 * 1600 * 32 / 8 = 0xfa0000 bytes are needed. |
| 53 | |
Simon Glass | 9beac5d | 2020-07-02 21:12:20 -0600 | [diff] [blame] | 54 | config VIDEO_COPY |
| 55 | bool "Enable copying the frame buffer to a hardware copy" |
| 56 | depends on DM_VIDEO |
| 57 | help |
| 58 | On some machines (e.g. x86), reading from the frame buffer is very |
| 59 | slow because it is uncached. To improve performance, this feature |
| 60 | allows the frame buffer to be kept in cached memory (allocated by |
| 61 | U-Boot) and then copied to the hardware frame-buffer as needed. |
| 62 | |
| 63 | To use this, your video driver must set @copy_base in |
Dario Binacchi | 196947b | 2021-01-23 19:43:52 +0100 | [diff] [blame] | 64 | struct video_uc_plat. |
Simon Glass | 9beac5d | 2020-07-02 21:12:20 -0600 | [diff] [blame] | 65 | |
Patrick Delaunay | 08a43cf | 2017-08-03 12:36:06 +0200 | [diff] [blame] | 66 | config BACKLIGHT_PWM |
| 67 | bool "Generic PWM based Backlight Driver" |
Anatolij Gustschin | e26e520 | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 68 | depends on BACKLIGHT && DM_PWM |
Patrick Delaunay | 08a43cf | 2017-08-03 12:36:06 +0200 | [diff] [blame] | 69 | default y |
| 70 | help |
| 71 | If you have a LCD backlight adjustable by PWM, say Y to enable |
| 72 | this driver. |
| 73 | This driver can be use with "simple-panel" and |
| 74 | it understands the standard device tree |
| 75 | (leds/backlight/pwm-backlight.txt) |
| 76 | |
Patrick Delaunay | 5b6a6a9 | 2017-08-03 12:36:07 +0200 | [diff] [blame] | 77 | config BACKLIGHT_GPIO |
| 78 | bool "Generic GPIO based Backlight Driver" |
Anatolij Gustschin | e26e520 | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 79 | depends on BACKLIGHT |
Patrick Delaunay | 5b6a6a9 | 2017-08-03 12:36:07 +0200 | [diff] [blame] | 80 | help |
| 81 | If you have a LCD backlight adjustable by GPIO, say Y to enable |
| 82 | this driver. |
| 83 | This driver can be used with "simple-panel" and |
| 84 | it understands the standard device tree |
| 85 | (leds/backlight/gpio-backlight.txt) |
| 86 | |
Anatolij Gustschin | 39b9555 | 2020-05-25 21:47:19 +0200 | [diff] [blame] | 87 | config CMD_VIDCONSOLE |
| 88 | bool "Enable vidconsole commands lcdputs and setcurs" |
| 89 | depends on DM_VIDEO |
| 90 | default y |
| 91 | help |
| 92 | Enabling this will provide 'setcurs' and 'lcdputs' commands which |
| 93 | support cursor positioning and drawing strings on video framebuffer. |
| 94 | |
Simon Glass | 1acafc7 | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 95 | config VIDEO_BPP8 |
| 96 | bool "Support 8-bit-per-pixel displays" |
| 97 | depends on DM_VIDEO |
Anatolij Gustschin | 8a6ffed | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 98 | default y |
Simon Glass | 1acafc7 | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 99 | help |
| 100 | Support drawing text and bitmaps onto a 8-bit-per-pixel display. |
| 101 | Enabling this will include code to support this display. Without |
| 102 | this option, such displays will not be supported and console output |
| 103 | will be empty. |
| 104 | |
| 105 | config VIDEO_BPP16 |
| 106 | bool "Support 16-bit-per-pixel displays" |
| 107 | depends on DM_VIDEO |
Anatolij Gustschin | 8a6ffed | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 108 | default y |
Simon Glass | 1acafc7 | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 109 | help |
| 110 | Support drawing text and bitmaps onto a 16-bit-per-pixel display. |
| 111 | Enabling this will include code to support this display. Without |
| 112 | this option, such displays will not be supported and console output |
| 113 | will be empty. |
| 114 | |
| 115 | config VIDEO_BPP32 |
| 116 | bool "Support 32-bit-per-pixel displays" |
| 117 | depends on DM_VIDEO |
Anatolij Gustschin | 8a6ffed | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 118 | default y |
Simon Glass | 1acafc7 | 2016-01-18 19:52:15 -0700 | [diff] [blame] | 119 | help |
| 120 | Support drawing text and bitmaps onto a 32-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 | |
Rob Clark | a085aa1 | 2017-09-13 18:12:21 -0400 | [diff] [blame] | 125 | config VIDEO_ANSI |
| 126 | bool "Support ANSI escape sequences in video console" |
| 127 | depends on DM_VIDEO |
Anatolij Gustschin | 8a6ffed | 2020-02-04 22:43:06 +0100 | [diff] [blame] | 128 | default y |
Rob Clark | a085aa1 | 2017-09-13 18:12:21 -0400 | [diff] [blame] | 129 | help |
| 130 | Enable ANSI escape sequence decoding for a more fully functional |
| 131 | console. |
| 132 | |
Yannick Fertré | 66c3724 | 2019-10-07 15:29:04 +0200 | [diff] [blame] | 133 | config VIDEO_MIPI_DSI |
| 134 | bool "Support MIPI DSI interface" |
| 135 | depends on DM_VIDEO |
| 136 | help |
| 137 | Support MIPI DSI interface for driving a MIPI compatible device. |
| 138 | The MIPI Display Serial Interface (MIPI DSI) defines a high-speed |
| 139 | serial interface between a host processor and a display module. |
| 140 | |
Simon Glass | 6e42e25 | 2016-01-22 21:53:37 +0100 | [diff] [blame] | 141 | config CONSOLE_NORMAL |
| 142 | bool "Support a simple text console" |
| 143 | depends on DM_VIDEO |
| 144 | default y if DM_VIDEO |
| 145 | help |
| 146 | Support drawing text on the frame buffer console so that it can be |
| 147 | used as a console. Rotation is not supported by this driver (see |
| 148 | CONFIG_CONSOLE_ROTATION for that). A built-in 8x16 font is used |
| 149 | for the display. |
| 150 | |
| 151 | config CONSOLE_ROTATION |
Simon Glass | b5146b2 | 2016-01-18 19:52:19 -0700 | [diff] [blame] | 152 | bool "Support rotated displays" |
| 153 | depends on DM_VIDEO |
| 154 | help |
| 155 | Sometimes, for example if the display is mounted in portrait |
| 156 | mode or even if it's mounted landscape but rotated by 180degree, |
| 157 | we need to rotate our content of the display relative to the |
| 158 | framebuffer, so that user can read the messages which are |
| 159 | printed out. Enable this option to include a text driver which can |
| 160 | support this. The rotation is set by the 'rot' parameter in |
| 161 | struct video_priv: 0=unrotated, 1=90 degrees clockwise, 2=180 |
| 162 | degrees, 3=270 degrees. |
| 163 | |
Simon Glass | a29b012 | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 164 | config CONSOLE_TRUETYPE |
| 165 | bool "Support a console that uses TrueType fonts" |
| 166 | depends on DM_VIDEO |
| 167 | help |
| 168 | TrueTrype fonts can provide outline-drawing capability rather than |
| 169 | needing to provide a bitmap for each font and size that is needed. |
| 170 | With this option you can adjust the text size and use a variety of |
| 171 | fonts. Note that this is noticeably slower than with normal console. |
| 172 | |
Moses Christopher | 0f42561 | 2021-01-06 15:31:35 +0000 | [diff] [blame] | 173 | config DM_PANEL_HX8238D |
| 174 | bool "Enable Himax HX-8238D LCD driver" |
| 175 | depends on DM_VIDEO |
| 176 | help |
| 177 | Support for HX-8238D LCD Panel |
| 178 | The HX8238-D is a single chip controller and driver LSI that |
| 179 | integrates the power circuit. |
| 180 | It can drive a maximum 960x240 dot graphics on a-TFT panel |
| 181 | displays in 16M colors with dithering. |
| 182 | |
Simon Glass | a29b012 | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 183 | config CONSOLE_TRUETYPE_SIZE |
| 184 | int "TrueType font size" |
| 185 | depends on CONSOLE_TRUETYPE |
| 186 | default 18 |
| 187 | help |
| 188 | This sets the font size for the console. The size is measured in |
| 189 | pixels and is the nominal height of a character. Note that fonts |
| 190 | are commonly measured in 'points', being 1/72 inch (about 3.52mm). |
| 191 | However that measurement depends on the size of your display and |
| 192 | there is no standard display density. At present there is not a |
| 193 | method to select the display's physical size, which would allow |
| 194 | U-Boot to calculate the correct font size. |
| 195 | |
Simon Glass | 983b103 | 2017-04-26 22:27:57 -0600 | [diff] [blame] | 196 | config SYS_WHITE_ON_BLACK |
| 197 | bool "Display console as white on a black background" |
Trevor Woerner | 18138ab | 2020-05-06 08:02:41 -0400 | [diff] [blame] | 198 | default y if ARCH_AT91 || ARCH_EXYNOS || ARCH_ROCKCHIP || ARCH_TEGRA || X86 || ARCH_SUNXI |
Simon Glass | 983b103 | 2017-04-26 22:27:57 -0600 | [diff] [blame] | 199 | help |
| 200 | Normally the display is black on a white background, Enable this |
| 201 | option to invert this, i.e. white on a black background. This can be |
| 202 | better in low-light situations or to reduce eye strain in some |
| 203 | cases. |
| 204 | |
Rob Clark | 8ef0535 | 2017-08-03 12:47:01 -0400 | [diff] [blame] | 205 | config NO_FB_CLEAR |
| 206 | bool "Skip framebuffer clear" |
| 207 | help |
| 208 | If firmware (whatever loads u-boot) has already put a splash image |
| 209 | on screen, you might want to preserve it until whatever u-boot |
| 210 | loads takes over the screen. This, for example, can be used to |
| 211 | keep splash image on screen until grub graphical boot menu starts. |
| 212 | |
Anatolij Gustschin | e26e520 | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 213 | config PANEL |
| 214 | bool "Enable panel uclass support" |
| 215 | depends on DM_VIDEO |
| 216 | default y |
| 217 | help |
| 218 | This provides panel uclass driver that enables basic panel support. |
| 219 | |
| 220 | config SIMPLE_PANEL |
| 221 | bool "Enable simple panel support" |
Asherah Connor | 1bed576 | 2021-03-03 14:46:47 +1100 | [diff] [blame] | 222 | depends on PANEL && BACKLIGHT && DM_GPIO |
Anatolij Gustschin | e26e520 | 2020-05-26 00:20:49 +0200 | [diff] [blame] | 223 | default y |
| 224 | help |
| 225 | This turns on a simple panel driver that enables a compatible |
| 226 | video panel. |
| 227 | |
Simon Glass | a29b012 | 2016-01-14 18:10:42 -0700 | [diff] [blame] | 228 | source "drivers/video/fonts/Kconfig" |
| 229 | |
Simon Glass | a2931b3 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 230 | config VIDCONSOLE_AS_LCD |
Patrick Delaunay | 27b5b9e | 2020-07-01 14:56:10 +0200 | [diff] [blame] | 231 | bool "Use 'vidconsole' when CONFIG_VIDCONSOLE_AS_NAME string is seen in stdout" |
Simon Glass | a2931b3 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 232 | depends on DM_VIDEO |
Patrick Delaunay | 27b5b9e | 2020-07-01 14:56:10 +0200 | [diff] [blame] | 233 | help |
| 234 | This is a work-around for boards which have 'lcd' or 'vga' in their |
| 235 | stdout environment variable, but have moved to use driver model for |
| 236 | video. In this case the console will no-longer work. While it is |
| 237 | possible to update the environment, the breakage may be confusing for |
| 238 | users. This option will be removed around the end of 2020. |
| 239 | |
| 240 | config VIDCONSOLE_AS_NAME |
| 241 | string "Use 'vidconsole' when string defined here is seen in stdout" |
| 242 | depends on VIDCONSOLE_AS_LCD |
Anatolij Gustschin | 22b897a | 2020-05-23 17:11:20 +0200 | [diff] [blame] | 243 | default "lcd" if LCD || TEGRA_COMMON |
| 244 | default "vga" if !LCD |
Simon Glass | a2931b3 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 245 | help |
Anatolij Gustschin | 22b897a | 2020-05-23 17:11:20 +0200 | [diff] [blame] | 246 | This is a work-around for boards which have 'lcd' or 'vga' in their |
| 247 | stdout environment variable, but have moved to use driver model for |
| 248 | video. In this case the console will no-longer work. While it is |
| 249 | possible to update the environment, the breakage may be confusing for |
| 250 | users. This option will be removed around the end of 2020. |
Simon Glass | a2931b3 | 2016-02-06 14:31:37 -0700 | [diff] [blame] | 251 | |
Bin Meng | 13b2bfc | 2016-10-09 04:14:16 -0700 | [diff] [blame] | 252 | config VIDEO_COREBOOT |
| 253 | bool "Enable coreboot framebuffer driver support" |
Simon Glass | 19987c9 | 2021-03-15 18:00:27 +1300 | [diff] [blame] | 254 | depends on X86 |
Bin Meng | 13b2bfc | 2016-10-09 04:14:16 -0700 | [diff] [blame] | 255 | help |
| 256 | Turn on this option to enable a framebuffer driver when U-Boot is |
| 257 | loaded by coreboot where the graphics device is configured by |
| 258 | coreboot already. This can in principle be used with any platform |
| 259 | that coreboot supports. |
| 260 | |
Bin Meng | 4a08c74 | 2018-06-12 08:36:22 -0700 | [diff] [blame] | 261 | config VIDEO_EFI |
| 262 | bool "Enable EFI framebuffer driver support" |
Simon Glass | 1834c08 | 2021-11-03 21:09:10 -0600 | [diff] [blame] | 263 | depends on EFI_STUB || EFI_APP |
Bin Meng | 4a08c74 | 2018-06-12 08:36:22 -0700 | [diff] [blame] | 264 | help |
| 265 | Turn on this option to enable a framebuffeer driver when U-Boot is |
| 266 | loaded as a payload (see README.u-boot_on_efi) by an EFI BIOS where |
| 267 | the graphics device is configured by the EFI BIOS already. This can |
| 268 | in principle be used with any platform that has an EFI BIOS. |
| 269 | |
Simon Glass | 6b1ba98 | 2014-12-29 19:32:28 -0700 | [diff] [blame] | 270 | config VIDEO_VESA |
| 271 | bool "Enable VESA video driver support" |
Simon Glass | 6b1ba98 | 2014-12-29 19:32:28 -0700 | [diff] [blame] | 272 | help |
| 273 | Turn on this option to enable a very simple driver which uses vesa |
| 274 | to discover the video mode and then provides a frame buffer for use |
| 275 | by U-Boot. This can in principle be used with any platform that |
| 276 | supports PCI and video cards that support VESA BIOS Extension (VBE). |
| 277 | |
Bin Meng | 6bde2dc | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 278 | config FRAMEBUFFER_SET_VESA_MODE |
| 279 | bool "Set framebuffer graphics resolution" |
Simon Glass | 97cb092 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 280 | depends on VIDEO_VESA || VIDEO_BROADWELL_IGD |
Bin Meng | 6bde2dc | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 281 | help |
| 282 | Set VESA/native framebuffer mode (needed for bootsplash and graphical |
| 283 | framebuffer console) |
| 284 | |
| 285 | choice |
| 286 | prompt "framebuffer graphics resolution" |
Bin Meng | 17b07d7 | 2018-04-11 22:02:16 -0700 | [diff] [blame] | 287 | default FRAMEBUFFER_VESA_MODE_118 |
Bin Meng | 6bde2dc | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 288 | depends on FRAMEBUFFER_SET_VESA_MODE |
| 289 | help |
| 290 | This option sets the resolution used for the U-Boot framebuffer (and |
| 291 | bootsplash screen). |
| 292 | |
| 293 | config FRAMEBUFFER_VESA_MODE_100 |
| 294 | bool "640x400 256-color" |
| 295 | |
| 296 | config FRAMEBUFFER_VESA_MODE_101 |
| 297 | bool "640x480 256-color" |
| 298 | |
| 299 | config FRAMEBUFFER_VESA_MODE_102 |
| 300 | bool "800x600 16-color" |
| 301 | |
| 302 | config FRAMEBUFFER_VESA_MODE_103 |
| 303 | bool "800x600 256-color" |
| 304 | |
| 305 | config FRAMEBUFFER_VESA_MODE_104 |
| 306 | bool "1024x768 16-color" |
| 307 | |
| 308 | config FRAMEBUFFER_VESA_MODE_105 |
Bin Meng | 57dccb5 | 2015-08-09 23:26:59 -0700 | [diff] [blame] | 309 | bool "1024x768 256-color" |
Bin Meng | 6bde2dc | 2015-05-11 07:36:29 +0800 | [diff] [blame] | 310 | |
| 311 | config FRAMEBUFFER_VESA_MODE_106 |
| 312 | bool "1280x1024 16-color" |
| 313 | |
| 314 | config FRAMEBUFFER_VESA_MODE_107 |
| 315 | bool "1280x1024 256-color" |
| 316 | |
| 317 | config FRAMEBUFFER_VESA_MODE_108 |
| 318 | bool "80x60 text" |
| 319 | |
| 320 | config FRAMEBUFFER_VESA_MODE_109 |
| 321 | bool "132x25 text" |
| 322 | |
| 323 | config FRAMEBUFFER_VESA_MODE_10A |
| 324 | bool "132x43 text" |
| 325 | |
| 326 | config FRAMEBUFFER_VESA_MODE_10B |
| 327 | bool "132x50 text" |
| 328 | |
| 329 | config FRAMEBUFFER_VESA_MODE_10C |
| 330 | bool "132x60 text" |
| 331 | |
| 332 | config FRAMEBUFFER_VESA_MODE_10D |
| 333 | bool "320x200 32k-color (1:5:5:5)" |
| 334 | |
| 335 | config FRAMEBUFFER_VESA_MODE_10E |
| 336 | bool "320x200 64k-color (5:6:5)" |
| 337 | |
| 338 | config FRAMEBUFFER_VESA_MODE_10F |
| 339 | bool "320x200 16.8M-color (8:8:8)" |
| 340 | |
| 341 | config FRAMEBUFFER_VESA_MODE_110 |
| 342 | bool "640x480 32k-color (1:5:5:5)" |
| 343 | |
| 344 | config FRAMEBUFFER_VESA_MODE_111 |
| 345 | bool "640x480 64k-color (5:6:5)" |
| 346 | |
| 347 | config FRAMEBUFFER_VESA_MODE_112 |
| 348 | bool "640x480 16.8M-color (8:8:8)" |
| 349 | |
| 350 | config FRAMEBUFFER_VESA_MODE_113 |
| 351 | bool "800x600 32k-color (1:5:5:5)" |
| 352 | |
| 353 | config FRAMEBUFFER_VESA_MODE_114 |
| 354 | bool "800x600 64k-color (5:6:5)" |
| 355 | |
| 356 | config FRAMEBUFFER_VESA_MODE_115 |
| 357 | bool "800x600 16.8M-color (8:8:8)" |
| 358 | |
| 359 | config FRAMEBUFFER_VESA_MODE_116 |
| 360 | bool "1024x768 32k-color (1:5:5:5)" |
| 361 | |
| 362 | config FRAMEBUFFER_VESA_MODE_117 |
| 363 | bool "1024x768 64k-color (5:6:5)" |
| 364 | |
| 365 | config FRAMEBUFFER_VESA_MODE_118 |
| 366 | bool "1024x768 16.8M-color (8:8:8)" |
| 367 | |
| 368 | config FRAMEBUFFER_VESA_MODE_119 |
| 369 | bool "1280x1024 32k-color (1:5:5:5)" |
| 370 | |
| 371 | config FRAMEBUFFER_VESA_MODE_11A |
| 372 | bool "1280x1024 64k-color (5:6:5)" |
| 373 | |
| 374 | config FRAMEBUFFER_VESA_MODE_11B |
| 375 | bool "1280x1024 16.8M-color (8:8:8)" |
| 376 | |
| 377 | config FRAMEBUFFER_VESA_MODE_USER |
| 378 | bool "Manually select VESA mode" |
| 379 | |
| 380 | endchoice |
| 381 | |
| 382 | # Map the config names to an integer (KB). |
| 383 | config FRAMEBUFFER_VESA_MODE |
| 384 | prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER |
| 385 | hex |
| 386 | default 0x100 if FRAMEBUFFER_VESA_MODE_100 |
| 387 | default 0x101 if FRAMEBUFFER_VESA_MODE_101 |
| 388 | default 0x102 if FRAMEBUFFER_VESA_MODE_102 |
| 389 | default 0x103 if FRAMEBUFFER_VESA_MODE_103 |
| 390 | default 0x104 if FRAMEBUFFER_VESA_MODE_104 |
| 391 | default 0x105 if FRAMEBUFFER_VESA_MODE_105 |
| 392 | default 0x106 if FRAMEBUFFER_VESA_MODE_106 |
| 393 | default 0x107 if FRAMEBUFFER_VESA_MODE_107 |
| 394 | default 0x108 if FRAMEBUFFER_VESA_MODE_108 |
| 395 | default 0x109 if FRAMEBUFFER_VESA_MODE_109 |
| 396 | default 0x10A if FRAMEBUFFER_VESA_MODE_10A |
| 397 | default 0x10B if FRAMEBUFFER_VESA_MODE_10B |
| 398 | default 0x10C if FRAMEBUFFER_VESA_MODE_10C |
| 399 | default 0x10D if FRAMEBUFFER_VESA_MODE_10D |
| 400 | default 0x10E if FRAMEBUFFER_VESA_MODE_10E |
| 401 | default 0x10F if FRAMEBUFFER_VESA_MODE_10F |
| 402 | default 0x110 if FRAMEBUFFER_VESA_MODE_110 |
| 403 | default 0x111 if FRAMEBUFFER_VESA_MODE_111 |
| 404 | default 0x112 if FRAMEBUFFER_VESA_MODE_112 |
| 405 | default 0x113 if FRAMEBUFFER_VESA_MODE_113 |
| 406 | default 0x114 if FRAMEBUFFER_VESA_MODE_114 |
| 407 | default 0x115 if FRAMEBUFFER_VESA_MODE_115 |
| 408 | default 0x116 if FRAMEBUFFER_VESA_MODE_116 |
| 409 | default 0x117 if FRAMEBUFFER_VESA_MODE_117 |
| 410 | default 0x118 if FRAMEBUFFER_VESA_MODE_118 |
| 411 | default 0x119 if FRAMEBUFFER_VESA_MODE_119 |
| 412 | default 0x11A if FRAMEBUFFER_VESA_MODE_11A |
| 413 | default 0x11B if FRAMEBUFFER_VESA_MODE_11B |
| 414 | default 0x117 if FRAMEBUFFER_VESA_MODE_USER |
| 415 | |
Hans de Goede | 66525bb | 2015-08-08 16:03:29 +0200 | [diff] [blame] | 416 | config VIDEO_LCD_ANX9804 |
| 417 | bool "ANX9804 bridge chip" |
Hans de Goede | 66525bb | 2015-08-08 16:03:29 +0200 | [diff] [blame] | 418 | ---help--- |
| 419 | Support for the ANX9804 bridge chip, which can take pixel data coming |
| 420 | from a parallel LCD interface and translate it on the fy into a DP |
| 421 | interface for driving eDP TFT displays. It uses I2C for configuration. |
| 422 | |
Yannick Fertré | 78157b2 | 2019-10-07 15:29:08 +0200 | [diff] [blame] | 423 | config VIDEO_LCD_ORISETECH_OTM8009A |
| 424 | bool "OTM8009A DSI LCD panel support" |
| 425 | depends on DM_VIDEO |
| 426 | select VIDEO_MIPI_DSI |
Yannick Fertré | 78157b2 | 2019-10-07 15:29:08 +0200 | [diff] [blame] | 427 | help |
| 428 | Say Y here if you want to enable support for Orise Technology |
| 429 | otm8009a 480x800 dsi 2dl panel. |
| 430 | |
Yannick Fertré | 06ef131 | 2019-10-07 15:29:09 +0200 | [diff] [blame] | 431 | config VIDEO_LCD_RAYDIUM_RM68200 |
| 432 | bool "RM68200 DSI LCD panel support" |
| 433 | depends on DM_VIDEO |
| 434 | select VIDEO_MIPI_DSI |
Yannick Fertré | 06ef131 | 2019-10-07 15:29:09 +0200 | [diff] [blame] | 435 | help |
| 436 | Say Y here if you want to enable support for Raydium RM68200 |
| 437 | 720x1280 DSI video mode panel. |
| 438 | |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 439 | config VIDEO_LCD_SSD2828 |
| 440 | bool "SSD2828 bridge chip" |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 441 | ---help--- |
| 442 | Support for the SSD2828 bridge chip, which can take pixel data coming |
| 443 | from a parallel LCD interface and translate it on the fly into MIPI DSI |
| 444 | interface for driving a MIPI compatible LCD panel. It uses SPI for |
| 445 | configuration. |
| 446 | |
| 447 | config VIDEO_LCD_SSD2828_TX_CLK |
| 448 | int "SSD2828 TX_CLK frequency (in MHz)" |
| 449 | depends on VIDEO_LCD_SSD2828 |
Siarhei Siamashka | dddccd6 | 2015-01-19 05:23:35 +0200 | [diff] [blame] | 450 | default 0 |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 451 | ---help--- |
| 452 | The frequency of the crystal, which is clocking SSD2828. It may be |
| 453 | anything in the 8MHz-30MHz range and the exact value should be |
| 454 | retrieved from the board schematics. Or in the case of Allwinner |
| 455 | hardware, it can be usually found as 'lcd_xtal_freq' variable in |
Siarhei Siamashka | dddccd6 | 2015-01-19 05:23:35 +0200 | [diff] [blame] | 456 | FEX files. It can be also set to 0 for selecting PCLK from the |
| 457 | parallel LCD interface instead of TX_CLK as the PLL clock source. |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 458 | |
| 459 | config VIDEO_LCD_SSD2828_RESET |
| 460 | string "RESET pin of SSD2828" |
| 461 | depends on VIDEO_LCD_SSD2828 |
| 462 | default "" |
| 463 | ---help--- |
| 464 | The reset pin of SSD2828 chip. This takes a string in the format |
Samuel Holland | 4d9958b | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 465 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 466 | |
Neil Armstrong | c823f24 | 2020-09-29 11:53:53 +0200 | [diff] [blame] | 467 | config VIDEO_LCD_TDO_TL070WSH30 |
| 468 | bool "TDO TL070WSH30 DSI LCD panel support" |
| 469 | depends on DM_VIDEO |
| 470 | select VIDEO_MIPI_DSI |
Neil Armstrong | c823f24 | 2020-09-29 11:53:53 +0200 | [diff] [blame] | 471 | help |
| 472 | Say Y here if you want to enable support for TDO TL070WSH30 |
| 473 | 1024x600 DSI video mode panel. |
| 474 | |
Hans de Goede | a5464f2 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 475 | config VIDEO_LCD_HITACHI_TX18D42VM |
| 476 | bool "Hitachi tx18d42vm LVDS LCD panel support" |
Hans de Goede | a5464f2 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 477 | ---help--- |
| 478 | Support for Hitachi tx18d42vm LVDS LCD panels, these panels have a |
| 479 | lcd controller which needs to be initialized over SPI, once that is |
| 480 | done they work like a regular LVDS panel. |
| 481 | |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 482 | config VIDEO_LCD_SPI_CS |
| 483 | string "SPI CS pin for LCD related config job" |
Hans de Goede | a5464f2 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 484 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 485 | default "" |
| 486 | ---help--- |
| 487 | This is one of the SPI communication pins, involved in setting up a |
| 488 | working LCD configuration. The exact role of SPI may differ for |
| 489 | different hardware setups. The option takes a string in the format |
Samuel Holland | 4d9958b | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 490 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 491 | |
| 492 | config VIDEO_LCD_SPI_SCLK |
| 493 | string "SPI SCLK pin for LCD related config job" |
Hans de Goede | a5464f2 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 494 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 495 | default "" |
| 496 | ---help--- |
| 497 | This is one of the SPI communication pins, involved in setting up a |
| 498 | working LCD configuration. The exact role of SPI may differ for |
| 499 | different hardware setups. The option takes a string in the format |
Samuel Holland | 4d9958b | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 500 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 501 | |
| 502 | config VIDEO_LCD_SPI_MOSI |
| 503 | string "SPI MOSI pin for LCD related config job" |
Hans de Goede | a5464f2 | 2015-01-20 09:22:26 +0100 | [diff] [blame] | 504 | depends on VIDEO_LCD_SSD2828 || VIDEO_LCD_HITACHI_TX18D42VM |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 505 | default "" |
| 506 | ---help--- |
| 507 | This is one of the SPI communication pins, involved in setting up a |
| 508 | working LCD configuration. The exact role of SPI may differ for |
| 509 | different hardware setups. The option takes a string in the format |
Samuel Holland | 4d9958b | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 510 | understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H. |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 511 | |
| 512 | config VIDEO_LCD_SPI_MISO |
| 513 | string "SPI MISO pin for LCD related config job (optional)" |
| 514 | depends on VIDEO_LCD_SSD2828 |
| 515 | default "" |
| 516 | ---help--- |
| 517 | This is one of the SPI communication pins, involved in setting up a |
| 518 | working LCD configuration. The exact role of SPI may differ for |
| 519 | different hardware setups. If wired up, this pin may provide additional |
| 520 | useful functionality. Such as bi-directional communication with the |
| 521 | hardware and LCD panel id retrieval (if the panel can report it). The |
Samuel Holland | 4d9958b | 2021-09-11 16:50:48 -0500 | [diff] [blame] | 522 | option takes a string in the format understood by 'sunxi_name_to_gpio' |
Siarhei Siamashka | b8329ac | 2015-01-19 05:23:32 +0200 | [diff] [blame] | 523 | function, e.g. PH1 for pin 1 of port H. |
Simon Glass | 51f2c99 | 2015-04-14 21:03:38 -0600 | [diff] [blame] | 524 | |
Neil Armstrong | 3bed422 | 2018-07-24 17:45:28 +0200 | [diff] [blame] | 525 | source "drivers/video/meson/Kconfig" |
| 526 | |
Stefan Roese | 913d1be | 2016-01-20 08:13:28 +0100 | [diff] [blame] | 527 | config VIDEO_MVEBU |
| 528 | bool "Armada XP LCD controller" |
Stefan Roese | 913d1be | 2016-01-20 08:13:28 +0100 | [diff] [blame] | 529 | ---help--- |
| 530 | Support for the LCD controller integrated in the Marvell |
| 531 | Armada XP SoC. |
| 532 | |
Adam Ford | 244eaea | 2018-08-02 08:50:20 -0500 | [diff] [blame] | 533 | config VIDEO_OMAP3 |
| 534 | bool "Enable OMAP3+ DSS Support" |
| 535 | depends on ARCH_OMAP2PLUS |
| 536 | help |
| 537 | This enables the Display subsystem (DSS) on OMAP3+ boards. |
| 538 | |
Anatolij Gustschin | 7588c31 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 539 | config I2C_EDID |
| 540 | bool "Enable EDID library" |
Anatolij Gustschin | 7588c31 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 541 | help |
| 542 | This enables library for accessing EDID data from an LCD panel. |
| 543 | |
Simon Glass | 2dcf143 | 2016-01-21 19:45:00 -0700 | [diff] [blame] | 544 | config DISPLAY |
| 545 | bool "Enable Display support" |
| 546 | depends on DM |
Anatolij Gustschin | 7588c31 | 2016-01-25 17:17:22 +0100 | [diff] [blame] | 547 | select I2C_EDID |
Simon Glass | 51f2c99 | 2015-04-14 21:03:38 -0600 | [diff] [blame] | 548 | help |
Simon Glass | 2dcf143 | 2016-01-21 19:45:00 -0700 | [diff] [blame] | 549 | This supports drivers that provide a display, such as eDP (Embedded |
| 550 | DisplayPort) and HDMI (High Definition Multimedia Interface). |
| 551 | The devices provide a simple interface to start up the display, |
| 552 | read display information and enable it. |
Simon Glass | e7e8823 | 2015-04-14 21:03:42 -0600 | [diff] [blame] | 553 | |
Liviu Dudau | 055da18 | 2018-09-28 13:49:31 +0100 | [diff] [blame] | 554 | config NXP_TDA19988 |
| 555 | bool "Enable NXP TDA19988 support" |
| 556 | depends on DISPLAY |
Liviu Dudau | 055da18 | 2018-09-28 13:49:31 +0100 | [diff] [blame] | 557 | help |
| 558 | This enables support for the NXP TDA19988 HDMI encoder. This encoder |
| 559 | will convert RGB data streams into HDMI-encoded signals. |
| 560 | |
Songjun Wu | 7927831 | 2017-04-11 16:33:30 +0800 | [diff] [blame] | 561 | config ATMEL_HLCD |
| 562 | bool "Enable ATMEL video support using HLCDC" |
Songjun Wu | 7927831 | 2017-04-11 16:33:30 +0800 | [diff] [blame] | 563 | help |
| 564 | HLCDC supports video output to an attached LCD panel. |
| 565 | |
Dario Binacchi | 260cbc9 | 2020-12-30 00:16:31 +0100 | [diff] [blame] | 566 | source "drivers/video/ti/Kconfig" |
Dario Binacchi | 96b109b | 2020-02-22 14:05:45 +0100 | [diff] [blame] | 567 | |
Mario Six | 25a9f97 | 2018-08-09 14:51:23 +0200 | [diff] [blame] | 568 | config LOGICORE_DP_TX |
| 569 | bool "Enable Logicore DP TX driver" |
| 570 | depends on DISPLAY |
| 571 | help |
| 572 | Enable the driver for the transmitter part of the Xilinx LogiCORE |
| 573 | DisplayPort, a IP core for Xilinx FPGAs that implements a DisplayPort |
| 574 | video interface as defined by VESA DisplayPort v1.2. |
| 575 | |
| 576 | Note that this is a pure transmitter device, and has no display |
| 577 | capabilities by itself. |
| 578 | |
Simon Glass | 97cb092 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 579 | config VIDEO_BROADWELL_IGD |
| 580 | bool "Enable Intel Broadwell integrated graphics device" |
| 581 | depends on X86 |
| 582 | help |
Simon Glass | 1df9127 | 2016-10-05 20:42:14 -0600 | [diff] [blame] | 583 | This enables support for integrated graphics on Intel broadwell |
Simon Glass | 97cb092 | 2016-03-11 22:07:30 -0700 | [diff] [blame] | 584 | devices. Initialisation is mostly performed by a VGA boot ROM, with |
| 585 | some setup handled by U-Boot itself. The graphics adaptor works as |
| 586 | a VESA device and supports LCD panels, eDP and LVDS outputs. |
| 587 | Configuration of most aspects of device operation is performed using |
| 588 | a special tool which configures the VGA ROM, but the graphics |
| 589 | resolution can be selected in U-Boot. |
| 590 | |
Simon Glass | 2c94380 | 2016-10-05 20:42:15 -0600 | [diff] [blame] | 591 | config VIDEO_IVYBRIDGE_IGD |
| 592 | bool "Enable Intel Ivybridge integration graphics support" |
| 593 | depends on X86 |
| 594 | help |
| 595 | This enables support for integrated graphics on Intel ivybridge |
| 596 | devices. Initialisation is mostly performed by a VGA boot ROM, with |
| 597 | some setup handled by U-Boot itself. The graphics adaptor works as |
| 598 | a VESA device and supports LCD panels, eDP and LVDS outputs. |
| 599 | Configuration of most aspects of device operation is performed using |
| 600 | a special tool which configures the VGA ROM, but the graphics |
| 601 | resolution can be selected in U-Boot. |
| 602 | |
Sanchayan Maity | b215fb3 | 2017-04-11 11:12:09 +0530 | [diff] [blame] | 603 | config VIDEO_FSL_DCU_FB |
| 604 | bool "Enable Freescale Display Control Unit" |
Igor Opaniuk | be3f1a5 | 2019-06-10 14:47:50 +0300 | [diff] [blame] | 605 | depends on VIDEO || DM_VIDEO |
Sanchayan Maity | b215fb3 | 2017-04-11 11:12:09 +0530 | [diff] [blame] | 606 | help |
| 607 | This enables support for Freescale Display Control Unit (DCU4) |
| 608 | module found on Freescale Vybrid and QorIQ family of SoCs. |
| 609 | |
Stefan Agner | 77810e6 | 2017-04-11 11:12:10 +0530 | [diff] [blame] | 610 | config VIDEO_FSL_DCU_MAX_FB_SIZE_MB |
| 611 | int "Freescale DCU framebuffer size" |
| 612 | depends on VIDEO_FSL_DCU_FB |
| 613 | default 4194304 |
| 614 | help |
| 615 | Set maximum framebuffer size to be used for Freescale Display |
| 616 | Controller Unit (DCU4). |
| 617 | |
eric.gao@rock-chips.com | b98f0a3 | 2017-04-17 22:24:23 +0800 | [diff] [blame] | 618 | source "drivers/video/rockchip/Kconfig" |
Simon Glass | c253948 | 2016-01-21 19:45:03 -0700 | [diff] [blame] | 619 | |
Liviu Dudau | c1a65a8 | 2018-09-28 13:50:53 +0100 | [diff] [blame] | 620 | config VIDEO_ARM_MALIDP |
| 621 | bool "Enable Arm Mali Display Processor support" |
| 622 | depends on DM_VIDEO && OF_CONTROL |
| 623 | select VEXPRESS_CLK |
| 624 | help |
| 625 | This enables support for Arm Ltd Mali Display Processors from |
| 626 | the DP500, DP550 and DP650 family. |
| 627 | |
Simon Glass | 1e69ad0 | 2016-01-18 19:52:24 -0700 | [diff] [blame] | 628 | config VIDEO_SANDBOX_SDL |
| 629 | bool "Enable sandbox video console using SDL" |
| 630 | depends on SANDBOX |
| 631 | help |
| 632 | When using sandbox you can enable an emulated LCD display which |
| 633 | appears as an SDL (Simple DirectMedia Layer) window. This is a |
| 634 | console device and can display stdout output. Within U-Boot is is |
| 635 | a normal bitmap display and can display images as well as text. |
| 636 | |
Philippe CORNU | 72719d2 | 2017-08-03 12:36:08 +0200 | [diff] [blame] | 637 | source "drivers/video/stm32/Kconfig" |
| 638 | |
Simon Glass | d2f9065 | 2016-01-30 16:37:51 -0700 | [diff] [blame] | 639 | config VIDEO_TEGRA20 |
| 640 | bool "Enable LCD support on Tegra20" |
Simon Glass | 40d56a9 | 2016-01-30 16:37:54 -0700 | [diff] [blame] | 641 | depends on OF_CONTROL |
Simon Glass | d2f9065 | 2016-01-30 16:37:51 -0700 | [diff] [blame] | 642 | help |
| 643 | Tegra20 supports video output to an attached LCD panel as well as |
| 644 | other options such as HDMI. Only the LCD is supported in U-Boot. |
| 645 | This option enables this support which can be used on devices which |
| 646 | have an LCD display connected. |
| 647 | |
Simon Glass | e7e8823 | 2015-04-14 21:03:42 -0600 | [diff] [blame] | 648 | config VIDEO_TEGRA124 |
| 649 | bool "Enable video support on Tegra124" |
Simon Glass | d765921 | 2016-01-30 16:37:50 -0700 | [diff] [blame] | 650 | depends on DM_VIDEO |
Simon Glass | e7e8823 | 2015-04-14 21:03:42 -0600 | [diff] [blame] | 651 | help |
| 652 | Tegra124 supports many video output options including eDP and |
| 653 | HDMI. At present only eDP is supported by U-Boot. This option |
| 654 | enables this support which can be used on devices which |
| 655 | have an eDP display connected. |
Simon Glass | 801ab9e | 2015-07-02 18:16:08 -0600 | [diff] [blame] | 656 | |
| 657 | source "drivers/video/bridge/Kconfig" |
Masahiro Yamada | 0b11dbf | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 658 | |
Anatolij Gustschin | bffd131 | 2019-03-18 23:29:32 +0100 | [diff] [blame] | 659 | source "drivers/video/imx/Kconfig" |
Anatolij Gustschin | 57f065f | 2019-03-18 23:29:31 +0100 | [diff] [blame] | 660 | |
Anatolij Gustschin | 79c0533 | 2021-10-04 17:33:12 +0200 | [diff] [blame] | 661 | config VIDEO_MXS |
| 662 | bool "Enable video support on i.MX28/i.MX6UL/i.MX7 SoCs" |
| 663 | depends on DM_VIDEO |
| 664 | help |
| 665 | Enable framebuffer driver for i.MX28/i.MX6UL/i.MX7 processors |
| 666 | |
Stefan Bosch | e1e96ba | 2020-07-10 19:07:36 +0200 | [diff] [blame] | 667 | config VIDEO_NX |
| 668 | bool "Enable video support on Nexell SoC" |
| 669 | depends on ARCH_S5P6818 || ARCH_S5P4418 |
| 670 | help |
| 671 | Nexell SoC supports many video output options including eDP and |
| 672 | HDMI. This option enables this support which can be used on devices |
| 673 | which have an eDP display connected. |
| 674 | |
Michal Simek | b66d7af | 2020-12-03 09:31:35 +0100 | [diff] [blame] | 675 | config VIDEO_SEPS525 |
| 676 | bool "Enable video support for Seps525" |
| 677 | depends on DM_VIDEO |
| 678 | help |
| 679 | Enable support for the Syncoam PM-OLED display driver (RGB 160x128). |
| 680 | Currently driver is supporting only SPI interface. |
| 681 | |
Stefan Bosch | e1e96ba | 2020-07-10 19:07:36 +0200 | [diff] [blame] | 682 | source "drivers/video/nexell/Kconfig" |
| 683 | |
Simon Glass | 27604b1 | 2016-10-17 20:12:40 -0600 | [diff] [blame] | 684 | config VIDEO |
| 685 | bool "Enable legacy video support" |
| 686 | depends on !DM_VIDEO |
| 687 | help |
| 688 | Define this for video support, without using driver model. Some |
| 689 | drivers use this because they are not yet converted to driver |
| 690 | model. Video drivers typically provide a colour text console and |
| 691 | cursor. |
| 692 | |
Simon Glass | bdba2b3 | 2016-10-17 20:12:41 -0600 | [diff] [blame] | 693 | config CFB_CONSOLE |
| 694 | bool "Enable colour frame buffer console" |
Anatolij Gustschin | 9dec5a0 | 2020-10-26 19:50:58 +0100 | [diff] [blame] | 695 | depends on VIDEO || ARCH_OMAP2PLUS |
Simon Glass | bdba2b3 | 2016-10-17 20:12:41 -0600 | [diff] [blame] | 696 | default y if VIDEO |
| 697 | help |
| 698 | Enables the colour frame buffer driver. This supports colour |
| 699 | output on a bitmap display from an in-memory frame buffer. |
| 700 | Several colour devices are supported along with various options to |
| 701 | adjust the supported features. The driver is implemented in |
| 702 | cfb_console.c |
| 703 | |
| 704 | The following defines are needed (cf. smiLynxEM, i8042) |
| 705 | VIDEO_FB_LITTLE_ENDIAN graphic memory organisation |
| 706 | (default big endian) |
| 707 | VIDEO_HW_RECTFILL graphic chip supports |
| 708 | rectangle fill (cf. smiLynxEM) |
| 709 | VIDEO_HW_BITBLT graphic chip supports |
| 710 | bit-blit (cf. smiLynxEM) |
| 711 | VIDEO_VISIBLE_COLS visible pixel columns (cols=pitch) |
| 712 | VIDEO_VISIBLE_ROWS visible pixel rows |
| 713 | VIDEO_PIXEL_SIZE bytes per pixel |
| 714 | VIDEO_DATA_FORMAT graphic data format |
| 715 | (0-5, cf. cfb_console.c) |
| 716 | VIDEO_FB_ADRS framebuffer address |
| 717 | VIDEO_KBD_INIT_FCT keyboard int fct (i.e. rx51_kp_init()) |
| 718 | VIDEO_TSTC_FCT test char fct (i.e. rx51_kp_tstc) |
| 719 | VIDEO_GETC_FCT get char fct (i.e. rx51_kp_getc) |
| 720 | CONFIG_VIDEO_LOGO display Linux logo in upper left corner |
| 721 | CONFIG_VIDEO_BMP_LOGO use bmp_logo.h instead of linux_logo.h |
| 722 | for logo. Requires CONFIG_VIDEO_LOGO |
| 723 | CONFIG_CONSOLE_EXTRA_INFO |
| 724 | additional board info beside |
| 725 | the logo |
| 726 | CONFIG_HIDE_LOGO_VERSION |
| 727 | do not display bootloader |
| 728 | version string |
| 729 | |
| 730 | When CONFIG_CFB_CONSOLE is defined, the video console is the |
| 731 | default console. The serial console can be forced by setting the |
| 732 | environment 'console=serial'. |
| 733 | |
Simon Glass | c674519 | 2016-10-17 20:12:42 -0600 | [diff] [blame] | 734 | config CFB_CONSOLE_ANSI |
| 735 | bool "Support ANSI escape sequences" |
| 736 | depends on CFB_CONSOLE |
| 737 | help |
| 738 | This allows the colour buffer frame buffer driver to support |
| 739 | a limited number of ANSI escape sequences (cursor control, |
| 740 | erase functions and limited graphics rendition control). Normal |
| 741 | output from U-Boot will pass through this filter. |
| 742 | |
Simon Glass | 1e1a0fb | 2016-10-17 20:12:49 -0600 | [diff] [blame] | 743 | config VGA_AS_SINGLE_DEVICE |
| 744 | bool "Set the video as an output-only device" |
| 745 | depends on CFB_CONSOLE |
| 746 | default y |
| 747 | help |
| 748 | If enable the framebuffer device will be initialized as an |
| 749 | output-only device. The Keyboard driver will not be set up. This |
| 750 | may be used if you have no keyboard device, or more than one |
| 751 | (USB Keyboard, AT Keyboard). |
| 752 | |
Simon Glass | 0872d44 | 2016-10-17 20:12:51 -0600 | [diff] [blame] | 753 | config VIDEO_SW_CURSOR |
| 754 | bool "Enable a software cursor" |
| 755 | depends on CFB_CONSOLE |
| 756 | default y if CFB_CONSOLE |
| 757 | help |
| 758 | This draws a cursor after the last character. No blinking is |
| 759 | provided. This makes it possible to see the current cursor |
| 760 | position when entering text on the console. It is recommended to |
| 761 | enable this. |
| 762 | |
Simon Glass | fbda683 | 2016-10-17 20:12:53 -0600 | [diff] [blame] | 763 | config CONSOLE_EXTRA_INFO |
| 764 | bool "Display additional board information" |
| 765 | depends on CFB_CONSOLE |
| 766 | help |
| 767 | Display additional board information strings that normally go to |
| 768 | the serial port. When this option is enabled, a board-specific |
| 769 | function video_get_info_str() is called to get the string for |
| 770 | each line of the display. The function should return the string, |
| 771 | which can be empty if there is nothing to display for that line. |
| 772 | |
Simon Glass | b87ca80 | 2016-10-17 20:12:57 -0600 | [diff] [blame] | 773 | config CONSOLE_SCROLL_LINES |
| 774 | int "Number of lines to scroll the console by" |
| 775 | depends on CFB_CONSOLE || DM_VIDEO || LCD |
| 776 | default 1 |
| 777 | help |
| 778 | When the console need to be scrolled, this is the number of |
| 779 | lines to scroll by. It defaults to 1. Increasing this makes the |
| 780 | console jump but can help speed up operation when scrolling |
| 781 | is slow. |
| 782 | |
Simon Glass | 002f967 | 2016-10-17 20:12:44 -0600 | [diff] [blame] | 783 | config SYS_CONSOLE_BG_COL |
| 784 | hex "Background colour" |
Bin Meng | c674e00 | 2017-08-03 21:56:50 -0700 | [diff] [blame] | 785 | depends on CFB_CONSOLE |
Simon Glass | 002f967 | 2016-10-17 20:12:44 -0600 | [diff] [blame] | 786 | default 0x00 |
| 787 | help |
| 788 | Defines the background colour for the console. The value is from |
| 789 | 0x00 to 0xff and the meaning depends on the graphics card. |
| 790 | Typically, 0x00 means black and 0xff means white. Do not set |
| 791 | the background and foreground to the same colour or you will see |
| 792 | nothing. |
| 793 | |
| 794 | config SYS_CONSOLE_FG_COL |
| 795 | hex "Foreground colour" |
Bin Meng | c674e00 | 2017-08-03 21:56:50 -0700 | [diff] [blame] | 796 | depends on CFB_CONSOLE |
Simon Glass | 002f967 | 2016-10-17 20:12:44 -0600 | [diff] [blame] | 797 | default 0xa0 |
| 798 | help |
| 799 | Defines the foreground colour for the console. The value is from |
| 800 | 0x00 to 0xff and the meaning depends on the graphics card. |
| 801 | Typically, 0x00 means black and 0xff means white. Do not set |
| 802 | the background and foreground to the same colour or you will see |
| 803 | nothing. |
| 804 | |
Simon Glass | f8b19a8 | 2016-10-17 20:12:56 -0600 | [diff] [blame] | 805 | config LCD |
| 806 | bool "Enable legacy LCD support" |
| 807 | help |
| 808 | Define this to enable LCD support (for output to LCD display). |
| 809 | You will also need to select an LCD driver using an additional |
| 810 | CONFIG option. See the README for details. Drives which have been |
| 811 | converted to driver model will instead used CONFIG_DM_VIDEO. |
| 812 | |
Philipp Tomsich | 8517f64 | 2017-05-05 21:48:26 +0200 | [diff] [blame] | 813 | config VIDEO_DW_HDMI |
| 814 | bool |
| 815 | help |
| 816 | Enables the common driver code for the Designware HDMI TX |
| 817 | block found in SoCs from various vendors. |
| 818 | As this does not provide any functionality by itself (but |
| 819 | rather requires a SoC-specific glue driver to call it), it |
| 820 | can not be enabled from the configuration menu. |
| 821 | |
Yannick Fertré | 23f965a | 2019-10-07 15:29:05 +0200 | [diff] [blame] | 822 | config VIDEO_DSI_HOST_SANDBOX |
| 823 | bool "Enable sandbox for dsi host" |
| 824 | depends on SANDBOX |
| 825 | select VIDEO_MIPI_DSI |
| 826 | help |
| 827 | Enable support for sandbox dsi host device used for testing |
| 828 | purposes. |
| 829 | Display Serial Interface (DSI) defines a serial bus and |
| 830 | a communication protocol between the host and the device |
| 831 | (panel, bridge). |
| 832 | |
Yannick Fertré | d4f7ea8 | 2019-10-07 15:29:06 +0200 | [diff] [blame] | 833 | config VIDEO_DW_MIPI_DSI |
| 834 | bool |
| 835 | select VIDEO_MIPI_DSI |
| 836 | help |
| 837 | Enables the common driver code for the Synopsis Designware |
| 838 | MIPI DSI block found in SoCs from various vendors. |
| 839 | As this does not provide any functionality by itself (but |
| 840 | rather requires a SoC-specific glue driver to call it), it |
| 841 | can not be enabled from the configuration menu. |
| 842 | |
Rob Clark | 971d7e6 | 2017-08-03 12:47:00 -0400 | [diff] [blame] | 843 | config VIDEO_SIMPLE |
| 844 | bool "Simple display driver for preconfigured display" |
| 845 | help |
| 846 | Enables a simple generic display driver which utilizes the |
| 847 | simple-framebuffer devicetree bindings. |
| 848 | |
| 849 | This driver assumes that the display hardware has been initialized |
| 850 | before u-boot starts, and u-boot will simply render to the pre- |
| 851 | allocated frame buffer surface. |
| 852 | |
Icenowy Zheng | f6bdddc | 2017-10-26 11:14:46 +0800 | [diff] [blame] | 853 | config VIDEO_DT_SIMPLEFB |
| 854 | bool "Enable SimpleFB support for passing framebuffer to OS" |
| 855 | help |
| 856 | Enables the code to pass the framebuffer to the kernel as a |
| 857 | simple framebuffer in the device tree. |
| 858 | The video output is initialized by U-Boot, and kept by the |
| 859 | kernel. |
| 860 | |
Stephan Gerhold | 21a151a | 2021-07-02 19:21:56 +0200 | [diff] [blame] | 861 | config VIDEO_MCDE_SIMPLE |
| 862 | bool "Simple driver for ST-Ericsson MCDE with preconfigured display" |
| 863 | depends on DM_VIDEO |
| 864 | help |
| 865 | Enables a simple display driver for ST-Ericsson MCDE |
| 866 | (Multichannel Display Engine), which reads the configuration from |
| 867 | the MCDE registers. |
| 868 | |
| 869 | This driver assumes that the display hardware has been initialized |
| 870 | before u-boot starts, and u-boot will simply render to the pre- |
| 871 | allocated frame buffer surface. |
| 872 | |
Mario Six | 39a336f | 2018-09-27 09:19:29 +0200 | [diff] [blame] | 873 | config OSD |
| 874 | bool "Enable OSD support" |
| 875 | depends on DM |
Mario Six | 39a336f | 2018-09-27 09:19:29 +0200 | [diff] [blame] | 876 | help |
| 877 | This supports drivers that provide a OSD (on-screen display), which |
| 878 | is a (usually text-oriented) graphics buffer to show information on |
| 879 | a display. |
Mario Six | 9671f69 | 2018-09-27 09:19:30 +0200 | [diff] [blame] | 880 | |
Mario Six | 4eea531 | 2018-09-27 09:19:31 +0200 | [diff] [blame] | 881 | config SANDBOX_OSD |
| 882 | bool "Enable sandbox OSD" |
| 883 | depends on OSD |
| 884 | help |
| 885 | Enable support for sandbox OSD device used for testing purposes. |
| 886 | |
Mario Six | 9671f69 | 2018-09-27 09:19:30 +0200 | [diff] [blame] | 887 | config IHS_VIDEO_OUT |
| 888 | bool "Enable IHS video out driver" |
| 889 | depends on OSD |
| 890 | help |
| 891 | Enable support for the gdsys Integrated Hardware Systems (IHS) video |
| 892 | out On-screen Display (OSD) used on gdsys FPGAs to control dynamic |
| 893 | textual overlays of the display outputs. |
| 894 | |
Simon Glass | 35bd70c | 2020-08-11 11:23:35 -0600 | [diff] [blame] | 895 | config SPLASH_SCREEN |
| 896 | bool "Show a splash-screen image" |
| 897 | help |
| 898 | If this option is set, the environment is checked for a variable |
| 899 | "splashimage". If found, the usual display of logo, copyright and |
| 900 | system information on the LCD is suppressed and the BMP image at the |
| 901 | address specified in "splashimage" is loaded instead. The console is |
| 902 | redirected to the "nulldev", too. This allows for a "silent" boot |
| 903 | where a splash screen is loaded very quickly after power-on. |
| 904 | |
| 905 | The splash_screen_prepare() function is a weak function defined in |
| 906 | common/splash.c. It is called as part of the splash screen display |
| 907 | sequence. It gives the board an opportunity to prepare the splash |
| 908 | image data before it is processed and sent to the frame buffer by |
| 909 | U-Boot. Define your own version to use this feature. |
| 910 | |
| 911 | config SPLASHIMAGE_GUARD |
| 912 | bool "Support unaligned BMP images" |
| 913 | depends on SPLASH_SCREEN |
| 914 | help |
| 915 | If this option is set, then U-Boot will prevent the environment |
| 916 | variable "splashimage" from being set to a problematic address |
| 917 | (see doc/README.displaying-bmps). |
| 918 | |
| 919 | This option is useful for targets where, due to alignment |
| 920 | restrictions, an improperly aligned BMP image will cause a data |
| 921 | abort. If you think you will not have problems with unaligned |
| 922 | accesses (for example because your toolchain prevents them) |
| 923 | there is no need to set this option. |
| 924 | |
| 925 | config SPLASH_SCREEN_ALIGN |
| 926 | bool "Allow positioning the splash image anywhere on the display" |
| 927 | depends on SPLASH_SCREEN || CMD_BMP |
| 928 | help |
| 929 | If this option is set the splash image can be freely positioned |
| 930 | on the screen. Environment variable "splashpos" specifies the |
| 931 | position as "x,y". If a positive number is given it is used as |
| 932 | number of pixel from left/top. If a negative number is given it |
| 933 | is used as number of pixel from right/bottom. You can also |
| 934 | specify 'm' for centering the image. |
| 935 | |
| 936 | Example: |
| 937 | setenv splashpos m,m |
| 938 | => image at center of screen |
| 939 | |
| 940 | setenv splashpos 30,20 |
| 941 | => image at x = 30 and y = 20 |
| 942 | |
| 943 | setenv splashpos -10,m |
| 944 | => vertically centered image |
| 945 | at x = dspWidth - bmpWidth - 9 |
| 946 | |
| 947 | config SPLASH_SOURCE |
| 948 | bool "Control the source of the splash image" |
| 949 | depends on SPLASH_SCREEN |
| 950 | help |
| 951 | Use the splash_source.c library. This library provides facilities to |
| 952 | declare board specific splash image locations, routines for loading |
| 953 | splash image from supported locations, and a way of controlling the |
| 954 | selected splash location using the "splashsource" environment |
| 955 | variable. |
| 956 | |
| 957 | This CONFIG works as follows: |
| 958 | |
| 959 | - If splashsource is set to a supported location name as defined by |
| 960 | board code, use that splash location. |
| 961 | - If splashsource is undefined, use the first splash location as |
| 962 | default. |
| 963 | - If splashsource is set to an unsupported value, do not load a splash |
| 964 | screen. |
| 965 | |
| 966 | A splash source location can describe either storage with raw data, a |
| 967 | storage formatted with a file system or a FIT image. In case of a |
| 968 | filesystem, the splash screen data is loaded as a file. The name of |
| 969 | the splash screen file can be controlled with the environment variable |
| 970 | "splashfile". |
| 971 | |
| 972 | To enable loading the splash image from a FIT image, CONFIG_FIT must |
| 973 | be enabled. The FIT image has to start at the 'offset' field address |
| 974 | in the selected splash location. The name of splash image within the |
| 975 | FIT shall be specified by the environment variable "splashfile". |
| 976 | |
| 977 | In case the environment variable "splashfile" is not defined the |
| 978 | default name 'splash.bmp' will be used. |
| 979 | |
Patrick Delaunay | 0ed6c0f | 2020-09-28 11:30:14 +0200 | [diff] [blame] | 980 | config VIDEO_BMP_GZIP |
| 981 | bool "Gzip compressed BMP image support" |
| 982 | depends on CMD_BMP || SPLASH_SCREEN |
| 983 | help |
| 984 | If this option is set, additionally to standard BMP |
| 985 | images, gzipped BMP images can be displayed via the |
| 986 | splashscreen support or the bmp command. |
| 987 | |
Patrick Delaunay | f9a4865 | 2020-09-28 11:30:15 +0200 | [diff] [blame] | 988 | config VIDEO_BMP_RLE8 |
| 989 | bool "Run length encoded BMP image (RLE8) support" |
| 990 | depends on DM_VIDEO || CFB_CONSOLE |
| 991 | help |
| 992 | If this option is set, the 8-bit RLE compressed BMP images |
| 993 | is supported. |
| 994 | |
Patrick Delaunay | 8fc78fc | 2020-09-28 11:30:16 +0200 | [diff] [blame] | 995 | config BMP_16BPP |
| 996 | bool "16-bit-per-pixel BMP image support" |
| 997 | depends on DM_VIDEO || LCD |
| 998 | help |
| 999 | Support display of bitmaps file with 16-bit-per-pixel |
| 1000 | |
| 1001 | config BMP_24BPP |
| 1002 | bool "24-bit-per-pixel BMP image support" |
| 1003 | depends on DM_VIDEO || LCD |
| 1004 | help |
| 1005 | Support display of bitmaps file with 24-bit-per-pixel. |
| 1006 | |
| 1007 | config BMP_32BPP |
| 1008 | bool "32-bit-per-pixel BMP image support" |
| 1009 | depends on DM_VIDEO || LCD |
| 1010 | help |
| 1011 | Support display of bitmaps file with 32-bit-per-pixel. |
| 1012 | |
Anatolij Gustschin | 8c9940d | 2020-10-18 20:32:35 +0200 | [diff] [blame] | 1013 | config VIDEO_VCXK |
| 1014 | bool "Enable VCXK video controller driver support" |
Anatolij Gustschin | 8c9940d | 2020-10-18 20:32:35 +0200 | [diff] [blame] | 1015 | help |
| 1016 | This enables VCXK driver which can be used with VC2K, VC4K |
| 1017 | and VC8K devices on various boards from BuS Elektronik GmbH. |
| 1018 | |
Masahiro Yamada | 0b11dbf | 2015-07-26 02:46:26 +0900 | [diff] [blame] | 1019 | endmenu |