drivers: video: Kconfig: Add configs for enabling video at SPL
Add Kconfigs which enable the video driver and splash screen at SPL stage only and not at u-boot proper. The existing Kconfigs from u-boot proper were not used to make SPL splash screen independent to them. Signed-off-by: Nikhil M Jain <n-jain1@ti.com> Reviewed-by: Devarsh Thakkar <devarsht@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
b646e1f69f
commit
857d02d97c
1 changed files with 222 additions and 1 deletions
|
@ -886,7 +886,7 @@ endif # SPLASH_SCREEN
|
|||
|
||||
config VIDEO_BMP_GZIP
|
||||
bool "Gzip compressed BMP image support"
|
||||
depends on CMD_BMP || SPLASH_SCREEN
|
||||
depends on BMP || SPLASH_SCREEN
|
||||
help
|
||||
If this option is set, additionally to standard BMP
|
||||
images, gzipped BMP images can be displayed via the
|
||||
|
@ -923,4 +923,225 @@ config BMP_32BPP
|
|||
|
||||
endif # VIDEO
|
||||
|
||||
config SPL_VIDEO
|
||||
bool "Enable driver model support for LCD/video"
|
||||
depends on SPL_DM
|
||||
help
|
||||
The video subsystem adds a small amount of overhead to the image.
|
||||
If this is acceptable and you have a need to use video drivers in
|
||||
SPL, enable this option. It might provide a cleaner interface to
|
||||
setting up video within SPL, and allows the same drivers to be
|
||||
used as U-Boot proper.
|
||||
|
||||
if SPL_VIDEO
|
||||
source "drivers/video/tidss/Kconfig"
|
||||
|
||||
config SPL_VIDEO_LOGO
|
||||
bool "Show the U-Boot logo on the display at SPL"
|
||||
default y if !SPL_SPLASH_SCREEN
|
||||
select SPL_VIDEO_BMP_RLE8
|
||||
help
|
||||
This enables showing the U-Boot logo on the display when a video
|
||||
device is probed. It appears at the top right. The logo itself is at
|
||||
tools/logos/u-boot_logo.bmp and looks best when the display has a
|
||||
black background.
|
||||
|
||||
config SPL_SPLASH_SCREEN
|
||||
bool "Show a splash-screen image at SPL"
|
||||
help
|
||||
If this option is set, the environment is checked for a variable
|
||||
"splashimage" at spl stage.
|
||||
|
||||
config SPL_SYS_WHITE_ON_BLACK
|
||||
bool "Display console as white on a black background at SPL"
|
||||
help
|
||||
Normally the display is black on a white background, Enable this
|
||||
option to invert this, i.e. white on a black background at spl stage.
|
||||
This can be better in low-light situations or to reduce eye strain in
|
||||
some cases.
|
||||
|
||||
config SPL_VIDEO_PCI_DEFAULT_FB_SIZE
|
||||
hex "Default framebuffer size to use if no drivers request it at SPL"
|
||||
default 0x1000000 if X86 && PCI
|
||||
default 0 if !(X86 && PCI)
|
||||
help
|
||||
Generally, video drivers request the amount of memory they need for
|
||||
the frame buffer when they are bound, by setting the size field in
|
||||
struct video_uc_plat. That memory is then reserved for use after
|
||||
relocation. But PCI drivers cannot be bound before relocation unless
|
||||
they are mentioned in the devicetree.
|
||||
|
||||
With this value set appropriately, it is possible for PCI video
|
||||
devices to have a framebuffer allocated by U-Boot.
|
||||
|
||||
Note: the framebuffer needs to be large enough to store all pixels at
|
||||
maximum resolution. For example, at 1920 x 1200 with 32 bits per
|
||||
pixel, 2560 * 1600 * 32 / 8 = 0xfa0000 bytes are needed.
|
||||
|
||||
config SPL_CONSOLE_SCROLL_LINES
|
||||
int "Number of lines to scroll the console by at SPL"
|
||||
default 1
|
||||
help
|
||||
When the console need to be scrolled, this is the number of
|
||||
lines to scroll by. It defaults to 1. Increasing this makes the
|
||||
console jump but can help speed up operation when scrolling
|
||||
is slow.
|
||||
|
||||
config SPL_CONSOLE_NORMAL
|
||||
bool "Support a simple text console at SPL"
|
||||
default y
|
||||
help
|
||||
Support drawing text on the frame buffer console so that it can be
|
||||
used as a console. Rotation is not supported by this driver (see
|
||||
CONFIG_CONSOLE_ROTATION for that). A built-in 8x16 font is used
|
||||
for the display.
|
||||
|
||||
config SPL_BACKLIGHT
|
||||
bool "Enable panel backlight uclass support at SPL"
|
||||
default y
|
||||
help
|
||||
This provides backlight uclass driver that enables basic panel
|
||||
backlight support.
|
||||
|
||||
config SPL_PANEL
|
||||
bool "Enable panel uclass support at SPL"
|
||||
default y
|
||||
help
|
||||
This provides panel uclass driver that enables basic panel support.
|
||||
|
||||
config SPL_SIMPLE_PANEL
|
||||
bool "Enable simple panel support at SPL"
|
||||
depends on SPL_PANEL && SPL_BACKLIGHT && SPL_DM_GPIO
|
||||
default y
|
||||
help
|
||||
This turns on a simple panel driver that enables a compatible
|
||||
video panel.
|
||||
|
||||
config SPL_SYS_WHITE_ON_BLACK
|
||||
bool "Display console as white on a black background at SPL"
|
||||
help
|
||||
Normally the display is black on a white background, Enable this
|
||||
option to invert this, i.e. white on a black background at spl stage.
|
||||
This can be better in low-light situations or to reduce eye strain in
|
||||
some cases.
|
||||
|
||||
if SPL_SPLASH_SCREEN
|
||||
|
||||
config SPL_SPLASH_SCREEN_ALIGN
|
||||
bool "Allow positioning the splash image anywhere on the display at SPL"
|
||||
help
|
||||
If this option is set the splash image can be freely positioned
|
||||
on the screen only at SPL. Environment variable "splashpos" specifies
|
||||
the position as "x,y". If a positive number is given it is used as
|
||||
number of pixel from left/top. If a negative number is given it
|
||||
is used as number of pixel from right/bottom.
|
||||
|
||||
config SPL_SPLASH_SOURCE
|
||||
bool "Control the source of the splash image at SPL"
|
||||
help
|
||||
Use the splash_source.c library. This library provides facilities to
|
||||
declare board specific splash image locations, routines for loading
|
||||
splash image from supported locations, and a way of controlling the
|
||||
selected splash location using the "splashsource" environment
|
||||
variable.
|
||||
|
||||
This CONFIG works as follows:
|
||||
|
||||
- If splashsource is set to a supported location name as defined by
|
||||
board code, use that splash location.
|
||||
- If splashsource is undefined, use the first splash location as
|
||||
default.
|
||||
- If splashsource is set to an unsupported value, do not load a splash
|
||||
screen.
|
||||
|
||||
A splash source location can describe either storage with raw data, a
|
||||
storage formatted with a file system or a FIT image. In case of a
|
||||
filesystem, the splash screen data is loaded as a file. The name of
|
||||
the splash screen file can be controlled with the environment variable
|
||||
"splashfile".
|
||||
|
||||
To enable loading the splash image from a FIT image, CONFIG_FIT must
|
||||
be enabled. The FIT image has to start at the 'offset' field address
|
||||
in the selected splash location. The name of splash image within the
|
||||
FIT shall be specified by the environment variable "splashfile".
|
||||
|
||||
In case the environment variable "splashfile" is not defined the
|
||||
default name 'splash.bmp' will be used.
|
||||
|
||||
endif # SPL_SPLASH_SCREEN
|
||||
|
||||
config SPL_VIDEO_BMP_GZIP
|
||||
bool "Gzip compressed BMP image support at SPL"
|
||||
depends on SPL_SPLASH_SCREEN || SPL_BMP
|
||||
help
|
||||
If this option is set, additionally to standard BMP
|
||||
images, gzipped BMP images can be displayed via the
|
||||
splashscreen supportat SPL stage.
|
||||
|
||||
config SPL_VIDEO_LOGO_MAX_SIZE
|
||||
hex "Maximum size of the bitmap logo in bytes at SPL"
|
||||
default 0x100000
|
||||
help
|
||||
Sets the maximum uncompressed size of the logo. This is needed when
|
||||
decompressing a BMP file using the gzip algorithm, since it cannot
|
||||
read the size from the bitmap header.
|
||||
|
||||
config SPL_VIDEO_BMP_RLE8
|
||||
bool "Run length encoded BMP image (RLE8) support at SPL"
|
||||
help
|
||||
If this option is set, the 8-bit RLE compressed BMP images
|
||||
is supported.
|
||||
|
||||
config SPL_BMP_16BPP
|
||||
bool "16-bit-per-pixel BMP image support at SPL"
|
||||
help
|
||||
Support display of bitmaps file with 16-bit-per-pixel
|
||||
|
||||
config SPL_BMP_24BPP
|
||||
bool "24-bit-per-pixel BMP image support at SPL"
|
||||
help
|
||||
Support display of bitmaps file with 24-bit-per-pixel.
|
||||
|
||||
config SPL_BMP_32BPP
|
||||
bool "32-bit-per-pixel BMP image support at SPL"
|
||||
help
|
||||
Support display of bitmaps file with 32-bit-per-pixel.
|
||||
|
||||
config SPL_VIDEO_BPP8
|
||||
bool "Support 8-bit-per-pixel displays at SPL"
|
||||
default y
|
||||
help
|
||||
Support drawing text and bitmaps onto a 8-bit-per-pixel display.
|
||||
Enabling this will include code to support this display. Without
|
||||
this option, such displays will not be supported and console output
|
||||
will be empty.
|
||||
|
||||
config SPL_VIDEO_BPP16
|
||||
bool "Support 16-bit-per-pixel displays at SPL"
|
||||
default y
|
||||
help
|
||||
Support drawing text and bitmaps onto a 16-bit-per-pixel display.
|
||||
Enabling this will include code to support this display. Without
|
||||
this option, such displays will not be supported and console output
|
||||
will be empty.
|
||||
|
||||
config SPL_VIDEO_BPP32
|
||||
bool "Support 32-bit-per-pixel displays at SPL"
|
||||
default y
|
||||
help
|
||||
Support drawing text and bitmaps onto a 32-bit-per-pixel display.
|
||||
Enabling this will include code to support this display. Without
|
||||
this option, such displays will not be supported and console output
|
||||
will be empty.
|
||||
|
||||
config SPL_HIDE_LOGO_VERSION
|
||||
bool "Hide the version information on the splash screen at SPL"
|
||||
help
|
||||
Normally the U-Boot version string is shown on the display when the
|
||||
splash screen is enabled. This information is not otherwise visible
|
||||
since video starts up after U-Boot has displayed the initial banner.
|
||||
|
||||
Enable this option to hide this information.
|
||||
endif
|
||||
|
||||
endmenu
|
||||
|
|
Loading…
Reference in a new issue