diff options
Diffstat (limited to 'common/spl/spl_ext.c')
| -rw-r--r-- | common/spl/spl_ext.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/common/spl/spl_ext.c b/common/spl/spl_ext.c index c5478820a9b..7e0274a3058 100644 --- a/common/spl/spl_ext.c +++ b/common/spl/spl_ext.c @@ -11,12 +11,20 @@  static ulong spl_fit_read(struct spl_load_info *load, ulong file_offset,  			  ulong size, void *buf)  { +	struct legacy_img_hdr *header;  	int ret;  	loff_t actlen;  	ret = ext4fs_read(buf, file_offset, size, &actlen);  	if (ret)  		return ret; + +	if (CONFIG_IS_ENABLED(OS_BOOT)) { +		header = (struct legacy_img_hdr *)buf; +		if (image_get_magic(header) != FDT_MAGIC) +			return size; +	} +  	return actlen;  } | 
