diff options
author | Tom Rini <trini@ti.com> | 2015-02-10 10:40:43 -0500 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2015-02-10 10:40:43 -0500 |
commit | 307367eaffc8638e10ba1784fc66bfe623ae79e2 (patch) | |
tree | 087641ed4c29320f8759cda28e377e36ff82cb78 /board/compulab/common/splash.c | |
parent | a4fb5df214c7e8d5bc949c1068d92252f105427a (diff) | |
parent | aee0013e53b339a573e2a8d66062fe87765aa3bd (diff) | |
download | u-boot-imx-307367eaffc8638e10ba1784fc66bfe623ae79e2.zip u-boot-imx-307367eaffc8638e10ba1784fc66bfe623ae79e2.tar.gz u-boot-imx-307367eaffc8638e10ba1784fc66bfe623ae79e2.tar.bz2 |
Merge branch 'master' of git://www.denx.de/git/u-boot-imx
Diffstat (limited to 'board/compulab/common/splash.c')
-rw-r--r-- | board/compulab/common/splash.c | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/board/compulab/common/splash.c b/board/compulab/common/splash.c deleted file mode 100644 index 49ed49b..0000000 --- a/board/compulab/common/splash.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * (C) Copyright 2014 CompuLab, Ltd. <www.compulab.co.il> - * - * Authors: Igor Grinberg <grinberg@compulab.co.il> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <nand.h> -#include <bmp_layout.h> - -DECLARE_GLOBAL_DATA_PTR; - -#ifdef CONFIG_CMD_NAND -static int splash_load_from_nand(u32 bmp_load_addr, int nand_offset) -{ - struct bmp_header *bmp_hdr; - int res; - size_t bmp_size, bmp_header_size = sizeof(struct bmp_header); - - if (bmp_load_addr + bmp_header_size >= gd->start_addr_sp) - goto splash_address_too_high; - - res = nand_read_skip_bad(&nand_info[nand_curr_device], - nand_offset, &bmp_header_size, - NULL, nand_info[nand_curr_device].size, - (u_char *)bmp_load_addr); - if (res < 0) - return res; - - bmp_hdr = (struct bmp_header *)bmp_load_addr; - bmp_size = le32_to_cpu(bmp_hdr->file_size); - - if (bmp_load_addr + bmp_size >= gd->start_addr_sp) - goto splash_address_too_high; - - return nand_read_skip_bad(&nand_info[nand_curr_device], - nand_offset, &bmp_size, - NULL, nand_info[nand_curr_device].size, - (u_char *)bmp_load_addr); - -splash_address_too_high: - printf("Error: splashimage address too high. Data overwrites U-Boot " - "and/or placed beyond DRAM boundaries.\n"); - - return -1; -} -#else -static inline int splash_load_from_nand(u32 bmp_load_addr, int nand_offset) -{ - return -1; -} -#endif /* CONFIG_CMD_NAND */ - -int cl_splash_screen_prepare(int nand_offset) -{ - char *env_splashimage_value; - u32 bmp_load_addr; - - env_splashimage_value = getenv("splashimage"); - if (env_splashimage_value == NULL) - return -1; - - bmp_load_addr = simple_strtoul(env_splashimage_value, 0, 16); - if (bmp_load_addr == 0) { - printf("Error: bad splashimage address specified\n"); - return -1; - } - - return splash_load_from_nand(bmp_load_addr, nand_offset); -} |