bootm: Align cache flush end address correctly
Flushing part of the cache should be done on cache boundaries. Trying to flush part of a cache line is not supported and the request may be ignored or print warnings. Adjust the bootm code to align the end address to prevent this problem. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de> Tested-on: smartweb, corvus, taurus, axm Tested-by: Heiko Schocher <hs@denx.de> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
This commit is contained in:
parent
b5bd09820c
commit
b4d956f6bc
@ -445,7 +445,7 @@ static int bootm_load_os(bootm_headers_t *images, unsigned long *load_end,
|
||||
bootstage_error(BOOTSTAGE_ID_DECOMP_IMAGE);
|
||||
return err;
|
||||
}
|
||||
flush_cache(load, *load_end - load);
|
||||
flush_cache(load, ALIGN(*load_end - load, ARCH_DMA_MINALIGN));
|
||||
|
||||
debug(" kernel loaded at 0x%08lx, end = 0x%08lx\n", load, *load_end);
|
||||
bootstage_mark(BOOTSTAGE_ID_KERNEL_LOADED);
|
||||
|
Loading…
Reference in New Issue
Block a user