From 4f65ee38131a180cc2d8bc2cfe76cca31a9d55a4 Mon Sep 17 00:00:00 2001 From: "Andrew F. Davis" Date: Wed, 22 Feb 2017 17:46:39 -0600 Subject: arm: mach-omap2: Flush cache after FIT post-processing image After we authenticate/decrypt an image we need to flush the caches as they may still contain bits of the encrypted image. This will cause failures if we attempt to jump to this image. Reported-by: Yogesh Siraswar Signed-off-by: Andrew F. Davis Reviewed-by: Tom Rini --- arch/arm/mach-omap2/sec-common.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'arch') diff --git a/arch/arm/mach-omap2/sec-common.c b/arch/arm/mach-omap2/sec-common.c index c5a000a..0fa8db0 100644 --- a/arch/arm/mach-omap2/sec-common.c +++ b/arch/arm/mach-omap2/sec-common.c @@ -120,6 +120,12 @@ int secure_boot_verify_image(void **image, size_t *size) result = secure_rom_call( API_HAL_KM_VERIFYCERTIFICATESIGNATURE_INDEX, 0, 0, 4, cert_addr, cert_size, sig_addr, 0xFFFFFFFF); + + /* Perform cache writeback on output buffer */ + flush_dcache_range( + (u32)*image, + (u32)*image + roundup(*size, ARCH_DMA_MINALIGN)); + auth_exit: if (result != 0) { printf("Authentication failed!\n"); -- cgit v1.1