[U-Boot] [PATCH v2 1/2] splash: Use splashfile instead of location->name
Stefano Babic
sbabic at denx.de
Wed Feb 6 09:00:29 UTC 2019
On 05/02/19 16:29, Mark Jonas wrote:
> From: Leo Ruan <tingquan.ruan at cn.bosch.com>
>
> The splash image could be loaded from different sources (e.g. sf, mmc)
> with different formats (e.g. raw, file-system). These sources are
> structured by a board dependent object 'splash_location'. To decide
> where is the splash image loaded, following environment variables are
> used to select the splash source and file:
> - 'splashsource' is used to select the splash source by setting its
> value to specified name of splash location.
> - 'splashfile' specify the name of splash image file
>
> But, when loads the splash image from FIT, the name of splash image
> within FIT is specified by splash location name. Due to the splash
> location name is already used for the splash source, its name may
> conflicts with the name of splash image.
>
> To solve the conflict, the environment variable 'splashfile' is used
> to specify the splash image in FIT, and keeps the splash location
> name for the splash source.
>
> Signed-off-by: Leo Ruan <tingquan.ruan at cn.bosch.com>
> Signed-off-by: Mark Jonas <mark.jonas at de.bosch.com>
> Reviewed-by: Simon Glass <sjg at chromium.org>
> ---
> common/splash_source.c | 10 ++++++++--
> doc/README.splashprepare | 9 ++++++---
> 2 files changed, 14 insertions(+), 5 deletions(-)
>
> diff --git a/common/splash_source.c b/common/splash_source.c
> index 62763b9..e1e73db 100644
> --- a/common/splash_source.c
> +++ b/common/splash_source.c
> @@ -303,6 +303,7 @@ static int splash_load_fit(struct splash_location *location, u32 bmp_load_addr)
> {
> int res;
> int node_offset;
> + const char *splash_file;
> int splash_offset;
> int splash_size;
> struct image_header *img_header;
> @@ -335,10 +336,15 @@ static int splash_load_fit(struct splash_location *location, u32 bmp_load_addr)
> return -EINVAL;
> }
>
> - node_offset = fit_image_get_node(fit_header, location->name);
> + /* Get the splash image node */
> + splash_file = env_get("splashfile");
> + if (!splash_file)
> + splash_file = SPLASH_SOURCE_DEFAULT_FILE_NAME;
> +
> + node_offset = fit_image_get_node(fit_header, splash_file);
> if (node_offset < 0) {
> debug("Could not find splash image '%s' in FIT\n",
> - location->name);
> + splash_file);
> return -ENOENT;
> }
>
> diff --git a/doc/README.splashprepare b/doc/README.splashprepare
> index f1418de..3cb5b5a 100644
> --- a/doc/README.splashprepare
> +++ b/doc/README.splashprepare
> @@ -26,6 +26,9 @@ 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. Struct splash_location field 'name' should match the splash image
> -name within the FIT and the FIT should start at the 'offset' field address in
> -the specified storage.
> +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.
>
Reviewed-by: Stefano Babic <sbabic at denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list