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