diff options
author | Tom Rini <trini@konsulko.com> | 2017-09-01 12:57:03 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2017-09-01 12:57:03 -0400 |
commit | 1d20170467b079642be96996dcd71db64c3c365c (patch) | |
tree | 70ecec59b97ef608976fd48c68ef769f7ccc877d | |
parent | 6aee2ab68c362ace5a59f89a63abed82e0bf19e5 (diff) | |
parent | 0d1ae97c0299089e85a2980ac76e924e6d4447c6 (diff) | |
download | u-boot-1d20170467b079642be96996dcd71db64c3c365c.zip u-boot-1d20170467b079642be96996dcd71db64c3c365c.tar.gz u-boot-1d20170467b079642be96996dcd71db64c3c365c.tar.bz2 |
Merge git://git.denx.de/u-boot-video
-rw-r--r-- | common/splash_source.c | 5 | ||||
-rw-r--r-- | drivers/video/mxc_ipuv3_fb.c | 13 |
2 files changed, 17 insertions, 1 deletions
diff --git a/common/splash_source.c b/common/splash_source.c index a21ad62..e0defde 100644 --- a/common/splash_source.c +++ b/common/splash_source.c @@ -317,6 +317,11 @@ static int splash_load_fit(struct splash_location *location, u32 bmp_load_addr) return res; img_header = (struct image_header *)bmp_load_addr; + if (image_get_magic(img_header) != FDT_MAGIC) { + printf("Could not find FDT magic\n"); + return -EINVAL; + } + fit_size = fdt_totalsize(img_header); /* Read in entire FIT */ diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index 0d0a0a9..8836229 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -13,6 +13,7 @@ #include <common.h> #include <linux/errno.h> +#include <asm/arch/crm_regs.h> #include <asm/global_data.h> #include <linux/string.h> #include <linux/list.h> @@ -568,8 +569,18 @@ err0: void ipuv3_fb_shutdown(void) { - int i; + struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR; struct ipu_stat *stat = (struct ipu_stat *)IPU_STAT; + u32 reg; + int i; + + /* + * Check if IPU clock was enabled before. Won't access + * IPU registers if clock is not enabled. + */ + reg = readl(&mxc_ccm->CCGR3); + if ((reg & MXC_CCM_CCGR3_IPU1_IPU_MASK) == 0) + return; for (i = 0; i < ARRAY_SIZE(mxcfb_info); i++) { struct fb_info *fbi = mxcfb_info[i]; |